How to change / update external variable of compiled rules at runtime?

Libyara Version: 4.0.5-1 (Debian-testing based distro)
Language: Nim lang with libyara binding. This is a custom binding.
Problem: I want to do filename matching, which is similar to #202 and #269. By now I'm using yr_rules_load to load compiled rules. I haven't tried load text-based rules. My rule:
rule test {
  condition:
    filename == "/tmp/testfile"
}

Compile command: yarac -d filename=foo test.yar sig.db
My scan file function:
proc scanFile(scanner: ptr YR_SCANNER, fileName: string, user_data: ptr CALLBACK_ARGS, file_count, err_count: var int) =
  if not fileExists(fileName):
    return
  else:
    user_data.file_path = fileName
    file_count += 1
    discard yr_rules_define_string_variable(scanner.rules, "filename", fileName)

    # Print value of extenal variables in rules
    # echo "Extern-var: ", scanner.rules.externals_list_head.identifier, " value: ", scanner.rules.externals_list_head.value.s

    let scan_result = yr_scanner_scan_file(scanner, fileName)
    if scan_result != ERROR_SUCCESS:
      err_count += 1

The idea: When i call the scan directory, this function uses walk directory method to get file name. For scan only 1 file, the file name is passed directly to the scanFile function. Then the external variable will be changed by yr_rules_define_string_variable(scanner.rules, "filename", fileName). It should apply to all rules that have filename variable.
Test result: With the simple echo command (which is commented in the code above), it shows result Extern-var: filename value: /tmp/testfile. If I do the scan directory, the variable's value changes. Match: 0.
However, if i compile yara rule with command: yarac -d filename=/tmp/testfile test.yar sig.db, result shows matched:
Detected:
  Rule: test
  Path: /tmp/testfile
Signatures: 1
Dir scanned: 0
File scanned: 1
Error: 0

Expected: Rule matches no matter what value of external variable is during runtime.
So the issue could be:

Rule's variable didn't update during runtime?
I am using wrong function / API which is changing wrong variable / wrong struct

So I create this issue and hope dev team can fix this, or point me the right direction.
Thanks in advance!

I think i found the solution. Likely the scanner.rules values weren't changed by the code. IDK if it is the problem of binding or the yara design but using yr_rules_scan_file instead of yr_scanner_scan_file solved my problem.
proc scanFile(rules: ptr YR_RULES, fileName: string, user_data: ptr CALLBACK_ARGS, file_count, err_count: var int) =
  if not fileExists(fileName):
    return
  else:
    user_data.file_path = fileName
    file_count += 1
    let meta_file_name = splitFile(fileName)

    discard yr_rules_define_string_variable(rules, "file_path", fileName)
    discard yr_rules_define_string_variable(rules, "file_name", meta_file_name.name)
    discard yr_rules_define_string_variable(rules, "file_dir", meta_file_name.dir)
    discard yr_rules_define_string_variable(rules, "file_ext", meta_file_name.ext)

    let scan_result = yr_rules_scan_file(rules, fileName, 0, callback_scan, user_data, 1000000)
    if scan_result != ERROR_SUCCESS:
      err_count += 1

The problem was this line:
yr_rules_define_string_variable(scanner.rules, "filename", fileName)
You can't modify the rules hold by the scanner, the scanner object represented by aYR_SCANNER should be treated as an opaque structure, you shouldn't pass scanner.rules to any other function expecting YR_RULES. All the fields in the YR_RULES structure are for YARA's internal use, unless they are explicitly documented as part of the API. The scanner should be manipulated only with yr_scanner_xxxx functions, and rules should be manipulated with yr_rules_xxxx functions.
If you have a YR_RULES structure you can use yr_rules_define_string_variable and yr_rules_scan_file, if you have a YR_SCANNER you can use yr_scanner_define_string_variable and yr_scanner_scan_file, but you can't mix both worlds.
When you call yr_rules_define_string_variable(scanner.rules, "filename", fileName) you are modifying the variable associated with YR_RULES, but then you call  yr_scanner_scan_file(scanner, fileName) and you are using the variables associated with YR_SCANNER. Each scanner has its own set of variables with their respective values, independently from the variables associated to YR_RULES.

@plusvic thank you for your answer. It answered my all questions ^^. And i didn't notice the yr_scanner_define_string_variable. Well by now my code works perfectly. Thank you a lot :D


Adding note for 'Bek Volume' or '/mnt/azure_bek_disk'

@mayank88mahajan,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

@mayank88mahajan : Thanks for your contribution to the Azure documentation! The author, @deventiwari, has been notified to review your proposed change.

LGTM

Received a request from author to approve this since he had his access blocked.
#sign-off


Feature request: Create planner entries from reminders

Having the planner feels a bit redundant if I'm using the reminders function. It would be much more useful to be able to create planner entries from the reminders.

Now available in 1.2.1: https://youtu.be/J2ymGhFuTTw?si=z7q2sFx8vK0_6qtc&t=278
This will let you create Plan Records from Recurring Reminders and every time a plan record is marked as done it will automatically push back the reminder.

Awesome

Awesome


MudDataGrid: Introduce hover feedback for SelectOnRowClick feature

Description
In the current design of the MudDataGrid component, while SelectOnRowClick provides functionality to select rows on click, it lacks intuitive visual feedback. This makes it difficult for users to understand the clickable nature of the rows, especially in instances where the grid doesn't use selection checkboxes.
To address this, I've introduced a hover effect on rows when SelectOnRowClick is activated. This has been achieved through the CSS builder:
.AddClass("mud-table-hover", Hover || SelectOnRowClick)

To ensure clearer and more purposeful behavior, I've set the default value of SelectOnRowClick to false. This way, developers can consciously activate it, and the hover effect will only be applied when this feature is intentionally enabled.
Furthermore, to enhance the local development experience, I've updated the default launchUrl in launchSettings.json from "components/tooltip" to "docs/overview". This adjustment ensures developers are greeted with an overview of all components upon launching the localhost.
How Has This Been Tested?

Automated Testing: All related unit tests have been executed and passed successfully.
Manual Testing: Inspected the hover feedback on MudDataGrid rows with the SelectOnRowClick feature turned on and confirmed its intuitiveness.

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Visual Demonstrations
To better elucidate the enhancements introduced:
Before the Enhancements:

After the Enhancements:

Checklist:

[x] The PR is submitted to the correct branch (dev).
[x] My code follows the code style of this project.
[x] I've added relevant tests.

To me, this seems like an unnecessary addition, given that it simply duplicates what Hover does, unless I am missing something here.

Closed due to inactivity


Cylinder with top and bottom radius

Normally in three.js you can get this shape by using a cylinderGeometry and passing different top and bottom radius.
How would I achieve a similar shape with ngl?
My goal is to build a shape similar to a funnel, therefore I thought to use a shape similar to the image above along with a cylinder shape.

Unfortunately not, it goes via the code in geometry/primitive and only supports a fixed radius.


ISPN-14238 Memcached server: corrupted response

concurrent operation may send the responses out of order

https://issues.redhat.com/browse/ISPN-14238

[x] backport to 14.0.x after review

backport PR: https://github.com/infinispan/infinispan/pull/10400

Integrated into main, thanks @pruivo !


using port 5432 instead of 5433 in secrets.toml

IMPORTANT: Please do not create a Pull Request without creating an issue first.Any change needs to be discussed before proceeding.
Closing issues

closes #ISSUE_NUMBER_GOES_HERE
...
Description

...
Changes

High level
changes that
you made
...

Good fix. Thank you!


Duplicated chr:pos not allowed in allele_flip_qc (originally sum_stat_merger)

At the moment, the allele_flip_qc  do not allow the presence of duplicated chr:pos, i.e. in 1 position only 1 snps is allowed. While in reality, there are quite frequently duplicate chr:pos snps in the data set.
If this feature is done on purpose, is there a way to incorporate the removal of duplicate chr:pos, so that the module can keep running?
Otherwise, can this issue be fixed?
@changebio

@changebio any thoughts?

as a to provide added info on this issue:
Our current pipeline will generate duplicate chr:pos in the result due to 1 snps will may be included in 2 cis regions, as exemplified below:
chrom | pos | ref | alt | gene | beta | se | pval | variant_id
-- | -- | -- | -- | -- | -- | -- | -- | --

6 | 32953148 | G | A | ENSG00000233627 | 0.628610 | 0.2521800 | 0.0129887 | 6:32953148_G_A
6 | 32953148 | G | A | ENSG00000229776 | 0.628610 | 0.2521800 | 0.0129887 | 6:32953148_G_A
6 | 133162089 | G | A | ENSG00000028839 | 0.130494 | 0.0541755 | 0.0163562 | 6:133162089_G_A
6 | 133162089 | G | A | ENSG00000146411 | 0.177299 | 0.0736067 | 0.0163562 | 6:133162089_G_A

So we will need a way to accommodate the scenario, since this is the norminal associations, I think it is safe enough to remove 1 entry among the duplicated results.

In this case we might have to rename them to using gene + SNP ID as the variant ID. I am wondering if we should provide a field to the YAML file indicating how the SNP ID should be constructed. eg,
ID: variant_id, gene

so we will create the merged ID using variant_id_gene columns?

In this case we might have to rename them to using gene + SNP ID as the variant ID. I am wondering if we should provide a field to the YAML file indicating how the SNP ID should be constructed. eg,
ID: variant_id, gene

so we will create the merged ID using variant_id_gene columns?

But the number are exactly the same though. because what we report is the norminal sumstat instead of a gene level one, which gene does it go with doesnt matter

But the number are exactly the same though.

that simply means gene ENSG00000233627 and ENSG00000229776 have the same expression level. So we should keep both. For the other "duplicate" apparently the results are not the same. in QTL analysis a test refers to a gene-snp pair.
I'm open to other ways to keep the information but deleting them is not correct. Thanks for observing and raising the discussion!

@hsun3163 think of this: what if you "randomly" remove a gene that happens to be a "disease gene" and you kept the result for the non-disease gene? That is why we should not remove the "duplicate" at the face value for this case.

At the moment, the allele_flip_qc do not allow the presence of duplicated chr:pos, i.e. in 1 position only 1 snps is allowed. While in reality, there are quite frequently duplicate chr:pos snps in the data set.
If this feature is done on purpose, is there a way to incorporate the removal of duplicate chr:pos, so that the module can keep running?
Otherwise, can this issue be fixed? @changebio

Sorry for the late reply. if There are different SNPs with the same car:pos, I have written a powerful and complex function to deal with. But if the case is like Hao's example, the same SNPs in QTL with different genes,  the function will consider all the combinations, which may not be a good solution.
Would we separate SNPs first by genes? then merge SNPs in each gene?

@changebio even if we can do that (eg have a good interface figured out), I doubt we can manage the output -- suppose you have 20K genes. Are you going to generate 20K output files as opposed to one file?

if There are different SNPs with the same car:pos, I have written a powerful and complex function to deal with.

Did you document exactly the different scenarios and how you deal with them? If not, please document in the workflow notebook

@changebio even if we can do that (eg have a good interface figured out), I doubt we can manage the output -- suppose you have 20K genes. Are you going to generate 20K output files as opposed to one file?

if There are different SNPs with the same car:pos, I have written a powerful and complex function to deal with.

Did you document exactly the different scenarios and how you deal with them? If not, please document in the workflow notebook

the function has not been used in the pipeline. I think we discussed the specific usage case in the pipeline. In the pipeline, we will only deal with the unique chr:pos. Of course, we can remove the depulicated chr:pos SNPs.

For our fine-mapping purpose 2+ allele SNPs and indels are typically rare and can safely be ignored. As a general purpose data merger pipeline that results in a single summary stat file in VCF format, this has to be dealt with.
The issue with QTL that @hsun3163 has brought up is something I overlooked earlier. At this point perhaps let's deal with all these "duplicates" scenarios. We cannot simply remove them. @changebio could you think over the interface i proposed yesterday and give it a go?

In this case we might have to rename them to using gene + SNP ID as the variant ID. I am wondering if we should provide a field to the YAML file indicating how the SNP ID should be constructed. eg,
ID: variant_id, gene

so we will create the merged ID using variant_id_gene columns?

Do you mean this interface? rename SNPs' ID by variant_id+gene name? @gaow

@changebio yes this is a proposed solution. You are welcome to suggest alternatives and we can decide which ones are most reasonable to implement.

@changebio even if we can do that (eg have a good interface figured out), I doubt we can manage the output -- suppose you have 20K genes. Are you going to generate 20K output files as opposed to one file?

if There are different SNPs with the same car:pos, I have written a powerful and complex function to deal with.

Did you document exactly the different scenarios and how you deal with them? If not, please document in the workflow notebook

We don't need to write the sumstats gene by gene. We can do the sumstats merging gene by gene. So the same SNPs in different gene can by handle properly.

@changebio yes this is a proposed solution. You are welcome to suggest alternatives and we can decide which ones are most reasonable to implement.

I agree. The solution I expressed above is kind of the same. Then we need a gene column in sumstats file.

We don't need to write the sumstats gene by gene. We can do the sumstats merging gene by gene. So the same SNPs in different gene can by handle properly.

I'm talking about writing the output. How is the output going to look like, after you merge data gene by gene? You'll still end up having obviously duplicated variant ID in a VCF file that you have no way to distinguish between those variants, right? If we have to solve the variant ID issue anyways, then it might be a good idea to forget about the notion of "gene" and focus on defining what a 'variant' is; then use that for summary stats merging -- this is what I was suggesting.

Then we need a gene column in sumstats file.

It can be of any column name, and will be used to define vairants. It can even be multiple columns,
ID: variant_id, some_col, another_col

or no extra column,
ID: variant_id

Or, false it to be eg:
ID: chr, pos

if you can now rethink of the problem as variant ID oriented where variant ID are to be defined by us ... Once the variant Id is defined, we'll report duplicate variant ID and keep only one of them -- reporting duplicates is important for analysts to notice and handle them.

"if you can now rethink of the problem as variant ID oriented where variant ID are to be defined by us ... Once the variant Id is defined, we'll report duplicate variant ID and keep only one of them"
This is a good idea. These will be easy to deal with. The first step will be finding overlapped IDs. Then remove duplicated ID and deal with flip sign.

@changebio I believe all we have discussed here have been implemented? The last comment/request is that for the minimal working example, should we use
ID: chr, pos, a0, a1

to explicitly encourage that default is based on these four values, and not just chr and position?

This is fixed


Add MCOPY Operation (EIP-5656)

Add the MCOPY operation targeting cancun.
Testing required adding memory to the text fixture.

PR description
Fixed Issue(s)

@jflo, @garyschulte, can one of you put a "changes requested" review on this so it doesn't accidentally get merged?  After this mornings ACD it's not the slam dunk it once was.


ContentDialog.ShowAsync() throws ArgumentException

In which case do you throw this ex ?

This is because you have not set the XamlRoot of your Dialog. This is a dupe of https://github.com/microsoft/microsoft-ui-xaml/issues/4251


How to pretty-print an egrah

I found the pictures drawn in the egg's paper and homepage are pretty. However, the egraph.dot().to_png() cannot produce such pictures. Could you tell me how to draw the picture in your paper from the dot file? which command line for dot you used?

They were not generated automatically. I drew them by hand using draw.io.
You can see the drawio file here: https://github.com/egraphs-good/egg/tree/main/doc


Regenerate Google.Cloud.Talent.V4Beta1

This PR was generated using Autosynth. :rainbow:
Here's the log from Synthtool:
synthtool > Executing /tmpfs/src/git/autosynth/working_repo/apis/Google.Cloud.Talent.V4Beta1/synth.py.
Cloning into 'gapic-generator'...
Cloning into 'gapic-generator-csharp'...
Submodule 'api-common-protos' (https://github.com/googleapis/api-common-protos.git) registered for path 'api-common-protos'
Submodule 'protobuf' (https://github.com/protocolbuffers/protobuf.git) registered for path 'protobuf'
Cloning into '/tmpfs/src/git/autosynth/working_repo/gapic-generator-csharp/api-common-protos'...
Cloning into '/tmpfs/src/git/autosynth/working_repo/gapic-generator-csharp/protobuf'...
Submodule path 'api-common-protos': checked out '4c0a203e3658ae0e56d47c817c2c5904116c0ae0'
Submodule path 'protobuf': checked out '815ff7e1fb2d417d5aebcbf5fc46e626b18dc834'
Submodule 'third_party/benchmark' (https://github.com/google/benchmark.git) registered for path 'protobuf/third_party/benchmark'
Submodule 'third_party/googletest' (https://github.com/google/googletest.git) registered for path 'protobuf/third_party/googletest'
Cloning into '/tmpfs/src/git/autosynth/working_repo/gapic-generator-csharp/protobuf/third_party/benchmark'...
Cloning into '/tmpfs/src/git/autosynth/working_repo/gapic-generator-csharp/protobuf/third_party/googletest'...
Submodule path 'protobuf/third_party/benchmark': checked out '5b7683f49e1e9223cf9927b24f6fd3d6bd82e3f8'
Submodule path 'protobuf/third_party/googletest': checked out '5ec7f0c4a113e2f18ac2c6cc7df51ad6afc24081'
Cloning into 'googleapis'...
> Task :buildSrc:compileJava NO-SOURCE
> Task :buildSrc:compileGroovy
> Task :buildSrc:processResources NO-SOURCE
> Task :buildSrc:classes
> Task :buildSrc:jar
> Task :buildSrc:assemble
> Task :buildSrc:compileTestJava NO-SOURCE
> Task :buildSrc:compileTestGroovy NO-SOURCE
> Task :buildSrc:processTestResources NO-SOURCE
> Task :buildSrc:testClasses UP-TO-DATE
> Task :buildSrc:test NO-SOURCE
> Task :buildSrc:check UP-TO-DATE
> Task :buildSrc:build
> Task :extractIncludeProto
> Task :extractProto
> Task :generateProto

> Task :compileJava
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

> Task :processResources
> Task :createProperties
> Task :classes
> Task :shadowJar

BUILD SUCCESSFUL in 14s
7 actionable tasks: 7 executed
Generating Google.Cloud.Talent.V4Beta1
Applying post-generation patch for Google.Cloud.Talent.V4Beta1
synthtool > Wrote metadata to synth.metadata.

This PR confuses me, as Cloud Talent hasn't changed in googleapis recently. Will need to look carefully at what's going on.

Aha - got it. I had a local change I'd used to test the impact of a batch.proto import, and I hadn't reverted it. That led to incorrect generation yesterday, which Autosynth has corrected. LGTM, will merge.


Save file format update

Update save file format to be a dictionary based on layer name : type, data

:octocat: cibot: Thank you for posting issue #272. The person in charge will reply soon.

moved to #361


Implement enableVNC property as a capability extension

After the discussion in the https://github.com/aerokube/selenoid/issues/198 thread. I continued to research Selenium capabilities.
The capabilities are described by W3C specification for WebDriver (https://w3c.github.io/webdriver/webdriver-spec.html). The section 6.7 Protocol Extensions introduces extension capabilities that are used to provide configuration or fulfill other vendor-specific needs. The extension capability key format is "vendor:option".
So, instead to use
{
  "enableVNC" : true
}

I offer to use
{
  "selenoid:enableVNC" : true
}

or
{
  "selenoid:options" :
  {
    "enableVNC" : true
  }
}

This change allows to be consistent with the official specification. Also, it allows to avoid errors from webdriver like 'enableVNC was not a the name of a known capability or a valid extension capability', because webdrivers don't try to parse vendor-specific options.

@aandryashin thoughts?

Sounds good.
2017-10-17 17:14 GMT+03:00 Ivan Krutov<EMAIL_ADDRESS>
@aandryashin https://github.com/aandryashin thoughts?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/aerokube/selenoid/issues/242#issuecomment-337245307,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABWNbc-MML2VnxjL9HLR_l7oFWDki0QFks5stLZjgaJpZM4P8JRp
.

@ElijahCapricorn ok, let's just support selenoid:options as altenative to currently implemented capabilities.

Hello, how can I start selenoid with vnc
# docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v ${HOME}:/root -e OVERRIDE_HOME=${HOME} aerokube/cm:latest-release selenoid start --vnc --tmpfs 128

But my test throw exception create container: Error: No such image: selenoid/vnc:chrome_61.0
How can I download chrome images?

@unlimUA this issue is about supporting new capabilities format. However returning to your question - please try to add --force flag to your command:
# docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v ${HOME}:/root -e OVERRIDE_HOME=${HOME} aerokube/cm:latest-release selenoid start --vnc --tmpfs 128 --force

It should download images automatically. I think it does not because you already have ~/.aerokube/selenoid/browsers.json and this is why cm considers that Selenoid is already configured (there should be a log message about it).

@vania-pooh Thanks. You have a right, I have already browser.json

@ElijahCapricorn regarding this error in Python tests:
enableVNC was not a the name of a known capability or a valid extension capability

I did some experiments with Python client versions and can state that this is only reproducing with versions 3.4.x and does not reproduce in newer versions starting from 3.5.0. If that's the only reason to implement protocol extensions support I would postpone this. Any thoughts?

@vania-pooh This problem is still reproduced on Selenium for .NET. We discussed it in https://github.com/aerokube/selenoid/issues/198 thread. As I understand, Selenium on different platforms may generate a little bit different capabilities.


#2423 Hotkeys for atoms don't work on Functional Groups and Salts abbreviations

What was done?
When you select functional group and tap hotkey (o / n), it changes to the appropriate atom.
Firstly we take selected sgroup. If it is contracted, we delete all atoms (except the attachment point) and all bonds. After that, we add atoms from atomProps.
I made logic for sgroups in the atom tool because it is impossible to realize this in the sgroup tool. The reason is that the atom tool makes editor.selection null and selected elements in the sgroup tool will be empty.
UPD:
Discussed with @Nitvex : It will be better to delete logic with sgroup from atoms. His suggestion was to add "sgroups" in "getTool Handler" and invoke the function "handleHotkeyOverItem".
It's hard to implement because "handleHotkeyOverItem" work with one item and in our case we need an array of items.  If I started changing code for supporting array, it started to affect a lot of places.
In this case, I decided to create a new separate function for handling logic with selection sgroup.
UPD 2:

Add one more condition newAction.tool === 'atom' because this function should invoke only for type 'atoms'
Change checking from to isContractedFunctionalGroup because this block should invoke for functionalGroup, Salt and Solvents, unknown superatom (not SRU type)

Am I correct that the required behavior is two cases:

when we select the collapsed group and click on Atom we expect to replace the group with Atom. This behavior works fine for replacing atoms, but not for groups.
by a hotkey trigger for the same scenario (just without clicking on the toolbar).
@AnastasiiaPlyako ?

If so - I think that your first idea of placing this inside the Atom tool handler was correct, it is Atom tool's responsibility to replace any other elements with the selected atom.


HEDA should preserve the standard email for a contact by copying that email into the HEDA Alternate Email field

Today, if a contact exists prior to the installation of HEDA and that contact has an email address, the salesforce standard email address is hidden from view in the HEDA layout. Moreover, if you then enter in one of the HEDA email address fields: University, Work, Alternate, and set one of them as the preferred email, then that email will overwrite the standard email address.
What we should do is when HEDA is installed, we should check for the presence of an email in the standard email field for each existing contact. If the standard email field is populated, then we should copy the email to the Alternate email field and set the Alternate email field as the preferred email. This will preserve the standard email and also make it the preferred email by default. The admin can change their preferred to another email manually if desired.

**lurch: add

Tracking W-017556

Included in beta release 1.30 (Beta 6)

Included in production release rel/1.30


white-space guard

I think the app is ported from
http://todomvc.com/examples/backbone/
please protect from white-space.

This should probably use jstrutils.strip instead, which we need to add to jstrutils.

Yes. I wanted to use strip method. will you add jstrutils.strip?

Merged manually.


Add new rules model-name-pascal-case and field-name-camel-case

Hopefully self-explanatory(!)

Thanks! The naming without -mapping is intentional - the existing *-name-mapping-* rules operate on the "mapped" names for models/fields (via @map()); these rules operate on the names as used from Javascript (i.e. the methods and properties on the generated Prisma client).


Number of snps covered

Inform the user how many AIsnps they have in their uploaded sample.
It will either be n/55 (Kidd) or n/128 (Seldin)

closed by #11

closed by #11


page curl for book-like apps

Can we have a curl page feature in this beautiful package where user can swipe back and front for book-like applications?
Thank you

Sorry, i don't know what you mean🤣.
SharpConstraintLayout is a Layout, like Grid, RelativeLayout. I search some chinese blog about use page curl in native android, such as https://github.com/AnliaLee/BookPage, they main use Canvas to draw. In Maui, maybe you can use Maui.Graphic or Skiasharp to do it, their graphic api like android canvas api, you can search android native code to learn.

This feature would be platform specific because while layout can be represented in a generic way a page curl animation requires texture effect.
Unless I am getting paid I mean it's too much work in general


small fixture

you think you need this new parameter? When it receives a single string or a string array containing a string he already returns only a direct translation.

it's ok


Update typescript to 5.x across all packages

What is this about
This tiny PR updates all packages to use the latest typescript v5.0.3. As mentioned in the commit messages, tsup and jest-mock-extended also had to be updated to support Typescript 5.x.
Note, I had to run yarn format in 3 packages as yarn check revealed some Prettier formatting issues. Seems like some automation wasn't used previously or had been avoided. I didn't bother to git blame who committed but I'd recommend other contributors validate that oddly formatted code files get automatically formatted by Prettier on save or that we add prettier --write as a pre-commit hook.
Issue ticket numbers
#190
How can this be tested?
$ yarn run tsc --version

Known limitations/edge cases
I didn't verify whether this affects the build in any way, only that types are still correct (tsc --noEmit). I'm counting on successful CI being enough validation.

Hey @julienblin, it's not clear to me how codecov is reporting a decrease in coverage when I've altered no implementation and added new new tests to cover error cases that weren't previously covered. Any objections to me merging this anyways and figuring out later what Codecov is considering for its report?

@opiation I went ahead and merged it! Thanks a lot this is a nice QOL improvement.


EKS cluster epiphany configuration

Create EKS cluster configuration to be able to create it using epiphany.
(TODO: in this task we should consider component versioning epic findings)

The purpose of this task is to prepare yaml configuration files to be able to create EKS cluster with Epiphany.
This task strictly depends on the results of research on the component versioning epic https://github.com/epiphany-platform/epiphany/issues/1463 so that Epiphany would be more modular and easier to use and maintain.

As is was decided we are not going to include any managed kubernetes clusters configuration inside epiphany, but we will release EKS as separate module. Work defined in #1636


Support for Reporting API and NEL header

You already support the report-to attribute at CSP. However, this attribute accepts key from Report-To header like shown in this site in examples: developer.mozilla.org.
What do you think about adding the possibility to set the Report-To standalone header as well? It can report more issues with your site, see https://docs.report-uri.com/setup/reporting-api/.
And maybe add NEL Header too? This is not really security header but can help with debugging bad HTTPS certificate etc https://report-uri.com/products/network_error_logging
What do you think about those headers? At least Report-To header could be useful, otherwise, the report-to attribute at CSP is useless.

Hi @arxeiss,
Thanks for suggestion. I will add report-to header.
NEL Header is still in Editor's Draft(https://w3c.github.io/network-error-logging/). I think we should at least wait for it become Working Draft.
W3C Maturity Levels: https://www.w3.org/2019/Process-20190301/#maturity-levels

NEL Header is already supported by Chrome on all platforms including Android, but I understand your opinion about adding it when it becomes working draft.

Hello @arxeiss,
The NEL and Reporting-Endpoints headers are now supported in the version 8.0.0.


Bicycle road/street rendering

This bicycle lane rendering always seems weird to me. Despite the visual representation there also seems an issue with detecting/marking the actual infrastructure itself.
A few examples:
This is an actual bicycle road with proper tags in OSM: https://www.openstreetmap.org/way/10575838
In A/B street it renders like a usual street/highway. Since it's dedicated use is cycling I'd expect it to be rendered like that (by its primary use).
This path here https://www.openstreetmap.org/way/32916454 on the other hand is just a regular path (no street) where bicycles and pedestrians are allowed, but it renders as bicycle lane in A/B street. For shared uses I'd render this as footpath.
A/B street seems to show everything with bike alloance as type "protected bike lane", which doesn't seem right.
Nodes with "oneway:bicycle" tagged render the green bicycle lane in A/B street in both directions. Example: https://www.openstreetmap.org/way/102442321
There are also some minor issues like the rendering of streets in a pedestrian zone (highway=pedestrian), these also render as bicycle lanes. Example: https://www.openstreetmap.org/way/17071901
Generally speaking everything bikeable seems to be rendered as "protected bike lane". This might be ok where the bicycle is the only dedicated use, but for shared uses (pedestrians) this seems wrong.

Brief follow-up comment on this: there are at least 6 different types of cycle infrastructure as shown below.

Source: Tait et al. (2022)
There's a balance to be struck between the benefits of simplicity and the benefits of capturing as much as possible about the urban environment. There's definitely agree with the issue though, I guess A/B Street is not picking up on bicycle:designated, right?
Confirmation that it's rendered as a regular street with the new osm2streets tool, so handy:

I guess what's missing from that list is 'bicycle street', a 7th category?

I'll give more background later, but in short, this is definitely the right time to finally fix this sort of thing. Main thing I could use help with is figuring out a style/color scheme to distinguish all of these different cases. One idea for shared walking/cycling paths is from https://strassenraumkarte.osm-berlin.org/?map=micromap#20/52.50012/13.41423:

The solid yellowish path, with dashed outline, and maybe some bike/ped icons dotted throughout.
Another possible source of inspiration is https://www.cyclosm.org/#map=18/52.92813/-1.48741/cyclosm, which shows a whole bunch of categories.

Besides the style the most confusing things to me are the missing bicycle_road = yes rendering, showing a 2 lane/both direction rendering when it's only oneway/1 lane (this also should take care of oneway roads that are allowed in both direction for cyclists (like https://www.openstreetmap.org/way/1082585252#map=21/53.14092/8.20710&layers=C) and the fact that the OSM Pedestrian Street Feature Type gets rendered as bicycle lane.
In regards to the style the OSM Strassenraumkarte might be a good example, but it's work-in-progress afaik, so probably not as much complete as cyclosm or other cycling specific map tiles/styles in OSM.
In Germany we use red, blue and green for different types of cycling infrastructure, but this might be even different between states. Just using one color (the green) seems very "prominent" to me and red woud be a better macht, but I can't tell what would work internationally if you prefer to stick to just one color.

FYI, the Straßenraumkarte (which is "finished" in the sense of a stable bug free release) has a different goal, which is to build a "naturalistic" representation of the ground truth as a 2D map. Which means, it uses color when there is color asphalt; not to represent osm tags/categories. The foot-path are a deviation from that in order to get give them some kind of visibility.
This is a nice – and tricky – example for this topic: Weigandufer, Neukölln, Berlin

https://strassenraumkarte.osm-berlin.org/?map=micromap#20/52.48480/13.44429
The only indicator of the road class are the signs, but those are there because they are actually on the ground https://www.mapillary.com/app/?pKey=1287704951654498&focus=photo and mapped https://www.openstreetmap.org/node/9278151700
https://www.cyclosm.org/#map=19/52.48468/13.44452/cyclosm is interesting, because it shows the top part as a bike road, but not the bottom part. Both have the bicycle_road=yes tag.

About the colors: IMO a good starting point is what cyclosm did and take the default bike lane color, paint the whole road and dim the color a bit. When I saw it first I thought it a bit much, but it does communicate the type of infrastructure quite well.

Background
I just wanted to back up first and explain why all of these cases show up strangely today. Early on in the project, the priority was making the traffic simulation work in different situations, but in the areas I was focused on, importing separately mapped footways wasn't an option (due to big inconsistencies in data quality and troubles logically associating the sidewalk with the "main road" for the simulator). It was more important at the time to make sure the cycle network was imported somehow. So for shared-use cases like https://www.openstreetmap.org/way/24328181 and many others, the interpretation was this:

In reality, this is one "lane" that's bidirectional and shared by cyclists and pedestrians. But there's not yet a way of simulating bidirectional movement on one lane or making cyclists pass around pedestrians (see #139 for not-yet-attempted ideas). So in the meantime, I model this as 4 lanes -- 2 for pedestrians, 2 for cyclists, 1 in each direction.
What's changed

The focus of the project hasn't been on traffic simulation for a while, so it's more important to now just get the map model to be more accurate. The simulation work can catch up later.
The map model and rendering is now a bit decoupled from the traffic simulation -- you can use all of it in https://github.com/a-b-street/osm2streets, for example.

What we need to figure out
It feels like 3 things:

What're all the different types of cycling and walking path that happen in reality? The image above from Caroline Tait's paper is focused on separation from cyclists and the main road, but this issue is more about shared spaces: living streets and walking/cycling areas without explicit segregation.

How do we map OSM tags into these categories?

How do we render these?

Rendering choices

a different goal, which is to build a "naturalistic" representation of the ground truth as a 2D map. Which means, it uses color when there is color asphalt; not to represent osm tags/categories.

In Germany we use red, blue and green for different types of cycling infrastructure, but this might be even different between states. Just using one color (the green) seems very "prominent" to me and red woud be a better macht, but I can't tell what would work internationally if you prefer to stick to just one color.

There are some decisions to make here. The current choice of green bike lanes and red bus lanes:

Are just rough matches to what's mostly used in Seattle, where I started this project.
I would very much like to change the styling based on locale. But it gets complicated, as mentioned in Germany. In London some cycleways are blue but others are just regular asphalt colored, though fully segregated.
In some cases, the "on-the-ground" color scheme is desirable. In others, a schematic to call out lane types would be better. What if we punt on this issue and just start supporting both, ie, by changing this code in the new JS rendering layer? The lane properties could also start exporting the on-the-ground actual color, and a later part of the code can decide what to show.
Separators
I'll mention that different types of segregation are partly supported now:

The goal is to use all the values in https://wiki.openstreetmap.org/wiki/Proposed_features/separation#Typical_separation_values and have a good 2D overhead view for these


Stopping criteria

What is a good stopping criteria for blackbox optimization?

Right now, I just let it run it upto max_iter

We might add something like an improvement threshold between consecutive iterations, but this may be tricky to get correctly, since BO trades off exploitation for exploitation, and therefore it is far from guaranteed that the best optimum found so far will improve from one iteration to another.

Most implementations of CMA-ES (another black-box optimizer) use the following stopping criteria (e.g. this one):

max_iter / maximum number of function evaluations
minimum fitness value (f(x) < threshold)
differences of function values (does not mean that we have an improvement, exploration is small near convergence, |f(xt) - f(xt-1)| < threshold)
difference of N best function values
difference of evaluated parameter vectors (||xt - xt-1|| < threshold)

Came up in #324. When working on this we should also investigate why there are so many warnings about a point already being evaluated in the unittests. My guess would be that with a convergence criteria like proposed here we would stop instead of continuing to evaluate the objective.

I will investigate this a bit and open a PR.

#336 created the basics and implemented "difference of evaluated parameter vectors (||xt - xt-1|| < threshold)" from https://github.com/scikit-optimize/scikit-optimize/issues/6#issuecomment-220965349


Integrity unit tests framework

Background
In looking to introduce unit/integration unit testing into Orion Engine for the Bosch integrity work, I've stumbled up on a few issues in Orion and friends. Firstly there aren't any find_packge scripts for orion-engine, orion_proto, sip, and albatros in this cmake repository, that isn't a problem since each repository has a custom script to include them in the cmake/ directory rather than the cmake/common. The problem is that each of these scripts have not included the necessary option(${PROJECT_NAME}_ENABLE_${FEATURE} "" false) statements which is needed to control the inclusion of submodule test executable.
This causes issues when running do-all-tests in orion-engine as unit tests from both sip (uses swift_add_tests) and starling (ex: the inclusion of test-starling-output-analyzer isn't controlled by starling_BUILD_TESTS here) are executed. So to fix this, this PR does two things:

introduce the find_package scripts for the missing Swift repositories and marks all doc/tests/example as false
fixes up the swift_add_test and swift_add_test_runner functions so that even if the targets aren't protected by a ${PROJECT}_BUILD_TESTS variable (and variants), it won't be included into the do-all-tests target.

Testing
Ran the following script in Orion and than tried to compile the submodules (orion-engine, sip, orion_proto) after I removed the local find_package scripts.
#!/usr/bin/bash

REPOSITORIES=(
    cmake/common/
    third_party/orion_proto/cmake/common/
    third_party/orion_proto/third_party/gnss-converters/c/cmake/common/
    third_party/orion_proto/third_party/gnss-converters/c/third_party/libsbp/c/cmake/common/
    third_party/orion_proto/third_party/gnss-converters/c/third_party/libswiftnav/cmake/common/
    third_party/orion_proto/third_party/sip/cmake/common/
    third_party/orion_proto/third_party/sip/third_party/libsbp/c/cmake/common/
    third_party/orion_proto/third_party/sip/third_party/libswiftnav/cmake/common/
    third_party/orion-engine/cmake/common/
    third_party/orion-engine/third_party/orion_proto/cmake/common
    third_party/orion-engine/third_party/orion_proto/third_party/gnss-converters/c/cmake/common/
    third_party/orion-engine/third_party/orion_proto/third_party/gnss-converters/c/third_party/libsbp/c/cmake/common/
    third_party/orion-engine/third_party/orion_proto/third_party/gnss-converters/c/third_party/libswiftnav/cmake/common/
    third_party/orion-engine/third_party/orion_proto/third_party/sip/cmake/common/
    third_party/orion-engine/third_party/orion_proto/third_party/sip/third_party/libsbp/c/cmake/common/
    third_party/orion-engine/third_party/orion_proto/third_party/sip/third_party/libswiftnav/cmake/common/
    third_party/orion-engine/third_party/starling/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/libpal/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/libsbp/c/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/libswiftnav/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/swiftlets/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/swiftlets/third_party/gnss-converters/c/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/swiftlets/third_party/gnss-converters/c/third_party/libsbp/c/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/swiftlets/third_party/gnss-converters/c/third_party/libswiftnav/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/swiftlets/third_party/libpal/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/swiftlets/third_party/libsbp/c/cmake/common/
    third_party/orion-engine/third_party/starling/third_party/swiftlets/third_party/libswiftnav/cmake/common/
)

for repository in ${REPOSITORIES[@]}
do
  git -C ${repository} fetch
done

for repository in ${REPOSITORIES[@]}
do
  git -C ${repository} checkout origin/rodrigor/integrity-unit-tests-framework
done

Also to verify that this won't have any impact on Starling, I created this PR.

@isaactorz

lgtm but one question.
What's the purpose for having both an ENABLE_TESTS and a BUILD_TESTS option?

From what I recall ${PROJECT_NAME}_ENABLE_TESTS is set by either the find_package or the user through cmake command line (ie -Dswiftlets_ENABLE_TESTS=true). The ${PROJECT_NAME}_BUILD_TESTS is setup by the SwiftCmakeOptions.cmake based on the value of ${PROJECT_NAME}_ENABLE_TESTS, which is normally a one to one assignment but we can add further logic to it (don't know if we do anything like that right now). We could for instance ask the system to build all tests across all organization and override the ${PROJECT_NAME}_ENABLE_TESTS value sent in find_package, this might be useful if we wanted to compile all tests across our codebase and get a real sense of how well our code is covered across the board. The ${PROJECT_NAME}_BUILD_TESTS is used by the build system to determine whether to include a test folder for example, we shouldn't be using ${PROJECT_NAME}_ENABLE_TESTS in our CMakeLists.txt file.


Add few question regarding binary search

I want to add few famous questions regarding binary search:

Agressive Cows
Painter partition problem
Search in rotated sorted array
Book allocation problem
Find pivoted array

Hi there! I would like to contribute to this issue as I have worked on this problems and interested to solve it. Please assign it to me, so that I can start working on it.


Check the model of an uploaded package

Compare the package model of an uploaded package against the model in the registry to ensure no malicious code was added. Also for module naming conventions.
Details:

The fpm builds a local package into a source tarball, and exports the model to JSON. It packages the JSON file with the source tarball.
fpm uploads the source tarball with the JSON to registry
The registry backend checks the JSON model against a model generated in the backend from fpm.toml from the uploaded source tarball

This check is not for security, but rather for consistency of the uploaded packages, it checks:

checks for module naming conventions
checking that fpm model can be built (so fpm.toml and all source files are consistent)

A separate feature to consider for a separate milestone is:

Actually doing fpm build, that is, building the package using a Fortran compiler. This is effectively a CI. That's a huge milestone on its own.

Let's not run fpm at all, in our first deliverable of the registry.
Instead, let's add several checks in the Python backend, implemented in Python itself:

Unpack the tarball
Load fpm.toml as TOML into Python
Check that required sections are there
Check that all dependencies exist in registry, with the correct version
Check generated JSON has correct hashes with the Fortran files in the tarball (and that they all exist)
Check the module naming convention


This should fix the error in master build

When tests are run under cobertura, the getPluginCompileDir() gets the wrong path, as it seems to be 'instrumented_classes' instead of 'classes'. These instrumented classes have a reference to cobertura, which is not in the classpath, when the applied gradle script is run.
I changed it with a simpler algorithm: as tests seem to run in a directory build/test/<test class name>/<test method name>, I just walked up the path to find 'classes/main'.
After that, tests were still failing, until I upgraded `nebula-test' to version 3.1.0, which in turn required me to [upgrade gradle version] (https://github.com/nebula-plugins/nebula-test#gradle-compatibility-tested).

Thank you for trying to fix the build. Yesterday was busier than anticipated, and I was not able to have a look.
I have chosen the gradle version on purpose. Gradle 2.7 is rather new, not everybody is using this version yet. The plugin should be build using an older version of Gradle (although I find this is a pity) as long as gradle does not support building plugins against an older baseline using a newer version.
I try to find time this evening (CEST).

Please have a look at the head of the develop branch. I have done some refactorings.

The tests don't use the -I command line switch to gradle any more
but instead the build.gradle or the release.gradle do now contain a correct buildscript block.

But the tests still don't work. The standard-integration spec does work after my refactorings. But the AuxSpec fails in line 47 of gradle-git's BaseReleasePlugin
		project.plugins.withId('org.ajoberstar.grgit') {

You might run the tests and have a look at the files in $buildDir/test/de.gliderpilot.gradle.semanticrelease.integration.SemanticReleaseIntegrationAuxScriptSpec/complete-lifecycle/
When you have tested it with your project, have you done something differently in your build.gradle?

I got the develop branch: when I execute gradlew in the $buildDir/test directory I get the same error:
Y:\build\test\de.gliderpilot.gradle.semanticrelease.integration.SemanticReleaseIntegrationAuxScriptSpec\initial-version-is-1-0-0-after-type-commit>gradlew --version & gradlew release

------------------------------------------------------------
Gradle 2.0
------------------------------------------------------------

Build time:   2014-07-01 07:45:34 UTC
Build number: none
Revision:     b6ead6fa452dfdadec484059191eb641d817226c

Groovy:       2.3.3
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM:          1.7.0_60 (Oracle Corporation 24.60-b09)
OS:           Windows 7 6.1 x86

FAILURE: Build failed with an exception.

* Where:
Script 'Y:\build\test\de.gliderpilot.gradle.semanticrelease.integration.SemanticReleaseIntegrationAuxScriptSpec\initial-version-is-1-0-0-after-type-commit\release.gradle' line: 69

* What went wrong:
A problem occurred evaluating script.
> Plugin with id 'org.ajoberstar.grgit' not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

But if I upgrade the Gradle version to at least 2.1 in wrapper.properties, the build runs fine:
Y:\build\test\de.gliderpilot.gradle.semanticrelease.integration.SemanticReleaseIntegrationAuxScriptSpec\initial-version-is-1-0-0-after-type-commit>gradlew --version & gradlew release

------------------------------------------------------------
Gradle 2.1
------------------------------------------------------------

Build time:   2014-09-08 10:40:39 UTC
Build number: none
Revision:     e6cf70745ac11fa943e19294d19a2c527a669a53

Groovy:       2.3.6
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM:          1.7.0_60 (Oracle Corporation 24.60-b09)
OS:           Windows 7 6.1 x86

Inferred version: 1.0.0-SNAPSHOT
1.0.0-SNAPSHOT
:prepare
:release
Pushing changes in [refs/heads/master] to origin

BUILD SUCCESSFUL

I see that gradle-git is compiled with 2.1.
In the real project where I am using the modified semantic release plugin I am on Gradle 2.7.

Thank you for that Info. I hessitate to increase the gradle version, because then I would have to increase the major version. I think I will just change the AUX test to use gradle 2.1. I think the base class has an option for that. Later, upon releasing 2.0, I will change to gradle 2.1 globally.
-------- Ursprüngliche Nachricht --------
Von: rzabini<EMAIL_ADDRESS>Datum: 2015.10.14  14:39  (GMT+01:00)
An: tschulte/gradle-semantic-release-plugin<EMAIL_ADDRESS>Cc: Tobias Schulte<EMAIL_ADDRESS>Betreff: Re: [gradle-semantic-release-plugin] This should fix the error in
master build (#10)
I got the develop branch: when I execute gradlew in the $buildDir/test directory I get the same error:
Y:\build\test\de.gliderpilot.gradle.semanticrelease.integration.SemanticReleaseIntegrationAuxScriptSpec\initial-version-is-1-0-0-after-type-commit>gradlew --version & gradlew release

Gradle 2.0
Build time:   2014-07-01 07:45:34 UTC
Build number: none
Revision:     b6ead6fa452dfdadec484059191eb641d817226c
Groovy:       2.3.3
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM:          1.7.0_60 (Oracle Corporation 24.60-b09)
OS:           Windows 7 6.1 x86
FAILURE: Build failed with an exception.

Where:
Script 'Y:\build\test\de.gliderpilot.gradle.semanticrelease.integration.SemanticReleaseIntegrationAuxScriptSpec\initial-version-is-1-0-0-after-type-commit\release.gradle' line: 69

What went wrong:
A problem occurred evaluating script.

Plugin with id 'org.ajoberstar.grgit' not found.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED
But if I upgrade the Gradle version to at least 2.1 in wrapper.properties, the build runs fine:
Y:\build\test\de.gliderpilot.gradle.semanticrelease.integration.SemanticReleaseIntegrationAuxScriptSpec\initial-version-is-1-0-0-after-type-commit>gradlew --version & gradlew release

Gradle 2.1
Build time:   2014-09-08 10:40:39 UTC
Build number: none
Revision:     e6cf70745ac11fa943e19294d19a2c527a669a53
Groovy:       2.3.6
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM:          1.7.0_60 (Oracle Corporation 24.60-b09)
OS:           Windows 7 6.1 x86
Inferred version: 1.0.0-SNAPSHOT
1.0.0-SNAPSHOT
:prepare
:release
Pushing changes in [refs/heads/master] to origin
BUILD SUCCESSFUL
I see that gradle-git is compiled with 2.1.
In the real project where I am using the modified semantic release plugin I am on Gradle 2.7.
—
Reply to this email directly or view it on GitHub.

Hi,
I looked at the changes you made in the develop branch, and I was able to run the tests successfully on my clone, by just removing the instrumented_classes from the classpath:
diff --git a/src/test/groovy/de/gliderpilot/gradle/semanticrelease/integration/SemanticReleasePluginIntegrationSpec.groovy b/src/test/groovy/de/gliderpilot/gradle/semanticrelease/integration/SemanticReleasePluginIntegrationSpec.groovy
index 2e91be5..559e291 100644
--- a/src/test/groovy/de/gliderpilot/gradle/semanticrelease/integration/SemanticReleasePluginIntegrationSpec.groovy
+++ b/src/test/groovy/de/gliderpilot/gradle/semanticrelease/integration/SemanticReleasePluginIntegrationSpec.groovy
@@ -54,6 +54,9 @@ class SemanticReleasePluginIntegrationSpec extends IntegrationSpec {
         def lines = file('.gradle-test-kit/init.gradle').readLines()
         lines.remove(0)
         lines.remove(lines.size() - 1)
+        lines.removeAll {String line -> line.contains('instrumented')}
         lines.join(System.getProperty("line.separator")).stripIndent()
     }

Then I had also to *@*Ignore the SemanticReleaseChangeLogServiceSpec tests, as they are bound to your github username, so they would fail on my repository:
 48 differences (93% similarity)
\n# [2.0.0](https://github.com/(rzabini-)/gradle-semantic-release-plugin/compare/v1.0.0...v2.0.0)
\n# [2.0.0](https://github.com/(tschulte)/gradle-semantic-release-plugin/compare/v1.0.0...v2.0.0)

After that, the travis build is fine.
On my Windows machine the build still fails, but I think it is related to nebula-test #57, and I may be able to solve it by adding the build/classes directory in the classpath.

By removing the instrumented lines, you are effectively disabling cobertura. The tests run without cobertura, I did knew this. But I don't want to disable coverage. I spend yesterday evening trying to get it to work. The problem seems to be already at instrumentation time I get ClassNotFoundExceptions.
Currently I am working on it.

Finally... switching to jacoco did the trick. Just had to enable it for the integration tests.


raster2pgsql call for loading the discharge raster to postgres not available with postgresql15-postgis-3 install on linux

For original setup had loaded postgresql15-postgis-3 with
sudo apt install postgresql postgresql-contrib -y
sudo apt-get -qq install -y postgresql-15-postgis-3

on ubuntu it seems we need to install postgis seperately to get access to the raster2pgsql . Tried to tuck postgis into the conda env but that didn't bear fruit.  Maybe I did something wrong in the initial machine setup but this seemed to fix it....
sudo apt-get update -y
sudo apt install postgis -y


Adds documentation for CSR supporting all issuers, and the CTL command

Signed-off-by: joshvanl<EMAIL_ADDRESS>This PR documents the support for all CSR signer types, including their used annotations.
Also documents the cert-manager x create csr command.

This PR has been updated to remove the experimental.cert-manager.io/ca annotation, which has been removed from cert-manager.
NONE

/retest

/cherry-pick-approve

Thanks @irbekrm, can you take another look?

Thanks for adding the changes, I've read through the doc again and it looks good
/lgtm

/hold cancel


[#145] Add ability to use Proxy to connect to Chart Repo

Hello; I edited this lightly and merged it just now to address #145.  Thanks for your contribution!


Custom error handling

I would like to handle the failed login with status 400. But when the secondFactor fails, no error or message are given. My current implementation always grants the login.
strategy:L78 fail() does not give an error message, is this intended?
// my current code, which does not send 400 in case of error
function(req, res, next) {
    passport.authenticate('totp', {failWithError: true}, function(err, user, info) {
      console.log('totp login', err, user.name, info);
      // prints: totp login null undefined undefined
      if (err) {
        res.send(400, {error:err, info: info});
        return;
      }
      auth.grantSecondFactor()(req, res);
    })(req, res, next);
  }

Found a solution:
app.post('/login-second-factor',
  passport.authenticate('jwt-bearer', {session: false}),
  auth.loginStaticFactor(), // this is a bypass with for a static passcode
  passport.authenticate('totp', {failureRedirect: '/login-failed'}),
  auth.grantSecondFactor()
);
app.get('/login-failed', function(req, res) {
  res.send(400, 'Login failed');
});

I would like to get an answer to my question and the documentation should be improved before this can be closed.

First, not sure exactly why you need 400, which is bad request, 401 would make more sense (unauthorised).
This behaviour comes from passport.js not passport-totp, however there is a short sequence of behaviour, it looks for 'failureFlash' and if it exists, sets an express-flash message, however there is an issue with passport-totp that it has no default message, so unless you set one it will not display a message, i.e. if you put:
failureFlash: true

It does nothing, however:
failureFlash: "Incorrect code"

Would work, there is a pull request for this, but plainly this module has been abandoned as there are issues and pull requests from years ago unanswered.
Next passport.js will check for a failureRedirect and apply that also, as you've discovered.
Finally if a redirect wasn't applied it will send a 401 error, which as above seems logical.
I'm not sure why you want to use 400, but given that this isn't normal use, the only answer is to modify passport.js, it's unlikely anyone will ever add a feature to change the error code.

I have the same issue, I'm trying to use the custom callback of passport.authenticate function, as shown below
`const verifyOTPMiddleware = (req, res, next) => {
const callback = (error) => {
console.log('callback error', error)
    if (error) {
        return next(error)
    }

    next()
}

passport.authenticate('totp', callback)(req, res, next)

}`
But this does not work (I get a 200 response, when I should have a 401, and the console log returns null as error)
however if I'm using it directly in my route, doing the following  app.post('/top', passport.authenticate('totp'), routeHandler), I do get the 401 error I was expecting.
If I use the option failureRedirect in my verifyOTPMiddleware  passport.authenticate('totp', {failureRedirect: '/login-failed'}) , the redirection is attempted as expected.
So it seems for some reason the error does not reach the custom callback of passport.authenticate


 Not sure which versions exactly cause this. I sort of recall it working for a bit with cli 6 and then
Observed behavior
Ng serve does not quit
Desired behavior
Ng serve quits
Mention any other details that might be useful (optional)
I'm using Git Bash. I can quit with "Ctrl+: mercilessly kill the process that is currently in the foreground" but this is suboptimal.
Interestingly, powershell works.

What version of git bash are you on? I'm on git bash too and this seems to work for me.

v2.16.2

somehow it's working for me now actually, no idea why. But I'll close for now


java.lang.NoClassDefFoundError: com.evernote.android.job.util.JobCat

I'm having the same issue related to this one:   #123
But I cannot find a resolution.
This only happens on Android 4.4.  5.x and greater are fine (job scheduler?).
Also, the device being tested does not have Play Services installed.  I assume this should fall back without GCM available, but it just crashes insensitively with the error.
In the .gradle/caches directory, /net.vrallev.android exists:
HOME/.gradle/caches/modules-2/files-2.1/net.vrallev.android
The evernote/android-job/demo does run on the 4.4 device, but I couldn't see where the differences in gradle files, etc. are that are causing the problem.
gradle:
compile 'com.google.android.gms:play-services-gcm:10.2.6'
compile 'com.evernote:android-job:1.1.10'
App code (crashes here in the Application module.  Loads fine on 5.x and above):
@Override
public void onCreate() {
super.onCreate();
JobManager.create(this).addJobCreator(new JobCreator());
}
Can you help?  Does this actually require Play Services (GCM) on 4.x?  That would be too bad.

Are you using Proguard or any code stripping tool? Does this happen with the debug and release build?
No, the library doesn't require the Play Services, they're optional.

I disabled Proguard and the same issue continues:
Here is the original snippet from the build.gradle file:
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
Yes, happens in release also.
As mentioned, the net.vrallev.android file exists in the gradle cache, but I'm wondering if it isn't being read properly in 4.x for some reason?
Log snippet:
W/dalvikvm(26009): Unable to resolve superclass of Lcom/evernote/android/job/util/JobCat; (5240)
W/dalvikvm(26009): Link of class 'Lcom/evernote/android/job/util/JobCat;' failed
E/dalvikvm(26009): Could not find class 'com.evernote.android.job.util.JobCat', referenced from method com.evernote.android.job.JobManager.
W/dalvikvm(26009): VFY: unable to resolve new-instance 3589 (Lcom/evernote/android/job/util/JobCat;) in Lcom/evernote/android/job/JobManager;
D/dalvikvm(26009): VFY: replacing opcode 0x22 at 0x0000
W/dalvikvm(26009): VFY: unable to find class referenced in signature (Lnet/vrallev/android/cat/CatLog;)
I/dalvikvm(26009): Could not find method net.vrallev.android.cat.CatLog.i, referenced from method com.evernote.android.job.JobManager.cancelInner
W/dalvikvm(26009): VFY: unable to resolve virtual method 37778: Lnet/vrallev/android/cat/CatLog;.i (Ljava/lang/String;[Ljava/lang/Object;)V
D/dalvikvm(26009): VFY: replacing opcode 0x6e at 0x0018
I/dalvikvm(26009): Could not find method net.vrallev.android.cat.CatLog.i, referenced from method com.evernote.android.job.JobManager.cancelInner
W/dalvikvm(26009): VFY: unable to resolve virtual method 37778: Lnet/vrallev/android/cat/CatLog;.i (Ljava/lang/String;[Ljava/lang/Object;)V
D/dalvikvm(26009): VFY: replacing opcode 0x6e at 0x000c
I/dalvikvm(26009): Could not find method net.vrallev.android.cat.CatLog.w, referenced from method com.evernote.android.job.JobManager.create
W/dalvikvm(26009): VFY: unable to resolve virtual method 37779: Lnet/vrallev/android/cat/CatLog;.w (Ljava/lang/String;)V
D/dalvikvm(26009): VFY: replacing opcode 0x6e at 0x002b
I/dalvikvm(26009): Could not find method net.vrallev.android.cat.CatLog.w, referenced from method com.evernote.android.job.JobManager.create
W/dalvikvm(26009): VFY: unable to resolve virtual method 37779: Lnet/vrallev/android/cat/CatLog;.w (Ljava/lang/String;)V
D/dalvikvm(26009): VFY: replacing opcode 0x6e at 0x0038
I/dalvikvm(26009): Could not find method net.vrallev.android.cat.CatLog.w, referenced from method com.evernote.android.job.JobManager.forceApi
W/dalvikvm(26009): VFY: unable to resolve virtual method 37780: Lnet/vrallev/android/cat/CatLog;.w (Ljava/lang/String;[Ljava/lang/Object;)V
D/dalvikvm(26009): VFY: replacing opcode 0x6e at 0x0013
I/dalvikvm(26009): Could not find method net.vrallev.android.cat.CatLog.w, referenced from method com.evernote.android.job.JobManager.schedule
W/dalvikvm(26009): VFY: unable to resolve virtual method 37779: Lnet/vrallev/android/cat/CatLog;.w (Ljava/lang/String;)V
D/dalvikvm(26009): VFY: replacing opcode 0x6e at 0x000c
I/dalvikvm(26009): Could not find method net.vrallev.android.cat.CatLog.w, referenced from method com.evernote.android.job.JobManager.schedule
W/dalvikvm(26009): VFY: unable to resolve virtual method 37779: Lnet/vrallev/android/cat/CatLog;.w (Ljava/lang/String;)V
D/dalvikvm(26009): VFY: replacing opcode 0x6e at 0x005d
W/dalvikvm(26009): Unable to resolve superclass of Lcom/evernote/android/job/util/JobCat; (5240)
W/dalvikvm(26009): Link of class 'Lcom/evernote/android/job/util/JobCat;' failed
D/dalvikvm(26009): DexOpt: unable to opt direct call 0x6fb3 at 0x04 in Lcom/evernote/android/job/JobManager;.
W/dalvikvm(26009): Exception Ljava/lang/NoClassDefFoundError; thrown while initializing Lcom/evernote/android/job/JobManager;
D/AndroidRuntime(26009): Shutting down VM
W/dalvikvm(26009): threadid=1: thread exiting with uncaught exception (group=0x417e4b90)
E/AndroidRuntime(26009): FATAL EXCEPTION: main
E/AndroidRuntime(26009): Process: app, PID: 26009
E/AndroidRuntime(26009): java.lang.NoClassDefFoundError: com.evernote.android.job.util.JobCat
E/AndroidRuntime(26009): 	at com.evernote.android.job.JobManager.(JobManager.java:83)

There's something else wrong. Do you disable transitive dependencies in Gradle? What happens if you add this dependency  compile 'net.vrallev.android:cat:1.0.5'? Can you provide a sample?

No, not disabling transitive dependencies.
I had tried adding that dependency before, seeing it in the demo, with no change.  Just tried it again with no luck.
I'm going to probably have to look thru everything between the demo and this app to see where the problem lies I guess.  I have several gradle compile statements, so maybe something is conflicting there.
Otherwise, I guess I'll have to find another way to manage jobs (go back to the old way, yuck!).

I think I may have it (doh!).
I was loading job before multidex in the Application class:
JobManager.create(this).addJobCreator(new JobCreator());
android.support.multidex.MultiDex.install(this);

Ok, so here's another problem.
On 4.4, I get this (even though it is 4.4 and not 6.0):
Could not find method android.app.AlarmManager.setExactAndAllowWhileIdle, referenced from method com.evernote.android.job.v14.JobProxy14.plantOneOffExact
Can I just ignore it?

I'll just ignore it.  Seems benign.

Yes, you can ignore that.


Add spec for UsersController#index

related #1024
Description

This just adds a simple spec to cover UsersController#index
Type of change

Test Addition

How Has This Been Tested?
bundle exec rake
Screenshots
before

after

The CI failure seems unrelated to anything I did. Perhaps it's aberrant? Other than pushing an empty commit I don't think I have a way to re-run the specs.

Max, you might be able to re-start the build from the diaper pull requests page on travis once you're signed in (via Github). If you can't, I apologize in advance (I was a rubyforgood member from previous years attended so that might explain why I can see it)
Screenshot of where you'd find the "restart build" button (it's almost invisible)

I agree, looked just like a flaky failure, because the build passed after I restarted it

@jaydorsey Thanks for stepping in :)
Looks good, thank you!

Thanks @jaydorsey . I was away for a week! 🍻


cell_data: cell_type->name to name->cell_type?

I've been working with cell data a little bit recently and got somewhat annoyed by the fact that, right now, meshio organizes the data in a nested dict as, e.g.,
cell_data["triangle"]["density"] = ...

It gets a little tedious then to check which cell data items are present in the mesh since you have to go through all cell types, fetch the keys, compare them to the keys in the other cell types etc.
Of course, this organization makes it easy for meshes to define a cell data item on triangles and not quads, but really I have never seen this.
This is why I'm thinking about swapping the dict order to
cell_data["density"]["triangle"] = ...

Of course that'd need bumping to 4.* (which I'm not terribly opposed against though).
What do y'all think about that? I want to hear @tianyikillua, @gdmcbain, @clbarnes, @MuellerSeb, @keurfonluu.

By doing so, the list of available cell fields would be
cell_data_list = list(cell_data.keys())

which would be the same for point data
point_data_list = list(point_data.keys())

I always say yes to consistency.

I like this suggestion. It's a much more logical order for the mesh data.

I didn't have an opinion but the way that @tianyikillua puts it, that cell_data and point_data will have the same keys, is good.
In the same way that @nschloe has

been working with cell data a little bit recently

I'm thinking that since I discovered the new cell_sets, I'll be using them extensively. They should get the same swap, I suppose; there's less of an issue with breaking existing code there.

It makes more sense to me too.

I haven't interacted with cell data at all, but agree that consistency is good - I defer to you.
The only thing I'd add is wondering whether there's scope for replacing any level of the nested dicts with e.g. a dataclass, if you know the keys ahead of time. Of course we want to be able to represent arbitrary data for any given feature, but if it could be made any more introspectable, I'd be in favour of that. That would also help set the update apart from the previous implementation, rather than just switching the order of two string keys, which is hard to demonstrate.

I like dataclasses a lot and use them (and frozen dataclasses) whenever possible, but here (besides not yet being able to count on Python 3.7 for a while) I don't think we do know the keys in advance, not the fields (very application-specific) but also not the cell-types, assuming we don't want to insist on having all of the types (do we have dozens) with most being empty and fix that list of types (more might be desired in future).

On incrementing the meshio major version, another big breaking change on the horizon I think is reimplementing  MSH4.1. The initial version was hasty and basically coerced it back to MSH2. I suspect the fix is to use cell_sets (instead of cell_data[cell_type]["gmsh:physical"]).  I take this to correspond to the main design intent behind Gmsh's update; MSH4.1 implements tagged subsets of elements #290. I think that handling this in meshio is required to fix #524 and #614.
That will break a lot of user code so might need a new major version. Should the present proposal, which meets with general approval but doesn't seem all that urgent, be staged for the same major version release?

Yes I also think that the next major version should unify the notion of point / cell sets among formats. Maybe we should continue the discussion in another issue?
In quick, is your cell_sets designed as follows?
cell_sets = {
     "Top": {"line": [1, 2]},
    "Material A": {"quad": [0, 1, 5], "triangle": [1, 10]},
}

In quick, is your cell_sets designed as follows?

Yes, I think so: Dict[str, Dict[str, ndarray]], where the first key depends on the application, the second is the type of cell, and the value is an array of indices into cells[cell_type ].

Let's pursue the discussion in #619.

Yes. Ta.

Another thought about that:
As I have mentioned before in #183 it would be nice, if the cell order could be preserved!
The background of sorting cells by there type was the different number of nodes for different cell types, so they could not be put in one numpy array. So they were separated by their cell-type to have the same number of nodes to fill an 2D numpy array. This was an early decision, but unfortunately this was destroying the cell-order.
I think almost all mesh formats work in the following way:

define nodes with IDs
define cells with type and list of Nodes
define data (cell/node/field...) by IDs

If we could access the cell-ID, we wouldn't need to sort cell-data again by the cell-type. We could rather have one numpy array, where the first dimension corresponds to the cell ID.
The fun thing is, that there is an implicit cell-ID within each cell-type, which is used for the cell-data (since it's an numpy array, where again the first dimension corresponds with the cell-sub-ID from the specified cell-type).
TL;DR:
Having one numpy array per cell-data would be the ideal case in my opinion.
Therefore we would need the cell-ID from the mesh file, which is not preserved at the moment.

If we could access the cell-ID, we wouldn't need to sort cell-data again by the cell-type. We could rather have one numpy array, where the first dimension corresponds to the cell ID.

I have a common use-case that I don't see how to fit into that structure. I have triangles for the domain and lines for the boundary; e.g. this is what one gets from Gmsh. Many cell-data fields will only be defined on the triangles, not the lines. Would I have to put a dummy NaN value on the lines?

Thanks everyone for your input.
There are many good ideas here, and I think it's time to go ahead and introduce some breaking changes. The next release will be 4.0, I'm thinking about a month from now. If you have ideas (like the dataclasses or the cell ordering), please open a new issue. Copy-and-pasting from the comments here is completely fine of course.
I've already incremented the version requirement to 3.6, and will reorder the dict as suggested in the original comment here. (That's not to say that'll be the final data model for 4.0.)

I have a common use-case that I don't see how to fit into that structure. I have triangles for the domain and lines for the boundary; e.g. this is what one gets from Gmsh. Many cell-data fields will only be defined on the triangles, not the lines. Would I have to put a dummy NaN value on the lines?

So you are basically lucky, that the cell-data was divided by cell-type in that case.
What happens, if there are some cells left out in a cell-data component?
How does meshio handle that at the moment? @nschloe

Many cell-data fields will only be defined on the triangles, not the lines. Would I have to put a dummy NaN value on the lines?

There are different notions of what constitutes a "cell function". It commonly is treated as a function that associates a value to every cell. In meshio, it's theoretically possible to only keep values with a particular cell type,
cell_data = {"a": {"line": [0.5, 1.4, 3.13]}}

but this is probably not what you want. I think it makes sense to first think about tags/sets because this is what a "boundary" is.

but this is probably not what you want.

On the contrary.  I would indeed use something like cell_data["flux"]["line"] for the flux through the boundary integrated over each element.  This quantity is defined only on the boundary and not in the domain and therefore only on the lines and not on the triangles.
Similarly I might project a P1 or P2 solution on the domain to be uniform on each cell (‘P0’) and then I'd have cell_data["potential"]["triangle"].  This quantity is only defined in the domain and not on the boundary and therefore on the triangles and not on the lines.

I think it makes sense to first think about tags/sets because this is what a "boundary" is.

Yes, I do agree with this, but this feels a fair way away in the future.
My current thoughts are, that, say my domain consists of triangles, then the boundary should be tagged edges of these triangles.  These are called 'facets' in Wikipedia ‘Simplicial complex’ and scikit-fem and 'Face' in XDMF Model and Format (‘Attribute’).  I don't think this part of XDMF is yet supported by meshio:
https://github.com/nschloe/meshio/blob/ab6c1792795c9f9e18d8b9a25a960e6c7b6e007b/meshio/xdmf/main.py#L290-L294
The main reason though why I have cell_data defined on either "triangle" or "line" but not both is that this is what meshio.read returns for MSH2.2 Physical Surfaces (subdomains) and Physical Curves (parts of the boundary in a mixed boundary value problem), respectively.  These tags cell_data["gmsh:physical"]["line"] and cell_data["gmsh:physical"]["triangle"] are only defined on one or the other.
Sets would be better for both subdomains and parts of the boundary, but I don't have access to an implementation.  My Gmsh is not compiled against MED.


Color Box Responsive Issue

Here is how i have added color box in my code.
 <script>        $(document).ready(function () { setTimeout(function () { $.colorbox({ width: "50%", inline: true, href: "#inline_content" }) }, 5000); });  </script>
I am using color box for inline HTML, here is the code that i have added to make this pop up responsive that i found from github.
`

Maybe this helps someone:
This is what I am using to make Colorbox responsive, and act nicely on resize:
Javascript:
<script>

var cboxOptions = {
    rel: 'gal',
    maxHeight: '90%',
    maxWidth: '90%',
    opacity: '0.7',
    current: '{current}/{total}'
}

$('.gallery').colorbox(cboxOptions);

function resizeColorbox() {
    $.colorbox.resize({
        width: window.innerWidth > parseInt(cboxOptions.maxWidth) ? cboxOptions.maxWidth : cboxOptions.width
    });
}

var doit;
window.onresize = function () {
    clearTimeout(doit);
    doit = setTimeout(resizeColorbox, 100);
};

</script>

Extra CSS overrides:
<style>

 .cboxPhoto {
        max-width: 100%;
        width: 100% !important;
        height: auto !important;
    }

</style>


Fixes wrong gcc, std c++ version

Codecov Report
Patch and project coverage have no change.

Comparison is base (6d95193) 79.63% compared to head (015a6d3) 79.63%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #64   +/-   ##
=======================================
  Coverage   79.63%   79.63%
=======================================
  Files          25       25
  Lines        2043     2043
=======================================
  Hits         1627     1627
  Misses        416      416

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


create cmdline utility to generate and verify hashes

It would be great to have a small cli utility that can generate and verify hashes.
Of course it could be a different package, but I think this might be a fine spot in this library, because

the name pwhash is great for that utility,
when adding different algorithms (e.g. argon2*), it can be distributed in tandem.

Sorry for the delay in answering this one, I noticed it when fresh and then it slipped my mind. A binary could be added to the crate, but the set of hashing algorithms is fixed; by design, I wish to keep just the historic and present system hashes on Unix-like systems. I notice you've mentioned argon2 -- I wouldn't add it to the crate, so a hashing program in the crate couldn't provide it.
A separate crate is, then, what I'd recommend. I think that hashpw is still available, and is also a fine name.
I'll close this issue and the pull request.


Toast Component for Mobile Views

Follow Figma for toast component mobile view design

/cib toast mobile view

Branch 134-toast-mobile-view created!


APP-616: Fixed JDataCollection Failure on first lunch

@kaa-leeroy test this please

@kaa-leeroy test this please

@kaa-leeroy test this please

lunch -> launch
(though I would like to have the former one now :smirk:)


EXT: Immediate invalidation for parameters

Issue and tracking information
Developer's time Estimated effort to fix (hours):
Developer's Actual time spent on fix (hours)
Issue reporter to provide a detailed description of the issue in the space below
When creating a parameter for an operation, there appears to be some sort of live validation that occurs causing the parameter to be immediately marked as an error for not having a type. This validation should not occur when creating parameters or there should be some way for us to disable this. Disabling the live validation feature of papyrus did not seem to work. I believe I have seen this when creating new types like structures or unions as well.

This is another difference between Papyrus and RSA. Papyrus runs automatic batch validation on a subtree that is modified. I will need to see if I can turn this automated validation off.


code blockchain by POS and go-libp2p

hello, I want to know how to code blockchain with POS and go-libp2p, that's cool for me. If you have demo, I would be grateful.

not a bug or specific feature request. Closing issue


Use of deprecated plexus-cipher plugin results in insecure randomness

Expected Behavior
Hi, I recently performed a security scan of the most recent Gradle package using JFrog X-Ray, which identified a potentially insecure dependency.
In particular, reliance on lib/plugins/plexus-cipher-1.7.jar has a reported security in the PBECipher.java file.
More details on the vulnerability: https://bugzilla.redhat.com/show_bug.cgi?id=880279
This was fixed in a planned 1.8 release, but was never published in this line. The source code for plexus-cipher: https://github.com/sonatype/plexus-cipher/commit/6ab0e38df80beed9ab3227ffab938b21dcdf5505
A newer version of the plexus-cipher was published, but moved to a different groupId org.codehaus.plexus, rather than under the Sonatype group.
https://mvnrepository.com/artifact/org.codehaus.plexus/plexus-cipher/1.8
I only see one reference to the plexus-cipher dependency in this repo, but I'm not sure if there are any other references, so I held off on submitting a PR.
Current Behavior
The bundled version of plexus-cipher in the lib/plugins directory of a Gradle build should be updated to use a version that does not include known vulnerabilities.
Context (optional)
No response
Steps to Reproduce
You can reproduce by running an X-Ray security scan on gradle-8.2.1-bin.zip. See the description for details on the vulnerability.
Gradle version
8.2.1
Build scan URL (optional)
No response
Your Environment (optional)
No response

Thank you for providing a valid reproducer.
The issue is in the backlog of the relevant team and is prioritized by them.

Please, report any security issues following our policy.

This has already been done as part of

https://github.com/gradle/gradle/pull/18769


XLA (TPU) Support

Hey there,
Was wondering if there are plans to support TPUs in the future via XLA kernels?

That would be up to Google to support.  They don't expose a programmable ISA externally.  Also, it's unclear if they could support a block-size below 128x128.

Would tf2xla not be enough to work with?https://github.com/tensorflow/tensorflow/tree/master/tensorflow/compiler/tf2xla/kernels
Looks as though they expose a fair amount there; although I'm not familiar enough with your block sparse implementations to say what you'd require.

XLA is great for lighter weight primitives like element-wise, reduction, broadcast, etc.   But blocksparse matmul/transformer is much more akin to a convolution primitive.  And you can see that XLA implements convolution by calling into a lower level op (eg ConvGeneralDilated) written more directly with their unexposed ISA.
That being said, this stuff isn't all that hard to express in python/numpy and should be easy to implement.  https://github.com/openai/blocksparse/blob/master/blocksparse/transformer.py#L186-L305


Location lister, unable to save and no error message displayed

bookmark the location lister and display it in WebTop/dashboard.
Click on Add Location
Enter Title
In Latitude field enter -50 (it should look like this 0-50)
In Longitude field enter 30
Note, the Save button is grayed out.
It will not allow you to save because of the 0-50 and it does not display an error message as to what is the problem.
Also, both fields have the same problem.

This issue was moved to ozone-development/ozp-demo#24


MultiGraph support

Not sure if this is implemented already (I haven't found it), but it would be great if SciPy could support sparse representations of multigraphs (ie. graphs that have multiple edges, of different attributes, between two nodes).

Thanks for the suggestion @vymao. I don't think this is implemented. If you have concrete algorithms in mind, that would be useful. It seems like a potentially large area.


Grafana Faro ingesting PII? (Session ID against GDPR Compliance)

Description
I head read your documentation on Data Privacy in Frontend Observability, and I see there are no Cookies. But on a separate note, I see on my logs that Grafana Faro creates a Session ID (which I believe is a randomly generated ID that is used to stitch together the data that are being ingested), but what we are worried about is that will this be traceable back to specific users? (as we will end up having this on public-facing sites, so GDPR compliance would be a hard requirement)

Hi @neillua ,
Please consult a data privacy specialist that is familiar with your regulatory setting to help you evaluate this in more details.
Faro does not collect any PII out of the box. And the random ID cannot be tracked back to individuals.
Hope that helps :)

Heya @cedricziel,
This is clear. As long as Faro does not collect cookies (as per documentation), and the Session ID on the Faro logs are randomly generated IDs and cannot be tracked back to individuals (as confirmed by you), we should be good so far.
Many thanks! :D


ESM is default file instead of CJS in v2.0.1 which is breaking.

Adding "type": "module" changed the output from tsup. This isn't an issue with Node versions greater than v12, but something to fix (for example, Jest fails).

https://antfu.me/posts/publish-esm-and-cjs#tsup

<EMAIL_ADDRESS>


How to OCR data from PDF file?

it's working with image file but not support pdf file?
please help me
my solution: convert pdf to image, and using tesseract :(

Why do you want to convert a pdf and then ocr it? Most of the times an PDF is just text in a file and there are better tools to extract the text from it. It only makes sense to OCR it if the PDF only contains scanned images.


Add support to bufferize the operands from elementwise ops

We will need to run this pass for elementwise ops after the elementwise op is fused into the last iteration of the matmul computation.

Could you provide some more description of what is happening here?

For matmul-elementwise dispatch, one of the elementwise op's inputs is the output of the matmul op. Since the matmul input and output operands are already promoted to shared and local memory, we'll only need to promote the remaining inputs and output of the elementwise op. In this PR, I added such support to identify if the elementwise op has a matmul op as its producer, and specialized the bufferizationToAllocation pass to deal with such cases. As an example, we'll need promote these pack ops https://github.com/nod-ai/iree-amd-aie/pull/275/files#diff-7cb5d199d855ff438ae4e9b6d7d42b8f5685a0c058e9be60d3ed0008d789423aR128-R131.


Use List or DataGrid view in other resources Edit view.

I'm looking for a way to add Products to the Basket as in the demo.
Is it possible to integrate a List view into another resources Edit view, with some custom actions.
So search and filtering would be available?

We don't provide support through GitHub issues. If you need advice on using or debugging your own project based on admin-on-rest, please use StackOverflow.


How much memory and time is needed to train?

Hello,
First of all, congratulations on the excellent results with SEGAN.
I'm trying to run train_segan.sh using the test samples. My setup includes a single Geforce GTX 1060 with 6GB or memory, but it seems it was unable to run with batch size of 100. So, how much memory does a GPU needs to run the algorithm?
I tried it with batch size 70 and it ran, but it seems to be taking forever to finish.
I noticed that on each line there was a two number expression like: "2/104250.0" as you can see on the image below. Does that mean that I have 104250 batches to process?

Hi, when I run the program, it was stopped in 'Sampling some wavs to store sample references... in model.py#L362', how is it addressed?
Thanks


SpecWoRMS and SpecASFIS requests

In this ticket we can enumerate ordinary SpecWoRMS and SpecASFIS requests

For REC12 we need to insert SpecWoRMS
105825 Hydrolagus affinis
It exists also in ASFIS so I will create also the code SpecASFIS
CYA Hydrolagus affinis
Link them with eachother and both to RDBES Datasets.
Implemented 1st February 2023 by @odontaster

Need to add Branchiostoma lanceolatum to SpecWoRms for ELDB
https://www.marinespecies.org/aphia.php?p=taxdetails&id=104906

Needed for preliminary catches submission Hydrolagus spp:

Added https://www.marinespecies.org/aphia.php?p=taxdetails&id=105734
to SpecWorms.
Added HYD to SpecASFIS
Linked both with each other and to RDBES

For preliminary catches needed Solea spp
Added 126132 to SpecWoRMS
https://www.marinespecies.org/aphia.php?p=taxdetails&id=126132
Added SOO to SpecASFIS
Linked them both to RDBES and between them

The following ASFIS/APHIA codes were added.
Code relations were created between ASFIS and Aphia, between Aphia and RDBES (Datasets code type) and ASFIS and RDBES.
asfis_checked_matched.xlsx


[BUG]Fix various bugs

Oh, I already made the change before I saw this PR. Thanks for being diligent!


[Improvement] Possible stack overflow in GravitinoVirtualFileSystem.java due to regexp back tracking

What would you like to be improved?
This regexp in GravitinoVirtualFileSystem.java could potentially cause a stack overflow with a small amount of input due to backtracking when run on Java 8.
 Pattern.compile("^(?:gvfs://fileset)?/([^/]+)/([^/]+)/([^/]+)(?:/[^/]+)*/?$");

How should we improve?
Improve the regular expression. One possibility (not tested) would be to change the * to *+ as *+ is not greedy so won't backtrack.

I would like to help this and refer to Using Atomic Grouping Instead of Possessive Quantifiers
I think ?> will be better than *+ for this case.

Atomic grouping may make it a little more complex, but see what you can come up with.


hierarchicalMenu issue after check a subcategory

I have about 5 categories and each category has another 2 or 3 subcategories. If I check a category the search runs fine but when I check a subcategory the search restart and every category and subcategory appears unchecked.
This is my code:
search.addWidget(
instantsearch.widgets.hierarchicalMenu({
container: '#category',
attributes: ['get_category.lvl1', 'get_category.lvl2', 'get_category.lvl3'],
sortBy: ['name:asc'],
templates: {
item: function (data) {
                    checked = ""

                    if (data.isRefined)
                        checked = "checked"

                    return '<label style="margin-left: 35px;" class="checkbox filter-checkbox"><input type="checkbox" value="' + data.name + '" data-toggle="checkbox" ' + checked + '> ' + data.name + '</label>'
                }
            },
            cssClasses: {
                body: 'filterCheckbox'
            }
        })
    );

Hi @seulZarraga, do you think you could create a live example here: https://jsfiddle.net/vvoyer/ar80rgpc/2/

It was my fault, I was using checkbox instead a tags

It was my fault, I was using checkobox intead a tags


Fixed "macro name is a reserved identifier" clang warning

Latest CLang gives a heap of warnings "macro name is a reserved identifier". According to C++ standard identifiers with double underscore are reserved. This is my go at trying to fix it.

Thank you! I wasn't aware of that restriction. Let me do a thorough review, then will merge. Can you say what specific version of Clang you were using?

If you don't object, will commit this to master with amendments (see diff). You will be the author on the squashed commit.

Changed BETTER_ENUMS__CONSTEXPR to BETTER_ENUMS_CONSTEXPR_ to avoid a
naming conflict with the existing BETTER_ENUMS_CONSTEXPR.
Pasted the output of the modified make_macros.py into enum.h. This changed
the spacing a little.
Adjusted whitespace to restore alignment.
Updated the commit brief.

Of course I have no objections. To be honest I should have restored alignment, just haven't thought of it.
I was using clang-3.7.1 with -Weverything.
clang version 3.7.1 (tags/RELEASE_371/final)
Target: x86_64-pc-linux-gnu
Thread model: posix

Ok, thanks again. There are still a couple warnings remaining that ought to be dealt with, -Wold-style-cast and -Wpadded. Let me know if these are causing immediate problems for you, otherwise I will deal with them at the same time as #16.

No, no problems from these. These two I understand, they are not severe. On the other hand this one looked a bit frightening.

Ok, good. Yes, I got quite a lot of warning output. Can only imagine getting it from multiple compilation units...


WebSocket unsolicited pongs could make pings ineffective

https://github.com/square/okhttp/issues/3227#issuecomment-367158197
So we may get well behind meaning that the current logic never times out.  At this point we could actually fast forward since multiple outstanding pongs may be coalesced by the server.

Fixed! https://github.com/square/okhttp/pull/3881


Solution: add Lucas Charles as new maintainer

Welcome @theoretick !

@theoretick Feel free to merge this :-)

Sweet, thanks @c-rack!  Excellent lib, BTW


FEAT: EDB Config - export component properties

Could the method added to components by made into python properties instead of get/set calls ? Btw, is there a reason to remove the classes CfgXXXProperties ?
get/set is replaced by property in the coming commit.

I do not find the value of CfgXXXProperties. The less the better. I will bring them back when we need them.


Using the action with latest CLI fail

Bug report
I tried to use the action with this argument and the upload failed all the time.
      - name: Install Supabase CLI
        uses: supabase/setup-cli@v1
        with:
           version: 1.42.5

Expected behavior
The upload should work same with the original version and any future one.
Screenshots
Link to the action who failed
Additional context
Add any other context about the problem here.

@laktek seems related to deno deploy. Do you have any insights?

it's now working with 1.47.3 :)