Implement ELISPAR and ELISANC in TM1py

TM1Py doesn't have substitutes for the TI functions ELISPAR and ELISANC.
Currently, the only way to do this check is to use the ELISPAR function in the recently added evaluate_ti_expression function or to retrieve larger chunks/ hierarchy subtrees into Python and perform the check in Python.
It would be convenient to have two functions that efficiently perform the ELISPAR/ELISANC check and return boolean values.

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=eirf-elementisparent
https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=eirf-elementisancestor

ElementIsParent should be easy via an ODATA Query. If this query returns a "value", then return true
Dimensions('Account')/Hierarchies('Account')/Edges?$filter=ParentName eq '1' and ComponentName eq '10'
{<EMAIL_ADDRESS>"../../$metadata#Dimensions('Account')/Hierarchies('Account')/Edges",   "value": [     {       "ParentName": "1",       "ComponentName": "10",       "Weight": 1     }   ] }

I think I have a server side solution for ElementIsAncestor. The Ancestor is passed to MDX and the tested element is passed to the query
POST: ExecuteMDXSetExpression?$select=Tuples&$expand=Tuples($filter=Members/any(f:f/Name eq '10');$select=Members;$expand=Members($select=Name);$count=true)
Payload: {"MDX":"{TM1DRILLDOWNMEMBER({[Account].[Account].[1]}, ALL, RECURSIVE )}"}
Response:
{
<EMAIL_ADDRESS>"$metadata#MemberSets(Tuples(Members+(Name)))/$entity",
<EMAIL_ADDRESS>1,
  "Tuples": [
    {
      "Members": [
        {
          "Name": "1"
        }
      ]
    }
  ]
}

The count field is an easy way to see if something satisfied the query.

Thanks, @rclapp!
but thinking about this idea further, wouldn't it be easier if we do the whole thing in MDX?
{INTERSECT({TM1DRILLDOWNMEMBER({[Airport].[Airport].[Asia]}, ALL, RECURSIVE )},{[Airport].[SYD]})}
{INTERSECT({TM1DRILLDOWNMEMBER({[Airport].[Airport].[Asia]}, ALL, RECURSIVE )},{[Airport].[ZRH]})}
It would be case and space insensitive without us explicitly asking for it in the REST query.
Are we missing any good arguments to choose REST filtering over MDX operations?

Good question, I'll look.
Sent from my mobile device
On Jul 12, 2022 11:53 AM, Wim Gielis @.***> wrote:
Would DESCENDANTS have any noticeable impact on speed ?
Op di 12 jul. 2022 om 17:07 schreef Ryan Clapp @.***>

Agree. I ran some performance tests on a dimension of 2 Million elements.
Where leafs are integers and consolidations contain leafs when they are
divisible by that number
[image: image]
https://user-images.githubusercontent.com/18215782/178521873-0227191e-98ed-4959-86da-f0e2926b6b5e.png
Using MDX is somewhere between 33%-100% faster than OData filtering
ELISANC:
POST ExecuteMDXSetExpression?$select=Cardinality
False:
{"MDX":"{INTERSECT({TM1DRILLDOWNMEMBER({[Big Dim].[Big Dim].[Div by 3]},
ALL,Recursive)},{[Big Dim].[Big Dim].[1000000]})}"}
{
@.***": "$metadata#MemberSets(Cardinality)/$entity",
"Cardinality": 0
}
True:
{"MDX":"{INTERSECT({TM1DRILLDOWNMEMBER({[Big Dim].[Big Dim].[Div by 1]},
ALL,Recursive)},{[Big Dim].[Big Dim].[1000000]})}"}
{
@.***": "$metadata#MemberSets(Cardinality)/$entity",
"Cardinality": 1
}
For ELisPar we can remove "RECURSIVE". making this more modular.

Reply to this email directly, view it on GitHub
https://github.com/cubewise-code/tm1py/issues/758#issuecomment-1181877900,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEDHULN7K3WLXS4EMKJ5SA3VTWC3VANCNFSM53GREXVA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--

Best regards / Beste groeten,
Wim Gielis
MS Excel MVP 2011-2014
https://www.wimgielis.com http://www.wimgielis.be

Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/issues/758#issuecomment-1181938595, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEK7GZUKHREJ3EDHZNCCABLVTWID5ANCNFSM53GREXVA.
You are receiving this because you were mentioned.Message ID: @.***>

This syntax is 12x SLOWER: {DESCENDANTS([Big Dim].[Big Dim].[All Divisors],99,SELF_BEFORE_AFTER)} If you don's use the BEFORE flag performance is on par.

Thanks Ryan, and excluding 99 is also on par ?
I would always use DESCENDANTS because the syntax is easier and still same
performance.
Op wo 13 jul. 2022 om 16:18 schreef Ryan Clapp @.***>

This syntax is 12x SLOWER: {DESCENDANTS([Big Dim].[Big Dim].[All
Divisors],99,SELF_BEFORE_AFTER)} If you don's use the BEFORE flag
performance is on par.
—
Reply to this email directly, view it on GitHub
https://github.com/cubewise-code/tm1py/issues/758#issuecomment-1183285581,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEDHULIMEAGQLO2TG5M5GC3VT3F3TANCNFSM53GREXVA
.
You are receiving this because you commented.Message ID:
@.***>

--

Best regards / Beste groeten,
Wim Gielis
MS Excel MVP 2011-2014
https://www.wimgielis.com http://www.wimgielis.be

Here is the TI code for the dim
#****Begin: Generated Statements***
#****End: Generated Statements****

vDim = 'Big Dim';

If(DimensionExists(vDim) = 1);
  DimensionDeleteAllElements(vDim);
ELSE;
  DimensionCreate(vDim);
ENDIF;

DimensionElementInsert(vDim, '', 'Div by 1', 'C');
DimensionElementInsert(vDim, '', 'Div by 2', 'C');
DimensionElementInsert(vDim, '', 'Div by 3', 'C');
DimensionElementInsert(vDim, '', 'Div by 4', 'C');
DimensionElementInsert(vDim, '', 'Div by 5', 'C');
DimensionElementInsert(vDim, '', 'All Divisors', 'C');

DimensionElementComponentAdd(vDim, 'All Divisors', 'Div by 1',1);
DimensionElementComponentAdd(vDim, 'All Divisors', 'Div by 2',1);
DimensionElementComponentAdd(vDim, 'All Divisors', 'Div by 3',1);
DimensionElementComponentAdd(vDim, 'All Divisors', 'Div by 4',1);
DimensionElementComponentAdd(vDim, 'All Divisors', 'Div by 5',1);

vCounter = 1;
vMax = 2000000;

While(vCounter <= vMax);
  DimensionElementInsert(vDim, '', NumberToString(vCounter), 'N');

  IF(Mod(vCounter,1) = 0);
    DimensionElementComponentAdd(vDim, 'Div by 1', NumberToString(vCounter),1);
  ENDIF;

  IF(Mod(vCounter,2) = 0);
    DimensionElementComponentAdd(vDim, 'Div by 2', NumberToString(vCounter),1);
  ENDIF;

  IF(Mod(vCounter,3) = 0);
    DimensionElementComponentAdd(vDim, 'Div by 3', NumberToString(vCounter),1);
  ENDIF;

  IF(Mod(vCounter,4) = 0);
    DimensionElementComponentAdd(vDim, 'Div by 4', NumberToString(vCounter),1);
  ENDIF;

  IF(Mod(vCounter,5) = 0);
    DimensionElementComponentAdd(vDim, 'Div by 5', NumberToString(vCounter),1);
  ENDIF;

  vCounter = vCounter + 1;
END;

Thank you Ryan
Op wo 13 jul. 2022 om 16:36 schreef Ryan Clapp @.***>

{"MDX":"{INTERSECT({TM1DRILLDOWNMEMBER({[Big Dim].[Big Dim].[All
Divisors]}, ALL,Recursive)},{[Big Dim].[Big Dim].[1000000]})}"} takes
6,000ms
{"MDX":"{INTERSECT({DESCENDANTS([Big Dim].[Big Dim].[All Divisors])},
{[Big Dim].[Big Dim].[1000000]})}"} takes 12,000ms
So, much slower. I think it is due to the defaults in the DESCENDANTS
function.
https://docs.microsoft.com/en-us/sql/mdx/descendants-mdx?view=sql-server-ver16#:~:text=If no level,syntax were used%3A
—
Reply to this email directly, view it on GitHub
https://github.com/cubewise-code/tm1py/issues/758#issuecomment-1183306403,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEDHULLTGVCVOOZVGZBJ5IDVT3H55ANCNFSM53GREXVA
.
You are receiving this because you commented.Message ID:
@.***>

--

Best regards / Beste groeten,
Wim Gielis
MS Excel MVP 2011-2014
https://www.wimgielis.com http://www.wimgielis.be

Actually, the naive evaluate_ti_expression approach performs well on very large dimensions. See below.
I introduced a new method to the element_is_ancestor function in #773
from datetime import datetime

from TM1py.Services.TM1Service import TM1Service

DIMENSION_NAME = "BigDim"
HIERARCHY_NAME = "BigDim"
ANCESTOR = "Div by 1"
ELEMENT_NAME = "1"

with TM1Service(base_url="https://localhost:12354", user="admin", password="apple") as tm1:
    before = datetime.now()
    value = tm1.elements.element_is_ancestor(DIMENSION_NAME, DIMENSION_NAME, ANCESTOR, element_name=ELEMENT_NAME,
                                             method="Descendants")
    elapsed_time = datetime.now() - before
    print("Descendants: " + str(elapsed_time))

    before = datetime.now()
    value = tm1.elements.element_is_ancestor(DIMENSION_NAME, DIMENSION_NAME, ANCESTOR, element_name=ELEMENT_NAME)
    elapsed_time = datetime.now() - before
    print("TM1DrillDownMember: " + str(elapsed_time))

    before = datetime.now()
    value = tm1.elements.element_is_ancestor(DIMENSION_NAME, DIMENSION_NAME, ANCESTOR, element_name=ELEMENT_NAME,
                                             method="TI")
    elapsed_time = datetime.now() - before
    print("TI: " + str(elapsed_time))

Descendants: 0:00:05.08
TM1DrillDownMember: 0:00:03.47
TI: 0:00:00.25


Configure Azure Pipelines

This pipeline configuration builds the application and produces a build for the Release configuration.

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

well done


Define offline DNS

Hi, thanks for your great tool :)
Please add a feature than we can define offline DNS records like hosts file in linux (via json config file)

Hi, i will add this two features
1- a hosts configuration
2- ability to pass DOH through fragmentation

hello its done in the core version i will update plugin version when its ready

plugin version is ready now


Provide transition path for structopt

Re-export Parser as StructOpt
Support structopt attributes, with deprecation messages

Resolved with #56


Update andrewj-brust.yml

:warning: Validation status: warnings

File
Status
Preview URL
Details

rd/andrewj-brust.yml
:warning:Warning

Details

rd/andrewj-brust.yml

[Warning] the value Profile is undefined for metadata pagetype

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Steensgaard doesn't handle ZeroExtend(MemoryLoad()) ; and base case calls evalExpressionWithSSA which throws rather than returning Top

Steensgaard crashes on the expression:
 %00000efe: Register(R8, bv64) := ZeroExtend(32, MemoryLoad(Memory(mem, 64, 8), bvadd64(Register(R8, bv64), 92bv64), LittleEndian, 32))

java.lang.RuntimeException: ERROR: CASE NOT HANDLED: MemoryLoad(Memory(mem, 64, 8), bvadd64(Register(R8, bv64), 100bv64), LittleEndian, 32)
          ,analysis.UtilMethods$package$.evaluateExpressionWithSSA(UtilMethods.scala:142)
          analysis.UtilMethods$package$.evaluateExpressionWithSSA(UtilMethods.scala:127)
          analysis.InterprocSteensgaardAnalysis.exprToRegion(InterprocSteensgaardAnalysis.scala:237)
          analysis.InterprocSteensgaardAnalysis.reducibleToRegion$$anonfun$2(InterprocSteensgaardAnalysis.scala:147)
          scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
          scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
          scala.collection.immutable.Set$Set1.foreach(Set.scala:168)
          analysis.InterprocSteensgaardAnalysis.reducibleToRegion(InterprocSteensgaardAnalysis.scala:171)
          analysis.InterprocSteensgaardAnalysis.exprToRegion(InterprocSteensgaardAnalysis.scala:208)
          analysis.InterprocSteensgaardAnalysis.visit(InterprocSteensgaardAnalysis.scala:276))

Provided in this example:
https://gist.github.com/ailrst/8e0b55e48aa4156c5163561b4d78d91e
Both problems need fixing

loads wrapped in extends are not handled by the transfer function
unhandled cases cause an exception rather than overapproximation

I'm very surprised this causes a problem since similar cases with loads wrapped in extends have been handled without issue in many test cases. I suspect the problem is a bit deeper.

Ah it's because R8 is immediately used in another assignment, so when it tries to look up the value of R8 at statement %00000efe then it crashes.
In general the Steensgaard analysis is implemented in a fairly fragile where plenty of things are unimplemented - it would be good to fix that.

Issue is that this match statement doesn't specifically handle ZeroExtend (among the many other cases it doesn't handle properly).
https://github.com/UQ-PAC/BASIL/blob/c9ad83d883b152f4fd4c2cce26b19c87ace94aaa/src/main/scala/analysis/InterprocSteensgaardAnalysis.scala#L190
Right now I would prefer that an analysis crashes for cases that it doesn't handle at the moment (but are possible to handle without issue), rather than giving everything top as a placeholder, or just passing things through without giving it much thought (as in this case), because both of those make problems harder to solve. That said, the analysis should ideally not have any cases it doesn't handle properly at all - cases where Top is returned should be cases where that's the best option available, not just a WIP placeholder.

This is the case where it is trying to evaluate a memory load but constant prop should return an empty set because we cannot evaluate a load instruction. I agree with Liam that should throw an exception so it is doing the right thing but the case for memoryLoad could be added to return an empty set

This should fix it and handle all possible cases
fb2aa27d183c66e12d0f1e620d015d658099b168

The Repeat case isn't applying the repeat operation

This solves the crash, but not the fundamental problem. It's also not correct for Repeat.
https://github.com/UQ-PAC/BASIL/blob/c9ad83d883b152f4fd4c2cce26b19c87ace94aaa/src/main/scala/analysis/InterprocSteensgaardAnalysis.scala#L121-L148
The issue is that in this match statement in reducibleToRegion, which is checking if the rhs of an assignment is a MemoryLoad, does not take into account the case where a MemoryLoad is inside a ZeroExtend (as in this case) or any other similar case.

It's fine if Repeat isn't implemented for now, we don't currently have an evaluation of it defined and the lifter doesn't currently produce it.

This particular issue is no longer in the code base.


Add fn_return_indent = "Double"

If the return type has to be on a new line, I find it hard to read because the code has the same indention. Therefore, I'd like to have just a double indention in case it's on a new line. I cannot use
fn_return_indent = "WithArgs"

because my args are in "Block"-style.

For the RFC style we use block formatting and if there is return type we do not indent it at all so that it stands out. E.g.,
fn extract_one(
    &mut self,
    m: FxHashMap<PathBuf, PathKind>,
    flavor: CrateFlavor,
    slot: &mut Option<(Svh, MetadataBlob)>,
) -> Option<(PathBuf, PathKind)> {
    ...
}


Block credential stealing from the Windows local security authority subsystem (lsass.exe) vs Credential Guard

Is this the same setting as enabling Credential guard via GPO? (Admin Template/System/Device Guard/Turn on Virtualization Based Security/Credential Guard Configuration)
The description makes it seem like it's an alternative to Credential guard but I don't understand in what way it would be.
Thanks

Hello @zerrikan. Thank you for posting your question. Can you please tell us to which article this applies? This information will help us route the issue to the correct writer/team.

Hello, sorry for not including that. Below is the article:
https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/attack-surface-reduction

@zerrikan My understanding is that Credential Guard uses the same principle, but it does more than what that specific ASR rule does. As the article also states, the ASR Rule can be used in scenarios where Credential Guard cannot be enabled, for whatever reason.

This rule helps prevent credential stealing, by locking down Local Security Authority Subsystem Service (LSASS).

LSASS authenticates users who sign in on a Windows computer. Microsoft Defender Credential Guard in Windows 10 normally prevents attempts to extract credentials from LSASS. However, some organizations can't enable Credential Guard on all of their computers because of compatibility issues with custom smartcard drivers or other programs that load into the Local Security Authority (LSA). In these cases, attackers can use hack tools like Mimikatz to scrape cleartext passwords and NTLM hashes from LSASS.

@zerrikan My understanding is that Credential Guard uses the same principle, but it does more than what that specific ASR rule does. As the article also states, the ASR Rule can be used in scenarios where Credential Guard cannot be enabled, for whatever reason.

This rule helps prevent credential stealing, by locking down Local Security Authority Subsystem Service (LSASS).

LSASS authenticates users who sign in on a Windows computer. Microsoft Defender Credential Guard in Windows 10 normally prevents attempts to extract credentials from LSASS. However, some organizations can't enable Credential Guard on all of their computers because of compatibility issues with custom smartcard drivers or other programs that load into the Local Security Authority (LSA). In these cases, attackers can use hack tools like Mimikatz to scrape cleartext passwords and NTLM hashes from LSASS.

Thank you! I assume that windows defender has to be enabled for this to function as well?

Thank you! I assume that windows defender has to be enabled for this to function as well?

Thank you! I assume that windows defender has to be enabled for this to function as well?

Correct -> https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/attack-surface-reduction-faq#does-asr-support-third-party-security-solutions

Does ASR support third-party security solutions?
ASR uses Microsoft Defender Antivirus to block applications. It is not possible to configure ASR to use another security solution for blocking at this time.

Thank you! I assume that windows defender has to be enabled for this to function as well?

Correct -> https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/attack-surface-reduction-faq#does-asr-support-third-party-security-solutions

Does ASR support third-party security solutions?
ASR uses Microsoft Defender Antivirus to block applications. It is not possible to configure ASR to use another security solution for blocking at this time.


Will this ever be implemented for Oracle DB?

Since there is no way to ask a question - I have created the issue.

No plan for it.

OK, I see. Before I go forever :) - I'd like to ask one more question. I've tried to start implementing Oracle extension by myself - to figure out if it would be very complex. And now I'm stuck here. Could you please tell me if there's some trick adding a new DB? The project contains the reference to EFCore.BulkExtensionsCore, but I'm still getting the following exceptions for all extension methods trying to compile the project in VS:

I've restructured project.
There is no more Core project, instaed main project is with all providers, while per provider project are using Include to link source files, all expect other provider files, from the main.
So that the latest source version, add Oracle provider in the main project, and then write files per that provider like is done for others. The specialized project for separate Nugets can be created later if you manage to finish Bulk CRUD methods.

New code update, source files and now copied with .bat script from main project when creating new version of per provider nuget

@alexandis have you managed to make anything regarding Oracle support? to share the info

Hi @borisdj - alas no: our project is in the tight timeframe, so I had to give up and start using solely EntityFramework, optimizing the code as much as possible (i.e. splitting into chunks, etc.)

@borisdj you have plan for Oracle?

Dupe: https://github.com/borisdj/EFCore.BulkExtensions/issues/1113


Couldn't find preset "babel-preset-expo"

I tried to install it with yarn add react-native-conductor, but it doesn't work.
There are lot of warnings like this:
This warning is caused by a @providesModule declaration with the same name across two different files.
jest-haste-map: @providesModule naming collision:
  Duplicate module name: mime-db
  Paths: /myapp/node_modules/react-native-conductor/examples/PulldownMenuExample/node_modules/react-native/node_modules/connect/node_modules/compression/node_modules/compressible/node_modules/mime-db/package.json collides with /myapp/node_modules/react-native-conductor/examples/PulldownMenuExample/node_modules/react-native/node_modules/connect/node_modules/errorhandler/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/package.json

and
error: bundling: Error: Couldn't find preset "babel-preset-expo" relative to directory "/myapp/node_modules/react-native-conductor/examples/PulldownMenuExample"

I tried also test example, and clean CRNA project with this repo but with the same result.

There was some issue with react-native init. Closing.


[Go SDK]: Adds Automated Python Expansion Service

Added an automated python expansion service for Go SDK.

Unit tested in this PR.
Integration tested on Dataframe transform at https://github.com/riteshghorse/beam/pull/52/files. Integration test will be added in a later PR once #23450 is merged. (Had to use fix beam version instead of core.SdkVersion)

Part of #23385

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Failure are due to use of core.SdkVersion which points to .dev. Did testing with fixed version locally and it passes. Filtering the test for now.


[KOGITO-6078] MongoDB performance improvements with index creation

Many thanks for submitting your Pull Request :heart:!
Please make sure that your PR meets the following requirements:

[ ] You have read the contributors guide
[ ] Your code is properly formatted according to this configuration
[ ] Pull Request title is properly formatted: KOGITO-XYZ Subject
[ ] Pull Request title contains the target branch if not targeting main: [0.9.x] KOGITO-XYZ Subject
[ ] Pull Request contains link to the JIRA issue
[ ] Pull Request contains link to any dependent or related Pull Request
[ ] Pull Request contains description of the issue
[ ] Pull Request does not include fixes for issues other than the main ticket

How to retest this PR or trigger a specific build:

Run all builds
Please add comment: Jenkins retest this

Run (or rerun) specific test(s)
Please add comment: Jenkins (re)run [runtimes|optaplanner|apps|examples] tests

Quarkus LTS checks
Please add comment: Jenkins run LTS

Run (or rerun) LTS specific test(s)
Please add comment: Jenkins (re)run [runtimes|optaplanner|apps|examples] LTS

Native checks
Please add comment: Jenkins run native

Run (or rerun) native specific test(s)
Please add comment: Jenkins (re)run [runtimes|optaplanner|apps|examples] native

Full Kogito testing (with cloud images and operator BDD testing)
Please add comment: Jenkins run BDD
This check should be used only if a big change is done as it takes time to run, need resources and one full BDD tests check can be done at a time ...

Jenkins run examples tests

Jenkins run kogito-examples tests

Jenkins run kogito-examples tests

The (build) kogito-examples check has failed. Please check the logs.

Jenkins run kogito-examples tests

The (build) kogito-runtimes check has failed. Please check the logs.

The (build) kogito-examples check has failed. Please check the logs.

The (build) kogito-examples check has failed. Please check the logs.

Jenkins run kogito-examples tests

The (build) kogito-apps check has failed. Please check the logs.

Jenkins run kogito-examples tests

Jenkins rerun optaplanner tests


add superhero notebook to examples

https://github.com/sassoftware/python-dlpy/pull/24

Thanks.
Since I merged the notebook, would you please close the issue?

Thanks @ethem-kinginthenorth


Congratulations on your paper being accepted by cvpr! So When will your code be uploaded?

+1

Sorry for my delay. I need three days (The Qingming Festival) to prepare the trained model for testing. Then I need a week to prepare my training code (verify it again before open source). Thank you for your attention.


ESM compile error

monaco-editor version: 0.22.3
Browser: N/A
OS: Windows
I included all the files (all files in dev, esm, min and min-maps) into a project. I try to compile my project and I get errors.
Error		Build:Cannot find module 'monaco-editor-core' or its corresponding type declarations.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\css\fillers\monaco-editor-core.d.ts	1
Error		Build:Cannot find module 'monaco-editor-core' or its corresponding type declarations.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\html\fillers\monaco-editor-core.d.ts	1
Error		Build:Cannot find module 'monaco-editor-core' or its corresponding type declarations.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\json\fillers\monaco-editor-core.d.ts	1
Error		Build:Cannot find module 'monaco-editor-core' or its corresponding type declarations.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\typescript\fillers\monaco-editor-core.d.ts	1
Error		Build:Cannot redeclare block-scoped variable 'MonacoEnvironment'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\editor\editor.api.d.ts	12
Error		Build:Cannot redeclare block-scoped variable 'MonacoEnvironment'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\monaco.d.ts	11
Error		Build:Module '"./fillers/monaco-editor-core"' has no exported member 'IDisposable'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\typescript\monaco.contribution.d.ts	1
Error		Build:Module '"./fillers/monaco-editor-core"' has no exported member 'IEvent'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\css\monaco.contribution.d.ts	1
Error		Build:Module '"./fillers/monaco-editor-core"' has no exported member 'IEvent'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\html\monaco.contribution.d.ts	1
Error		Build:Module '"./fillers/monaco-editor-core"' has no exported member 'IEvent'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\json\monaco.contribution.d.ts	1
Error		Build:Module '"./fillers/monaco-editor-core"' has no exported member 'IEvent'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\typescript\monaco.contribution.d.ts	1
Error		Build:Module '"./fillers/monaco-editor-core"' has no exported member 'Uri'.	Interface	C:\TFS\TeamBudget\Development-UI\Interface\ClientScripts\ThirdParty\monaco\vs\esm\vs\language\typescript\monaco.contribution.d.ts	1
There are no good examples on your site or within GitHub for using just the ESM version.

I included all the files (all files in dev, esm, min and min-maps) into a project

This does not make sense.
There are many samples at https://github.com/microsoft/monaco-editor-samples

Wait, so because you don't understand why there is a compiler error in your code, you're just closing the ticket?
I have a pre-existing project. It does not use TS, WebPack, nothing. Just Vanilla JS. I add all the folders and files from the zip file. I compile the application and I get the above errors. This is not my code.
Currently, your examples do not show the file structure. They do not explain what Parcel is.
https://github.com/microsoft/monaco-editor-samples/blob/master/browser-esm-parcel/src/index.js
This is the example I am going by. Where is the file structure for all the monaco files in this example? Instead of closing the ticket right away, feel free to ask more questions.

The README explains what each folder contains, so while the documentation is definitely lacking, the information regarding what each folder contains is present immediately under the screenshot: https://github.com/microsoft/monaco-editor#installing

There are complete self-contained samples for how to integrate the editor. There are samples for how to integrate it in a browser, in Electron or node webkit. There are two main options, using the pre-bundled AMD form or using an ESM bundler (examples are offered for webpack or parcel).
As a maintainer of this project, I cannot offer individual consultation to you on how to integrate the editor. You need to understand the techniques used in those samples and apply those techniques to your project.

I should be able to put the files and folders in ESM folder anywhere and be able to compile. I can not compile. This is why I'm trying to ask the community. I see this as a bug. How is this ok to have?

BTW, thanks as I do like Monaco. I've used the version that requires AMD. I have had that working for about 3 years. Now we are changing towards a more vanilla JS approach. So, I'm not new to Monaco. I'm new to loading it using vanilla JS. But again, I should not be getting compiler errors if I have included everything in the ESM folder into my solution. Whether monaco loads or not is not my concern right now as I can't even compile the solution.

See https://github.com/microsoft/monaco-editor/issues/886

Looks like ESM is not ready to be used.
I had to comment out line 11 in monaco.d.ts just like what was said in this thread:
https://github.com/microsoft/monaco-editor/issues/886
Then I had to go to a number of monaco.contribution.d.ts files and point them from './fillers/monaco-editor-core' to '../../edit/editor.api' (specifically the ones in vs/language/css, html, json and typescript)
Now that it compiles, I get an error about CSS mime types as described here:
https://github.com/microsoft/monaco-editor/issues/2219

lol, you posted that just before I was done typing

At this point, I think I need to go back to using the AMD version as the ESM version seems to have dependencies with WebPack or something like that. It would be nice if there was a build that you could just have the files and folders, put them somewhere, run the app and use native ES modules and import


Wrong UHoloLensARFunctionLibrary class

[Enter feedback here]
We might have listed the wrong method here
https://docs.microsoft.com/en-us/windows/mixed-reality/develop/unreal/unreal-qr-codes#enabling-qr-detection
Right before the usage, you should manually enable the tracking by calling UHoloLensARFunctionLibrary::StartQRCodeCapture(). After ending the QR code tracking, you should disable it by UHoloLensARFunctionLibrary::StopCameraCapture() to save the device resources.
It should be StartCameraCapture() https://docs.unrealengine.com/en-US/API/Plugins/HoloLensAR/UHoloLensARFunctionLibrary/index.html as this class doesn't have any StartQRCodeCapture()

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

ID: 4db9ec0f-8219-f292-1ac5-6ca607125b33
Version Independent ID: a04e35e0-a4a8-2af9-88a7-a5d44f90901b
Content: QR codes in Unreal - Mixed Reality
Content Source: mixed-reality-docs/mr-dev-docs/develop/unreal/unreal-qr-codes.md
Product: mixed-reality
Technology: mr-dev
GitHub Login: @hferrone
Microsoft Alias: v-hferrone

Thanks for catching this @cheles!


[ADD]: PhoneSploit Pro

Aim
An all-in-one hacking tool written in Python to remotely exploit Android devices using ADB (Android Debug Bridge) and Metasploit-Framework.
Details
This tool can automatically Create, Install, and Run payload on the target device using Metasploit-Framework and ADB to completely hack the Android Device in one click if the device has open ADB port TCP 5555.
The goal of this project is to make penetration testing on Android devices easy. Now you don't have to learn commands and arguments, PhoneSploit Pro does it for you. Using this tool, you can test the security of your Android devices easily.
Do I want to work on this:

[X]  Yes
[ ] No

@avinashkranjan @vanshitaverma Can you please assign me this issue.


Restore android workaround for CONST_STRING_DECL

Restore workaround for android initially introduced int https://github.com/apple/swift-corelibs-foundation/pull/622
https://github.com/SwiftJava/swift-corelibs-foundation/commit/6213cbabce1a4c3d9ac1573aef4aaaa8b102953b
Refix:
https://bugs.swift.org/browse/SR-2587
https://bugs.swift.org/browse/SR-2588

@swift-ci test and merge


[consensus] race condition between ordering state computer and commit phase

currently before firing a state sync request, we attempt to reset the buffer manager, but it's still possible that a PersistingRequest is in progress.
Ideally we should extend the reset behavior to send a special Execution/Persisting Request to pipeline phases to make sure there's no active requests before ack the reset.

Thanks @zekun000!


toggle bar icon is fixed in RTL version

Hi again, it seems toggle icon in RTL version is not moving as expected. When scrolling down its position fixed there.

Hi,
Thank you for the interest in our products and sorry for the late response.
Please remove from the css all the attributes for the .rtl .main-panel and the everything will work fine.
All the best,
Rares


melbourne city toponym

Trivial. Just one line adding a common toponym for "Melbourne"

Merged, thanks!


[Opensrp 0.2.5] Background worker related resource closure

IMPORTANT: Where possible all PRs must be linked to a Github issue
Closes #2421
Engineer Checklist

[ ] I have written Unit tests for any new feature(s) and edge cases for bug fixes
[ ] I have added any strings visible on UI components to the strings.xml file
[ ] I have updated the  CHANGELOG.md file for any notable changes to the codebase
[ ] I have run ./gradlew spotlessApply and ./gradlew spotlessCheck to check my code follows the project's style guide
[ ] I have built and run the FHIRCore app to verify my change fixes the issue and/or does not break the app
[ ] I have checked that this PR does NOT introduce breaking changes that require an update to Content and/or Configs? If it does add a sample here or a link to exactly what changes need to be made to the content.

Code Reviewer Checklist

[ ] I have verified Unit tests have been written for any new feature(s) and edge cases
[ ] I have verified any strings visible on UI components are in the strings.xml file
[ ] I have verifed the CHANGELOG.md file has any notable changes to the codebase
[ ] I have verified the solution has been implemented in a configurable and generic way for reuseable components
[ ] I have built and run the FHIRCore app to verify the change fixes the issue and/or does not break the app

@ageryck @marklosh Kindly test this.


feat: port Topology.Order

Is this still WIP?

Ref https://github.com/leanprover-community/mathlib/pull/18312

I notice that t.IsOpen seems to work fine in Lean 4 even now that TopologicalSpace is a class.
Is there a reason you avoid it in favor of @IsOpen _ t?

Hmm, I guess because that refers to TopologicalSpace.IsOpen and not IsOpen?
Is there some way we can unify these? It's a little annoying that the shorter/more natural form is not the preferred one.

Most of the time we use IsOpen without explicit topology. Let's add notation IsOpen[t] s.

bors merge


feat: implement server side pagination

This PR adds pagination support for the capp, capprevisions, users, pods, namespaces, and secrets API resources.
Key changes include:

Pagination Middleware: Sets pagination parameters in the context.
pagination package:

Paginator interface: Defines BuildList for resource list fetching.
GenericPaginator struct: Handles pagination with context and logger.
CreatePaginator function: Creates a GenericPaginator.
buildListOptions function: Constructs ListOptions with pagination settings.
FetchPage and fetchItems functions: Retrieve and paginate items.
extractLimitFromCtx and extractPageFromCtx functions: Extract pagination parameters from the Gin context.

/cc @fran2810

/approve


Definition paths not supported?

Hey guys, I have a quite large project and so I decided to bundle my definitions into subfolders. I have some models that I ideally would name the same and so I've done something like the following:
{
    "swagger": "2.0",
    "info": {
        "title": "Test API",
        "description": "AthGene internal API documentaion",
        "version": "1.0.0"
    },
    "host": "localhost:8765",
    "basePath": "/api",
    "schemes": [
        "http",
        "https"
    ],
    "consumes": [
        "application/json",
        "application/x-www-form-urlencoded"
    ],
    "produces": [
        "application/json"
    ],
    "paths": {
        "/categories": {
            "get": {
                "tags": [
                    "Categories"
                ],
                "summary": "List of categories",
                "description": "Retrieves a list of categories indicating id, name and version of each category.",
                "parameters": [
                    {
                        "name": "Authorization",
                        "in": "header",
                        "description": "JWT token",
                        "required": true,
                        "type": "string"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/categories/CategoryList"
                        }
                    },
                    "401": {
                        "description": "Not authorized"
                    },
                    "405": {
                        "description": "Only accepts get"
                    },
                    "500": {
                        "description": "Token verification failed"
                    }
                }
            }
        }
    },
    "definitions": {
        "categories/CategoryList": {
            "properties": {
                "categories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/categories/CategoryShort"
                    },
                    "example": "List of all categories, with id, name and version"
                }
            },
            "type": "object"
        },
        "categories/CategoryShort": {
            "properties": {
                "id": {
                    "type": "integer",
                    "example": 1
                },
                "name": {
                    "type": "string",
                    "example": "Best category ever"
                },
                "version": {
                    "type": "integer",
                    "enum": [
                        1,
                        2
                    ],
                    "example": 2
                }
            },
            "type": "object"
        }
    }
}

The validator however throws errors like the following:
API Errors:

  #/paths/~1categories/get/responses/200/schema/$ref: Definition could not be resolved: #/definitions/categories/CategoryList
  #/definitions/categories~1CategoryList/properties/categories/items/$ref: Definition could not be resolved: #/definitions/categories/CategoryShort

API Warnings:

  #/definitions/categories~1CategoryList: Definition is defined but is not used: #/definitions/categories~1CategoryList
  #/definitions/categories~1CategoryShort: Definition is defined but is not used: #/definitions/categories~1CategoryShort

2 errors and 2 warnings

I, however, don't seem to get any errors when I codegen my client. Am I abusing the swagger def, or is this an issue with the validator tool? I've replaced the "/" with "." which works.

The issues is due to you having  / in the #/definition name.  While Swagger itself does not forbid this, it does break JSON References resolution because / is a special character for JSON Pointers (https://tools.ietf.org/html/rfc6901#section-3).
I will keep this open and raise an issue on the OAI repository to see if they have a position on this.  If they do not, I will update json-refs to address this.

Sounds good! Sorry for the late reply @whitlockjc. I missed the notification.


Remove hardcoded numbers (use new ENDPOINT)

https://buidlguidl-v3.ew.r.appspot.com/api/stats

Was this supposed to be created at buidlguidl.com repo? Or we are planning to add it here too 🙌 ?
Just created a PR there https://github.com/BuidlGuidl/buidlguidl.com/pull/18

My bad!! haha, was doing many things at the same time
Thanks Shiv!


[TEP-0137] Rework the events controller cache

Dependencies:

[ ] #6883
[ ] #6884
[ ] #6889

Once dependencies are merged, the PR will contain 1 commit only
Changes
Rework the events controller cache
Switch the cache implementation from a simple LRU to the bigcache
library which provides better performance and reduces the need
for garbage collection.
Further improve the cache by reducing the size of keys, by
adopting hashing of keys and thus storing smaller data in the cache.
Hashing also allows for detecting changes in a larger surface of
the data. While todays keys are based on the event type and
resource metadata, we can now include conditions in the equation
as well, to provide and enhanced logic for event sending.
Storing a resource metadata and its condition in the hashed keys
means we can detect immediately if no relevant change was made
in a resource, and quickly finish the reconcile cycle.
Additionally storing the event type along with the resource
metadata, means that we can detect if a specific message was
already sent for a specific resource.
To be able to rely on the cache to decide which event to send,
we need to ensure that reconcile cycles for the same resource
are never executed concurrently. To achieve this, the thread
number (or concurrency) is set to 1 in the controller.
Scalability needs can be addressed by scaling the events
controller horizontally. The sharding of resources across
instances of the reconciler is based on the resource key, so
the same resource will always be directed to the same controller
thus avoiding any cache miss.
Signed-off-by: Andrea Frittoli<EMAIL_ADDRESS>Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[ ] Has Docs if any changes are user facing, including updates to minimum requirements e.g. Kubernetes version bumps
[x] Has Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including functionality, content, code)
[x] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[x] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings). See some examples of good release notes.
[ ] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
NONE

/kind misc

@afrittoli do you think we can get this in for this milestone? Or should I move it over to 0.57?

This PR has not made any progress since Pipelines v0.51 when it was initiated introduced. Clearing it from the milestone. Please add back as appropriate. Thanks!


Dead Links in chapter 12.6

account abstraction link is not found in chapter 12.6.
links to setting up katana and starkli are not found in chapter 12.6.

Hey @CountryCousin for setting up Katana and Starkli they have been recently updated in Starknet Book.
Installing Katana, Starkli -> https://book.starknet.io/ch02-01-basic-installation.html
Intro to Katana, Starkli -> https://book.starknet.io/ch02-02-starkli-scarb-katana.html
Quick guide to Katana -> https://book.starknet.io/ch02-04-katana.html
As for account abstraction, that's what I've been working on. The changes are currently under review! I'm sure they'll be updated in Cairo book eventually. Cheers!!


Add Qualification tool support

this adds support for the Qualification tool that ranks applications based on if they are a good fit for the plugin. This currently ranks based on SQL dataframe time / application time.  It also reports the percent executor CPU time and potential problems (UDFs) that we find.  these latter things are just reported for the user as information and not used in the rankings.
I split the qualification tool into its own Main function since these seem like distinct tools with different audiences, we can discuss if people have other opinions.  if we make it one for qualification and profiling we need to come up with good generic name and then some options.
I tried to remove calls to things that aren't used for qualification so you will see options around that added
This has very minimal doc changes - those will come later.
Fixed a bug with dropping tables and then removed caching.
I'm not a sql expert so if people know more efficient ways to write the sql, that is great, but we can followup with those optimizations later.
I added one test, more will come later, I want to use options that are being added by other people in those tests as well.
Output of the tool looks like:
### Qualification ###
+--------------------------------------+-------------------+-----+------------------+----------------------+------------+-------------------------+
|App Name                              |App ID             |Rank |Potential Problems|SQL Dataframe Duration|App Duration|Executor CPU Time Percent|
+--------------------------------------+-------------------+-----+------------------+----------------------+------------+-------------------------+
|Rapids Spark Profiling Tool Unit Tests|local-1622043423018|68.19|                  |11128                 |16319       |70.91                    |
|Rapids Spark Profiling Tool Unit Tests|local-1621969619749|14.34|UDF               |1560                  |10880       |43.79                    |
|Rapids Spark Profiling Tool Unit Tests|local-1621966649543|0.0  |                  |0                     |10650       |26.65                    |
|Rapids Spark Profiling Tool Unit Tests|local-1621955976602|0.0  |                  |0                     |10419       |25.8                     |
+--------------------------------------+-------------------+-----+------------------+----------------------+------------+-------------------------+

build

build

build

build

going to just add more stuff to do this and review later, closing


I build use msvc and want to use c/c++ api,but somthing wrong with #include path

If I follow the capi doc and create file somewhere outside primesieve-master/include folder. It appear
p1.cpp:1:10: fatal error: primesieve.hpp: No such file or directory     1 | #include <primesieve.hpp>       |          ^~~~~~~~~~~~~~~~ compilation terminated.
if I change the code to or else.
#include "include/primesieve.hpp"
#include <iostream>

int main()
{
    primesieve::iterator it;
    uint64_t prime = it.next_prime();

    // Iterate over the primes below 10^6
    for (; prime < 1000000; prime = it.next_prime())
        std::cout << prime << std::endl;

    return 0;
}

It appears
In file included from p1.cpp:1: include/primesieve.hpp:20:10: fatal error: primesieve/iterator.hpp: No such file or directory    20 | #include <primesieve/iterator.hpp>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated.
How to solve that path error or is there something wrong with my build process?

Can you try adding the primesieve include path to the MSVC compiler options:
cl /EHsc /O2 /I "...path/to/primesieve-master/include"

The reason it failed is that you have not globally installed primesieve and hence the compiler cannot find the primesive headers. This is also explained here https://github.com/kimwalisch/primesieve#microsoft-visual-c, including how to link against the static primesieve.lib library.
Another option that might be easier: Add your p1.cpp file to the primesieve/examples/cpp directory, then build primesieve using cmake . -DBUILD_EXAMPLES=ON. This way your program will be automatically compiled using the correct include path and linked against primesieve.lib

So if you want to try the solution with putting your cpp file into the primesieve/examples/cpp directory. The MSVC build commands are (open a Visual Studio Command-Prompt and cd into the primesieve directory):
cmake -G "Visual Studio 16 2019" .
cmake --build . --config Release

I think I will add this information to C_Examples.md and CPP_Examples.md as it will be helpful, especially for people without in-depth C or C++ knowledge.

Another option that might be easier:
Add your p1.cpp file to the primesieve/examples/cpp directory, then build primesieve using cmake . -DBUILD_EXAMPLES=ON. This way your program will be automatically compiled using the correct include path and linked against primesieve.lib. The exact MSVC build commands that you need to run are (open a Visual Studio Command-Prompt and cd into the primesieve directory):
cmake -G "Visual Studio 16 2019" -DBUILD_EXAMPLES=ON .
cmake --build . --config Release

I can build exe use this method now,thank you!

I can build exe use this method now,thank you!

Great 😊


Run chromatic on branch ready

Summary
The goal for this PR is to run chromatic only when the branch is ready is for review. The idea is that we would keep branches in draft state for longer and only turn them ready relatively late. It's always possible to discuss drafts or trigger manual runs.
Other possibilities include : run on label change, run on review request… for exemple.
Review workflow:

Create a new branch from this branch
Add commits that should break the CI (test or lint)
Open a PR in draft (CI should fail and chromatic job not run)
Fix the CI, chromatic job should still not run
Make the PR ready for review. CI should re-run with now chromatic running
Make a commit that break lint or test. CI should fail, chromatic job should not run

Ok this PR is officially "ready for review" (I had to turn it on and off to test stuff).  The conditional trigger of Chromatic on lint seems to work well.
I didn't manage to have the if working properly on this branch, for not running on draft. It seems it only works if the PR opened as draft, but if it has been turned on/off it still runs everything 🤷

In the viz workflow by replacing the
on:
 - push

by
on:
   pull_request:
      types:
        - opened
        - synchronize
        - reopened
        - ready_for_review

it works (https://github.com/opendatasoft/ods-dataviz-sdk/pull/214)
to access github.event.pull_request.draft we need to react to the pull_request event, that what we are doing by adding the on: pull_request

Ha nice, I think I lacked the synchronize in the early version for it to react to push. I'll just rebase to erase test commits before merging.

I already rebased and erased tests commits => https://github.com/opendatasoft/ods-dataviz-sdk/pull/199/commits/73a3814cf26c7bb0cca03928a55ee1e4499f8a0b


Investigate defectdojo integration

Time to add native SARIF capability to defectdojo. This will help integrate not just scan but many other tools.

Really need this :'(


A11y: VoiceOver says "uncheck checkbox" when you check a checkbox using VO-Space

I'm submitting a ...

[x] bug report
[ ] feature request
[ ] other (Please do not submit support requests here (see above))

Current behavior:
VoiceOver says "uncheck checkbox" the first time you check a checkbox using VO-Space. This only happens if the checkbox has an ng-model attribute.
Expected / new behavior:
The first time you check a checkbox using VO-Space, VoiceOver should say "check checkbox." This is what happens in Safari.
Minimal reproduction of the problem with instructions:
CodePen demo and instructions
AngularJS version: 1.6.4, 1.6.6, snapshot
Browser: Chrome 60 macOS 10.12.6
Anything else:
In my full web app, VoiceOver consistently says the opposite of what it should, even after checking/unchecking multiple times. For some reason in the CodePen it only says it wrong the first time I interact with a checkbox, and it corrects itself after that.
Also, this might be related to a Chromium bug report.

Have you included the ngAria module? In your codepen, you have only included the javascript file, but not enabled the module as far as I can see.

Oops, sorry about that! I have updated the CodePen. The ngAria module seems to have fixed one of the checkboxes, but there is still a failing scenario.

I am also seeing this as well still.  I noticed that if I just hit the "space" bar instead of control-option-space it announces it correctly.  Maybe something with that key combination is reversing the value before announcing.


Generate the Table to Define Each Member of the Enum Type

Hi, as a newcomer to this tool, I find that the class named 'argumentdfn' could be generated the table for the method of the interface with 'for' attribute in your test case. As a spec writer, if I want to generate a table to define the meaning of each member of a enum type, which class should I use?

Happy to provide more types of def blocks to help in defining things. Can you provide an example of the sort of markup you'd like to see in the final spec?

For example, I define a enum type as below:
enum AlertType {
"new-face-detected",
"face-out-of-fov",
"face-back-to-fov"
};
Besides, I want to generate a table to show the meaning of each member for AlertType as below:
----|------
new-face-detected | A new face enters the FOV
face-out-of-fov | A new face is out of field of view
face-back-to-fov | A tracked face is back fully to field of view

It seems like this is pretty easy to just do on your own, and Bikeshed can't add very much?   I will define my table using .data class to make it look much better.


Possible mistake in javascript.pest

Doing a search about usages of pest, if found that the pest file memorial-core/src/parser/javascript.pest make use of the PUSH operation but never of POP or DROP or PEEK.
I did not investigate whether if this was a mistake or not, but it looks like one and it might result in slower parsing (and useless memory usage).

Hi @Tartasprint
I think you're right. I copied this code from some other source and didn't test it properly. Looks like a typo. But also the implementation overall looks a bit naive. I'll work on fixing it soon. Thank you for reporting!


fix trace offsets in butterfly mode

closes #10083

@drammock it looks like this broke circleci:
Traceback (most recent call last):
  File "/home/circleci/project/tutorials/epochs/20_visualize_epochs.py", line 79, in <module>
    epochs['face'].plot(events=catch_trials_and_buttonpresses, event_id=event_dict,
  File "/home/circleci/project/mne/epochs.py", line 1136, in plot
    return plot_epochs(self, picks=picks, scalings=scalings,
  File "/home/circleci/project/mne/viz/epochs.py", line 915, in plot_epochs
    fig._draw_traces()
  File "/home/circleci/project/mne/viz/_mpl_figure.py", line 1721, in _draw_traces
    offsets = self.mne.trace_offsets[offset_ixs]
IndexError: index 364 is out of bounds for axis 0 with size 364

on it.


Update test for milestone 2.18

For unknown reason, the behaviour of milestone differs such that the PWD environment variable is not updated to the directory of the process.
Because we are not running with a shell and it's the shell's resposbility to keep it updated, we'll switch instead to a lookup pipe to get the pwd and not rely on the env var.
After several hours of digging without success, this should accomplish what the test intended todo with a dependency on the shell.

https://github.com/ansible/molecule/pull/4236#issuecomment-2189831770

pkg job failing due to new twine release, see https://github.com/pypa/twine/issues/977


DSND-2692: Harvest Perl GET responses

Describe the changes
The Bulk E2E tests need the GET responses from the Perl endpoints to compare with the output of the Java ones.

Capture Perl GET responses using deltas from Staging
Import these to a Kermit table capdevjco2.bulk_testing_perl_docs
Update bulk test queries to source test data from the new table
Update the Java API URIs to remove the filing-history-data-api prefix
Added a utility class to harvest the Perl GET responses if the data table needs refreshing

Related Jira tickets
DSND-2692
Developer check list
General

[x] Is the PR as small as it can be?
[ ] Has the Jira ticket been updated with any relevant comments?
[ ] Is the README up to date?
[ ] Has the POM been updated for the latest versions of dependencies?
[ ] Has the code been double-checked against main?
[ ] Does the code adhere standards in this repository, including SonarQube checks?

Testing

[ ] Do the code changes have unit and integration tests with code coverage > 80%?
[x] Has the code been tested locally and/or passed the API Karate tests on Tilt?
[x] Have mandatory manual test cases been run?
[ ] Are extra Karate tests required?
[ ] Are all the test data resources up to date?

Release preparation
Where possible, add links to the respective Jira tickets when an item is checked

[ ] Have these changes been included in a release ticket?
[ ] Are changes required to the docker-chs-development deployment or test data?
[ ] Are any changes required to the environment added to chs-configs?

Notes to the tester
Add any testing hints or instructions here.

CI: No security warnings found

CI: No security warnings found


Feature: More nuanced deletion of Data (specifically HasSession)

Feature Description
Database Management management was introduced in https://github.com/SpecterOps/BloodHound/pull/423 . In cases where current data about logged in users for an attack is needed, we currently have to delete the whole database (Collected graph data), and import all other data besides the HasSession Edges. A way to only delete specific typed of data could be useful in this case.
Are you intending to implement this feature?
No
Current Behavior
Only all collected graph data can be deleted, not specific types of data.
Desired Behavior
Add more options to the /clear-database endpoint and add UI elements too.
Use Case
Updating user sessions without keeping the old user session data.
Implementation Suggestions
Maybe a deleteHasSessionsEdges option for POST api/v2/clear-database which executed something akin to:
match (c:Computer)-[e:HasSession]->(u:User) delete e

This is still in the old Bloodhound, it has clear sessions, and also you can right click and delete individual edges/nodes. I wish the new one had these features too.


types.d.ts: Plugin interface is incompatible to all Webpack Plugins

Bug report
Type Error: Type '(compiler: Compiler) => void' is not assignable to type '() => void'.ts(2322)

What is the current behavior?
A plugin is a class with an apply function without a Compiler instance:
https://github.com/webpack/webpack/blob/7415a618460795874fdf95c8f03363ea96709d52/types.d.ts#L6638-L6640
All webpack plugins have an apply function with a Compiler instance:
https://github.com/webpack/webpack/blob/7415a618460795874fdf95c8f03363ea96709d52/types.d.ts#L134-L142
This is a problem as for example createChildCompiler is allowing only Plugin[].
That means that all webpack plugins are incompatible with createChildCompiler.
https://github.com/webpack/webpack/blob/7415a618460795874fdf95c8f03363ea96709d52/types.d.ts#L1502-L1506
If the current behavior is a bug, please provide the steps to reproduce.
import webpack from 'webpack';

const compilation = new webpack.Compilation(
/*
    Please ignore this line
    its a shortcut to reduce the amount of code */null as any
);

compilation.createChildCompiler('demo', {}, [

  new webpack.AutomaticPrefetchPlugin()

])

Therefore all webpack plugins produce the following type error:
Type 'AutomaticPrefetchPlugin' is not assignable to type 'Plugin'.
  Types of property 'apply' are incompatible.
    Type '(compiler: Compiler) => void' is not assignable to type '() => void'.ts(2322)

What is the expected behavior?

We should have either
declare interface Plugin {
	apply: (compiler: Compiler) => void;
}

or
declare interface WebpackPlugin extends  Plugin{
	apply: (compiler: Compiler) => void;
}

createChildCompiler(
		name: string,
		outputOptions: OutputNormalized,
		plugins: WebpackPluginPlugin[]
	): Compiler;

Other relevant information:
webpack version:  5.1.2
Node.js version: 10.13.0
Operating System: OS-X
Additional tools: typescript 4.0.3

PR welcome

Will do 👍

@evilebottnawi can you please take a look at #11948 ?

@jantimon I came to the same conclusion. Thanks for your PR

@jantimon fixed, can we close?

Thanks for merging 👍


[TASK] Manage Shallow copy async in go-spdk-helper

What's the task? Please describe
In the new SPDK longhorn-v24.05 branch the shallow copy API is now async, must handle this in go-spdk-helper
Describe the sub-tasks

Additional context

PR https://github.com/longhorn/go-spdk-helper/pull/114

The milestone was missed. Need to ensure the item we are working to assign to the current milestone.
cc @derekbit


Feature request: Get 24h forecast of prices

Maybe it should be interested if we could get a price range for 24h, so you can create an chart with for example ApexCharts card
I see in the readme of https://github.com/EnergieID/entsoe-py, there is query_imbalance_prices
client.query_imbalance_prices(country_code, start, end, psr_type=None)

Why do you need the imbalance prices for this and not the day ahead prices? Aren't the imbalance prices only available a couple of seconds before the energy is actually used?
The code is already set up to fetch the day ahead prices of the whole day. However, now it only saves the current price to the database and not the whole day. It's indeed a nice feature to have and when I have time I will look into it.
Does anyone know of an integration that does something similar (adding future data to a sensor) so I can look how its done?

Yes, you're right.
The day ahead prices needs only to be loaded just after midnight so we could it use it in HA automations.
Couldn't this be done to store the array data as attributes in the sensor?
Sorry, I'm new to dev HA integrations and python.

@JanLankhorst that would probably work, but it feels more like a work around to make a seperate sensors for every hour. I would argue that, for example, "hour 1" is a current state (or state attribute). Ideally you would want to have one sensor that would have data on the future hours so you can plot these.
Found this issue  about forecast states. Apparently there is currently no support for future values in home assistant. So it would be very hard to implement this.
Some extremely powerful automations can be made with future values. I can add some more sensors for a couple of hours, or some time states of the time at which prices are highest or lowest. However, having 24 sensors for every hour is not my preference. What do you think?

Relative levels would be awesome, or working with attributes? 1 sensor with up-to 24 attributes should be possible I guess?; my use case is a home battery; typically there are two peaks a day; one in the morning and one in the early evening. My intention is to buy cheap twice a day and sell (taking into account expected own usage) at the peak levels; also taking into account expected PV yield and car battery "headroom".
The invertor I intend to buy supports setting up 6 daily timeslots through mod bus.
Next step would be to pre heat the buffer supply of the heat pump (provided I manage to get one!)

@ronaldt80 What do you mean with relative sensors? I added a sensor that shows the current price as a percentage of the maximum price of the day, as I wanted to turn off the heat pump at the peaks above 70% of the max. Is that what you mean as well?
Attributes may indeed be a good option I think. However making graphs with this is not very user friendly. How would you use these 24 attributes in your system?
Btw, what battery do you use? I am looking for such a system myself as well.

I'm looking into a 3 phase 8/10/12kw deye inverter combined with 3 5kwh battery units. Challenge is finding an electrician.
Advantage of deye is that the modbus can be used to plot a charge/discharge pattern - raspberry pi and esphome both possible.

Does anyone know of an integration that does something similar (adding future data to a sensor) so we can look how its done?

The Nordpool integation has this, but it splits the prices in "today" and "tomorrow" with 24 different prices in each. That makes it difficult to use in HA because one night prices is in two different lists. The format is something like this
`unit_of_measurement: NOK
raw_price:

start: '2022-10-02T00:00:00+02:00'
end: '2022-10-02T01:00:00+02:00'
value: 1.424787

start: '2022-10-02T01:00:00+02:00'
end: '2022-10-02T02:00:00+02:00'
value: 1.4179

start: '2022-10-02T02:00:00+02:00'
end: '2022-10-02T03:00:00+02:00'
value: 1.338575

start: '2022-10-02T03:00:00+02:00'
end: '2022-10-02T04:00:00+02:00'
value: 1.389425

start: '2022-10-02T04:00:00+02:00'
end: '2022-10-02T05:00:00+02:00'
value: 1.35155

start: '2022-10-02T05:00:00+02:00'
end: '2022-10-02T06:00:00+02:00'
value: 1.356188

start: '2022-10-02T06:00:00+02:00'
end: '2022-10-02T07:00:00+02:00'
value: 1.3542`
This format makes it easy to make template sensors for X cheapest hours for a day
- unique_id: cheapest_hours_1_4     name: cheapest_hours_1_4     state: >-       {% set l=state_attr('sensor.nordpool', 'raw_today')|sort(attribute='value') %}       {% set t = now() %}       {{ (t >= l[0].start and t <= l[0].end)         or (t >= l[1].start and t <= l[1].end)         or (t >= l[2].start and t <= l[2].end)         or (t >= l[3].start and t <= l[3].end) }}

Only add attribute data per 24h after midnight so you can use this data in HA automation.
In this way, there is no split and you use the tomorrow data for the current day.
The tomorrow energy data can only fetched after a specific hour I think.

@blowk That would be my suggestion also. This approach makes it useful for calculation in HA.

Alright, i managed to get the attributes into this format in the new commit:

To also get the times is a bit more work, but it can be possible.
This can be done in the format @stigvi  mentioned. Another approach would be having separate attributes per hour. I am not sure which one would be more convenient.

The format @stigvi mentioned should be ok.
today_prices: 0.223, 0.197, 0.206, 0.169, 0.188, 0.197, 0.33, 0.427, 0.497, 0.209, 0.185, 0.154, 0.148, 0.149, 0.135, 0.14, 0.165, 0.184, 0.377, 0.252, 0.252, 0.169, 0.165, 0.147
would be like this, no?
today_prices:

price: 0.223
datetime: '2022-10-04T09:00:00+00:00'
price: 0.197
datetime: '2022-10-04T10:00:00+00:00'
price: 0.206
datetime: '2022-10-04T11:00:00+00:00'
price: 0.169
datetime: '2022-10-04T12:00:00+00:00'
price: 0.188
datetime: '2022-10-04T13:00:00+00:00'
price: 0.197
datetime: '2022-10-04T14:00:00+00:00'

In your example: 0.223 will correspond with 00:00-01:00, 0.197 with 01:00-02:00 etc.
When I have time this week I will look into getting the times in there as well. The format will probably look something like this:

price: 0.223
hour: '2022-10-04T00:00:00+02:00'
price: 0.197
hour: '2022-10-04T01:00:00+02:00'
etc.

In your example: 0.223 will correspond with 00:00-01:00, 0.197 with 01:00-02:00 etc.
When I have time this week I will look into getting the times in there as well. The format will probably look something like this:

price: 0.223
hour: '2022-10-04T00:00:00+02:00'
price: 0.197
hour: '2022-10-04T01:00:00+02:00'
etc.

That would be great. With timestamps, it is possible to sort this list based on price and it would be easy to find the cheapest or most expensive N hours.

Managed to get the timestamped prices in the attributes in the new commit. Let me know if you have any issues.

Thanks!. Seems to work for me:
type: custom:apexcharts-card
graph_span: 24h
span:
  start: day
now:
  show: true
  label: Now
header:
  show: true
  title: Day ahead prices (€/kwh)
series:
  - entity: sensor.average_electricity_price_today
    stroke_width: 2
    type: area
    opacity: 0.3
    color: '#1007f0'
    data_generator: |
      return entity.attributes.timestamped_prices.map((record, index) => {
              return [record.time, record.price];
            });

Looks good. But I have only today's prices in my HA. Should tomorrows prices be in that list, also?

The prices are only published one day ahead

Thats is unfortunate. It makes planning car charging from 22:00 to 06:00 not so easy. And a little bit strange because prices for friday is available mid day on thursday in Norway.
Edit: When I look at transparency.entsoe, I see that prices for tomorrow is indeed avilable

Oh that is interesting, it would probably be possible to make a sensor with the data for as far ahead as the data goes

I hope so. If I can have a list with today and tomorrows prices, it is easy to select the elements from 22:00 to 06:00 next day, sort it on price and then select the 4 cheapest hours.

Prices of the day after come available some time in the afternoon I think (my guess is at 15:00). Can't find anything about it online though. We'll have to watch at what time prices of the following day are available. Extending the forecast would be nice indeed.
The code is setup to fetch from 00:00 till 23:00 and all sensors are based on that, so this would mean a fairly big overhaul of how the integration fetches prices and calculates max, min and avg.

Thanks!. Seems to work for me:
type: custom:apexcharts-card
experimental:
  color_threshold: true
graph_span: 24h
span:
  start: day
now:
  show: true
  label: Now
header:
  show: true
  title: Day ahead prices (€/kwh)
series:
  - entity: sensor.average_electricity_price_today
    name: Gemiddelde prijs
    opacity: 0.7
  - entity: sensor.average_electricity_price_today
    name: Prijs per uur
    stroke_width: 2
    type: column
    opacity: 1
    color_threshold:
      - value: -10
        color: green
        opacity: 1
      - value: 0
        color: blue
      - value: 0.3
        color: orange
      - value: 0.5
        color: red
    data_generator: |
      return entity.attributes.timestamped_prices.map((record, index) => {
              return [record.time, record.price];
            });

Thanks for the input.
Made an update because the price will be rounded to one decimals.
Just adding float_precision: 3 to your entitty serie will do the job.
`type: custom:apexcharts-card
experimental:
color_threshold: true
graph_span: 24h
span:
start: day
now:
show: true
label: Now
header:
show: true
title: Day ahead prices (€/kwh)
series:

entity: sensor.average_electricity_price_today
name: Gemiddelde prijs
opacity: 0.7
float_precision: 3
entity: sensor.average_electricity_price_today
name: Prijs per uur
stroke_width: 2
type: column
opacity: 1
float_precision: 3
color_threshold:

value: -10
color: green
opacity: 1
value: 0
color: blue
value: 0.3
color: orange
value: 0.5
color: red
data_generator: |
return entity.attributes.timestamped_prices.map((record, index) => {
return [record.time, record.price];
});
`

I will make some small changes to the attributes to fetch the prices of the day after. I deleted the non timestamped price list, as i don't think it is necessary. Let me know if I am wrong on this.
The timestamped attributes will now ditch the "timestamped" term and be called prices_today, which contains prices of today, prices_tomorrow which contains prices of tomorrow and prices which contains everything that is available on that point in time (today + tomorrow if available).
The max, min and avg still refer to the prices of today.
@blowk in your case it means that if you only want to show the prices of today in the graph you need to change data_generator to:
data_generator: |
      return entity.attributes.prices_today.map((record, index) => {
              return [record.time, record.price];
            });

@stigvi I think with this you should be able to select the cheapest hours between 22:00 and 6:00 after the prices of the following day are available by calling the prices attribute.
If everything works I will commit it in a few hours.

@JaccoR Thanks for the changes!
I made a 48h Apex chart for it.
type: custom:apexcharts-card
graph_span: 48h
span:
  start: day
now:
  show: true
  label: Now
header:
  show: true
  title: Day ahead prices (€/kwh)
series:
  - entity: sensor.current_electricity_market_price
    stroke_width: 2
    float_precision: 3
    type: column
    opacity: 0.3
    color: '#1007f0'
    data_generator: |
      return entity.attributes.prices_today.map((record, index) => {
        return [record.time, record.price];
      });
  - entity: sensor.average_electricity_price_today
    stroke_width: 2
    float_precision: 3
    type: column
    opacity: 0.3
    color: '#07bef0'
    data_generator: |
      return entity.attributes.prices_tomorrow.map((record, index) => {
        return [record.time, record.price];
      });

Tried a bit of templating but get stuck on the format of the time value. Could it be the time is stored as a string where as the nordpool integration records it as a time value?
What I want to do:

Compare each value to its two immediate neighbors (-1 and +1 hour); if it's lower to both its a trough, if its higher than both its a peak.

determine the 3 consecutive lowest hours (being ideal moment to charge the car, turn on laundry machine etc). Much like this;
home assistant community forum

Any help would be much appreciated

And question, does anyone know why the apex card prints the last value of the series in the legend? Eg. in the above example 0.149 and 0.234?

@ronaldt80 Yes the time is a string, I thought converting it to a string was the only way to get it into attributes as timevalues gave some errors. I also thought that the nordpool integration converted it to a string hence the quotation marks. Do you know this?

And question, does anyone know why the apex card prints the last value of the series in the legend? Eg. in the above example 0.149 and 0.234?

That's the way @blowk set it up. Its the value of the sensors used for plotting the attributes (entity: sensor.average_electricity_price_today and  entity: sensor.current_electricity_market_price)

@ronaldt80 : you can also plot one serie in apex chart and use the prices attribute, so it will plot all price of 48 hours. Before noon, the prices for the next day will not be available, but in the afternoon it will be updated.

And question, does anyone know why the apex card prints the last value of the series in the legend? Eg. in the above example 0.149 and 0.234?

    show:
      legend_value: false

Thanks!!


Add changelog entry about hipGraph support

Currently, we don't support calling rocThrust API function from within hipGraphs.
Add a note to the changelog to indicate this.

Thanks Stanley, that makes a lot of sense. I'm just sorting out a few issues with the documentation build and then I'll add this in.

I've added a documentation page on hipGraphs. You can view the formatted version in the readthedocs build for this PR here: https://advanced-micro-devices-demo--412.com.readthedocs.build/projects/rocThrust/en/412/
I was a little unsure about the level of detail that should be included in the explanation - feel free to let me know if you think it should be adjusted. Unfortunately, currently, there are no algorithms (not even the ones in the asynchronous API) that work inside of hipGraphs, so I haven't included a list.


Install instructions should ask for libcudnn 6.0

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
No
OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
Ubuntu 17.04
TensorFlow installed from (source or binary):
binary (pip3)
TensorFlow version (use command below):
v1.3.0-rc2-20-g0787eee 1.3.0
Python version:
Python 3.5.3
Bazel version (if compiling from source):
CUDA/cuDNN version:
6.0
GPU model and memory:
GTX 1080 8GB
Exact command to reproduce:
NA

Describe the problem
The install instructions at https://www.tensorflow.org/install/install_linux tell users to install libcudnn 5.1.
I followed these and ended up with the error on
import tensorflow

ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory

So I installed libcudnn 6.0 instead and tensorflow is now working.
My request is for the install instructions to be updated to reflect the move to cudnn 6.0
Source code / logs
NA

See #12416 and  PR #12463.

Similar issue for Windows users here #11784

@frehoy I believe this got fixed alongside #11784

Yeah, this is definitely fixed and you can even see it in the docs_src directory here on Github:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/docs_src/install/install_linux.md
But it sometimes takes a while for these things to propagate to the root directory on tensorflow.org as we usually only update that with version releases.

@frehoy  hello, i have a question. thank help me fix it.

i have installed  cuDNN v6.0. CUDA Version:8.0, Nvidia driver is newest.
thank you before

updating to cuDNN v6 for cuda 8 solved my problem


Edit these docs link

Add a link to the right markdown file somewhere on each docs page, so that people can easily contribute suggestions/fixes.

Dupe of https://github.com/lit/lit.dev/issues/450


Adding feature - support of XChaCha20+Poly1305 algorithms for SecretBox processing

Original libsodium library supports XChaCha20+Poly1305 algorithm for SecretBox processing. It would be nice to add this feature to Sodium.Core also; and it's rather easy to do so because requres only trivial wrapping.
So, then a user would have an option to choose between the default algorithm (XSalsa20+Poly1305) and XChaCha20+Poly1305 algorithm:

Please review the suggeted changes, I expect no difficulties there. Though just please pay attention to two chunks marked with "todo" (you will definitely understand quickly the reason of my doubt; most likely, these chunks are just not needed for XChaCha20+Poly1305 therefore i've commented them out, and I will delete them completely after your confirmation).
So, I hope your review will not consume much of your time.
(We would like to migrate from original library to Sodium.Core, but we urgently need the abovementioned functionality to do this).

Hi, @tabrath. Could you please help us with AppVeyor? It fails for all recent pull requests. It looks like there is just something wrong with its settings.

Hi, @tabrath. Could you please help us with AppVeyor? It fails for all recent pull requests. It looks like there is just something wrong with its settings.

I can foresee someone having to fork this repo just like how libsodium-net was forked since tabrath doesn't seem to be very active.

@samuel-lucas6 @Lesnik4u you 2 can check my libsodium binding instead. It's called ASodium (could be found on nuget as well).

Since libsodium-core is now in maintenance mode, I'm not sure if this is still something that should be added. Please feel free to open a new issue if you think it is.


[BUG] Image color brightness are not applied in the SkiaSharp higher version

Description
I am using SkiaSharp library to reduce the image brightness and it works properly in the older SkiaSharp version [1.59.3] and I am currently upgrading the SKiaSharp version to 2.80.0. I am trying to reduce the image brightness in the higher version but it doesn't look great. Kindly provide any suggestion to resolve this issue.
Code
using (Stream destination = new FileStream("dest_image.png", FileMode.OpenOrCreate, FileAccess.ReadWrite))
            {
                Stream source = new<EMAIL_ADDRESS>FileMode.OpenOrCreate, FileAccess.ReadWrite);
                SKBitmap bitmap = new SKBitmap(1, 1);
                bitmap = SKBitmap.Decode(source);
                float correctionFactor = 0.80f;
                //Reduce the picture color brightness
                for (int i = 0; i < bitmap.Width; i++)
                {
                    for (int j = 0; j < bitmap.Height; j++)
                    {
                        SKColor color = bitmap.GetPixel(i, j);
                        float red = (float)color.Red;
                        float green = (float)color.Green;
                        float blue = (float)color.Blue;
                        red = (255 - red) * correctionFactor + red;
                        green = (255 - green) * correctionFactor + green;
                        blue = (255 - blue) * correctionFactor + blue;
                        bitmap.SetPixel(i, j, new SKColor((byte)red, (byte)green, (byte)blue, color.Alpha));
                    }
                }
                Stream temp = SKImage.FromBitmap(bitmap).Encode(SKEncodedImageFormat.Png, 100).AsStream();
                temp.CopyTo(destination);
            }

Source Image:

Expected Behavior

Actual Behavior

Basic Information

Version with issue:  2.80.0
Last known good version:  1.59.3
IDE:   Visual Studio 2017
Platform Target Frameworks: .NET Core 2.1

I'll have a look. Thanks for reporting.

@mattleibow - Could you please share the progress of this issue ?

@VijayRM I had a look and the issue seems to be that the write is not overwriting the underlying pixel, so the alpha is combining the pixels.
However, since v2, the actual native method for drawing a pixel was removed and the polyfill that I added is not the greatest in terms of performance. I would suggest creating a canvas and the paint object, then drawing the point:
using var destination = File.Create("dest_image.png");

using var source = File.OpenRead(@"source.png");
using var bitmap = SKBitmap.Decode(source);
using var canvas = new SKCanvas(bitmap);
using var paint = new SKPaint { BlendMode = SKBlendMode.Src };

float correctionFactor = 0.80f;

// Reduce the picture color brightness
for (int i = 0; i < bitmap.Width; i++)
{
    for (int j = 0; j < bitmap.Height; j++)
    {
        SKColor color = bitmap.GetPixel(i, j);

        float red = (float)color.Red;
        float green = (float)color.Green;
        float blue = (float)color.Blue;

        red = (255 - red) * correctionFactor + red;
        green = (255 - green) * correctionFactor + green;
        blue = (255 - blue) * correctionFactor + blue;

        paint.Color = new SKColor((byte)red, (byte)green, (byte)blue, color.Alpha);
        canvas.DrawPoint(i, j, paint);
    }
}

using var temp = SKImage.FromBitmap(bitmap);
using var data = temp.Encode(SKEncodedImageFormat.Png, 100);
using var stream = data.AsStream();
stream.CopyTo(destination);


Update Reason
The model is neither used in a standard document or triangle document, which indicates that the model is not used anymore.
If there are still reasons to still have this model in the repository, please provide a short rationale in the comments. If not, please indicate with a "+1" that you are OK with deprecating the model.
Deprecating a model means, that it will be removed after two Tractus-X releases from the repository. For details, please refer to the GOVERNANCE process.
MS1 Criteria

[ ] The model that should be deprecated exists and is not deprecated already
[ ] The respective model does not affect existing use cases (aspect is either used in higher versions or replaced by a different aspect)
[ ] A shared aspect, which will be deprecated, is not used by any released aspect model

@SMaierTSI please check this request

Methodological viewpoint:
the validity of a PCF is specified in the Catena-X PCF Rulebook. As a result, a PCF can be valid for a longer time period. For consistency, a specific PCF data model version needs to be supported at least as long as there is a valid PCF. This must be considered when we want to deprecate a data model.
Technical viewpoint:
in order to meed the specification in the PCF Rulebook the PCF Exchange applications support different PCF data models concurrently. It needs to be aligned with the application providers which PCF data model versions can be deprecated.


[Improve] Update README.md for version 2.3.8

Purpose of this pull request

Check list

[ ] Code changed are covered with tests, or it does not need tests for reason:
[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/seatunnel/tree/dev/docs

cc @arshadmohammad

Thanks @arshadmohammad for review!

JFI: Seatunnel 2.3.8 will be released within a month. Documents are updated in advance.

Yes, the change prepare for next release because web 1.0.2 not released too.


update .travis.xml for auto push

CLA is valid!

i see the change is to drop 0.12 from being used during travis build, but such a change doesn't match what the title says. Is this what you intend to do?

as per offline discussion, this is a PR by mistake.


Removing a postgresql specific configuration from ash_sqlite.install

Not really sure how to test this except:
mix igniter.new igniter_ash_phoenix_sqlite_remove_p_port_configuring --install ash,ash_phoenix,ash_sqlite@github:djgoku/ash_sqlite@chore-remove-setting-repo-port --with phx.new --with-args="--database sqlite3" I have also attached the log below.
removing-more-postgresql-log.txt
Just a thought, but if I am installing ash_phoenix and ash_sqlite could we just add an implicit --with-args="--database sqlite3" since if you don't you'll have a few bits of postgresql to remove since phx.new defaults to installing for postgresql. Not really sure how to solve this, but was just thinking about it.

🚀 Thank you for your contribution! 🚀


model predict error

When I run model_predict.py as described in readme ,I  got the error:
Traceback (most recent call last):
File "model_predict.py", line 17, in
print(model.predict(text))
File "/home/jovyan/work/triplet_extraction/train/entity_relation_extract.py", line 176, in predict
) for s, p, o in spoes
File "/home/jovyan/work/triplet_extraction/train/entity_relation_extract.py", line 176, in
) for s, p, o in spoes
KeyError: 11
And how can I fix it?Thanks!

In this position，When you run predict,   self.i2p_dict keys will become str, but the 'p' types is int. You need transition it's types to str
------------------ 原始邮件 ------------------
发件人:                                                                                "leefsir/triplet_extraction"                                                                                @.>;
发送时间: 2021年7月26日(星期一) 上午8:42
@.>;
@.***>;
主题: [leefsir/triplet_extraction] model predict error (#5)
When I run model_predict.py as described in readme ,I  got the error:
Traceback (most recent call last):
File "model_predict.py", line 17, in
print(model.predict(text))
File "/home/jovyan/work/triplet_extraction/train/entity_relation_extract.py", line 176, in predict
) for s, p, o in spoes
File "/home/jovyan/work/triplet_extraction/train/entity_relation_extract.py", line 176, in
) for s, p, o in spoes
KeyError: 11
And how can I fix it?Thanks!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

OK!Thanks!


Field64 causing unexpected behaviour on fibonacci example

Testing the repo, I found that running the fibonacci example will output weird results as soon as u64 "overflows". Naturally it doesn't overflow per se in the code, but it will start causing unexpected behaviour when managing the numbers.
Running the fibonacci sequence only works as expected up until n=93.
n = 92  result :<PHONE_NUMBER>746346429....| expectation:<PHONE_NUMBER>746346429
n = 92  result :<PHONE_NUMBER>5121876738..| expectation:<PHONE_NUMBER>5121876738
n = 94  result :<PHONE_NUMBER>9868223167..| expectation:<PHONE_NUMBER>453638846
at n = 94; It starts to behave in an unexpected way.

Hi Lucas. In fact the example actually only treats the Fibonacci elements modulo p where p = 2^64 - 2^32 + 1 is our base field prime. If you look at the numbers for n=94, note that<PHONE_NUMBER>9868223167 -<PHONE_NUMBER>453638846 == p. If you run the code like so:
$ cargo run --example fibonacci
100th Fibonacci number mod |F| (starting with 0, 1) is:<PHONE_NUMBER>384812976

note that the output says it's only true mod |F|, and indeed |F| = p. The 100th Fibonacci number is<PHONE_NUMBER>79261915075 ==<PHONE_NUMBER>384812976 mod p.
Hope this clarifies.


ValueError: Cannot load file containing pickled data when allow_pickle=False

I got this error while training the model using my own dataset:

F:\DASR-main\dataset\benchmark\Set14\HR
F:\DASR-main\dataset\benchmark\Set14\LR_bicubic
Making model...
Preparing loss function:
1.000 * L1
[Epoch 1]       Learning rate: 1.00e-3
Traceback (most recent call last):
File "main.py", line 19, in
t.train()
File "F:\DASR-main\trainer.py", line 63, in train
for batch, (hr, _, idx_scale) in enumerate(self.loader_train):
File "C:\Users\anaconda3\envs\DASR\lib\site-packages\torch\utils\data\dataloader.py", line 582, in next
return self._process_next_batch(batch)
File "C:\Users\anaconda3\envs\DASR\lib\site-packages\torch\utils\data\dataloader.py", line 608, in _process_next_batch
raise batch.exc_type(batch.exc_msg)
ValueError: Traceback (most recent call last):
File "F:\DASR-main\dataloader.py", line 38, in _ms_loop
samples = collate_fn([dataset[i] for i in batch_indices])
File "F:\DASR-main\dataloader.py", line 38, in
samples = collate_fn([dataset[i] for i in batch_indices])
File "F:\DASR-main\data\multiscalesrdata.py", line 120, in getitem
hr, filename = self._load_file(idx)
File "F:\DASR-main\data\multiscalesrdata.py", line 154, in _load_file
hr = np.load(_f)[0]['image']
File "C:\Users\anaconda3\envs\DASR\lib\site-packages\numpy\lib\npyio.py", line 444, in load
raise ValueError("Cannot load file containing pickled data "
ValueError: Cannot load file containing pickled data when allow_pickle=False

hr = np.load(_f, allow_pickle=True)[0]['image']


jnv: 0.4.0 -> 0.4.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/ynqa/jnv/releases.
meta.description for jnv is: Interactive JSON filter using jq
meta.homepage for jnv is: https://github.com/ynqa/jnv
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.4.1 with grep in /nix/store/sgha9hyv4w5g14lh7gpzqysirpwl64x2-jnv-0.4.1
found 0.4.1 in filename of file in /nix/store/sgha9hyv4w5g14lh7gpzqysirpwl64x2-jnv-0.4.1

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

jnv

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/sgha9hyv4w5g14lh7gpzqysirpwl64x2-jnv-0.4.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A jnv https://github.com/r-ryantm/nixpkgs/archive/c43ce698f8dd014f62a0dbd28dade0e009cf9936.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/c43ce698f8dd014f62a0dbd28dade0e009cf9936#jnv

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/sgha9hyv4w5g14lh7gpzqysirpwl64x2-jnv-0.4.1
ls -la /nix/store/sgha9hyv4w5g14lh7gpzqysirpwl64x2-jnv-0.4.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

jnv

Maintainer pings
cc @nealfennimore @nshalman for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

Quick testing of the binary it behaves oddly. 😞

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/ynqa/jnv/releases.
meta.description for jnv is: Interactive JSON filter using jq
meta.homepage for jnv is: https://github.com/ynqa/jnv
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.4.2 with grep in /nix/store/2q66lci5fv5ph8s4vry09vqlss1adgbx-jnv-0.4.2
found 0.4.2 in filename of file in /nix/store/2q66lci5fv5ph8s4vry09vqlss1adgbx-jnv-0.4.2

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

jnv

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/2q66lci5fv5ph8s4vry09vqlss1adgbx-jnv-0.4.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A jnv https://github.com/r-ryantm/nixpkgs/archive/b1254f1a6c5adbe1efb8c676e9b459b9c48db1e6.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/b1254f1a6c5adbe1efb8c676e9b459b9c48db1e6#jnv

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/2q66lci5fv5ph8s4vry09vqlss1adgbx-jnv-0.4.2
ls -la /nix/store/2q66lci5fv5ph8s4vry09vqlss1adgbx-jnv-0.4.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review

x86_64-linux

:white_check_mark: 1 package built:

jnv

Maintainer pings
cc @nealfennimore @nshalman for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

@NixOS/nixpkgs-merge-bot merge

@wegank this is now ready to merge. Can you take it back out of draft?


Model

Codecov Report

Merging #19 (448fc27) into master (4541145) will decrease coverage by 6.00%.
The diff coverage is 39.34%.

@@            Coverage Diff             @@
##           master      #19      +/-   ##
==========================================
- Coverage   72.67%   66.66%   -6.01%
==========================================
  Files           6        6
  Lines         172      207      +35
==========================================
+ Hits          125      138      +13
- Misses         47       69      +22

Impacted Files
Coverage Δ

service/models.py
47.72% <37.28%> (-6.99%)
:arrow_down:

service/routes.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Add GoToDefinition shortcut

@GKotfis : Thanks for your contribution! The author, @gewarren, has been notified to review your proposed change.