Add sensitivity measure to the config

Do we have a flag in the config to pick which sensitivity measure to use? I don't think so ...

Fixed in edad9c9087d71c2c248434ac0bf3d715fc87c7e1


[DAT-17951] Add AlterCluster change

Hi @KushnirykOleh @filipelautert
Failed tests are not relevant to the current feature, so I'll merge PR.


Remove vtkviewcell

From discussion on #1001, we should probably remove vtkviewcell.py (class VTKViewCell).
Could be done in #998 if it is to be in 2.2.

It is already removed in #998. It upgrades to VTKCell. I had to modify VTKCell slightly.


Make func stat.combin.factorial public and protect against overflow

What are you trying to do?
I'm working on combinatorics and permutations. I need the function factorial in my software.
What did you try?
use factorial.
How does Gonum not allow you to achieve your goal?
The function is declared private.
And it has a bug: it permits computation of factorials over 20. Range overflow without panic.
What version of Go and Gonum are you using?
v0.12.0
Is this feature absent from the current master?
no
Are you able to help contribute the feature?
I like to implement this extension.
This will be my first contribution to Gonum. so please be lenient. Thanks.

What is the use case here? For a "safe" generalised implementation of factorial arbitrary width integers are needed and this is out of scope for Gonum. The factorial function here is internal for cases that are likely to have in-bound inputs, though we should probably test and document its limits.


How to filter by bucket in bucket partitioned Iceberg table

This may not be a bug, perhaps a question.
I have an Iceberg table with bucket partition. For example one I added like this:
Alter table {table} add partition field bucket(16, document_id) AS bucket
Now to take advantage of Iceberg's partition pruning, I want to filter by bucket number. For example:
df = daft.read_iceberg(table)
df = df.where('bucket==0')

What is the right way of doing such a filtering?
Thanks.

Hi @rakeshJn, thanks for making an issue!
Daft will automatically translate the column on the table to the bucket!
For Example:
df = daft.read_iceberg(table)
df = df.where(df['document_id'] == 42)
df.explain(show_all=True) # to verify partition predicate has been pushed down.

This will compute the hash bucket for 42 and then apply it for partition pruning. You can verify this is the case with our explain method.

Thanks @samster25 for quick reply, how does it know whether I am looking to filter by literally a document_id of value 42 or hash bucket of document_id, because indeed document_id is a column in the table.
Besides, my document_id is a string and it is actually not computing hash and giving me an error:
DaftError::TypeError Cannot perform comparison on Utf8 and numeric type.
types: Utf8, Int32

Which means it is trying to filter by value 42.

Hi @rakeshJn, since Iceberg has hidden partitioning the column bucket is actually hidden from us. However when we apply predicates via a filter, Daft will check if there is any partition filters it can apply. It does this by keeping a mapping of table columns to partition columns.
so if document_id is a string, we should be able to run df = df.where(df['document_id'] == "42") and daft will see that document_id is a column that is partition and then will push down the filter to the scan. We can verify this with the explain method.
In the case of hash bucketing, both == and != are valid.

Ok, I see what you are saying @samster25 . That works when I want to filter by specific record, for eg document_id="42". What I want is something different. My table is bucket partitioned by 16 buckets, on document_id. That means I have 16 partitions on the table with roughly equal number of records in each partition, let's say 1.5M records in each partition.
Now, I want to query/filter this table by specific bucket, i.e., give me all 1.5M records from bucket 0. Is that something I can achieve using daft?
For reference, here's one related to Spark: https://github.com/apache/iceberg/pull/7886

I see what you mean! So you could run the expression on the dataframe which will give you the filtered rows. However this won't prune out the files until we push down that expression.
df = daft.read_iceberg(table)
df = df.where(df['document_id'].partitioning.iceberg_bucket(16) == 0)

I'll make an issue so that we can push this down!


bump container cap to 100 for jenkins 2

bumping container limit to 100 for #637

/ok-to-test

/approved

/approve

/lgtm

/retest


Query post-transformation, autocompletion support

Currently it's unintuitive to build a post-transformation. The code editor doesn't help the user at all with autocomplete. One possible solution could be to, instead of expecting a function expression, we expect a function body, we can the supply data in the globalScope property of the editor to get autocomplete for free.
return data;

instead of
(data) => {
  return data;
}

@bharatkashyap what do you think?

return data;

instead of
(data) => {
  return data;
}

This scenario creates this error:

You can add diagnosticCodesToIgnore: [1108] under monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions

Another point here is that in the the scope preview alongside the transform function editor:

we should always have the unmodified API response in the scope, and that would mean we should also pass the unmodified response to the client along with the transformed one, isn't it?

That would mean we should also pass the unmodified response back to the client along with the transformed one, isn't it?

We can always make 2 requests, 1 with "Transform response" enabled, and one without.
I think the tricky part will be in that currently we only update the preview on user action.

Makes sense. We could add another field to the ApiResult type, from:
export interface ApiResult<D = any> {
  data: D;
  fields?: ApiResultFields;
}

to, possibly
export interface ApiResult<D = any> {
  networkResponse: D;
  transformedData?: D;
  fields?: ApiResultFields;
}

We would however have two JSON previews on one page with the same variable data  having different values:


Multiple matches generate unexpected cypher

When using the Query object to create a query with multiple match statements, the statements are merged into a single match. The resulting cypher produces different results than it would have, had all the matches been preserved.
Given that there are situations where multiple matches are explicitly desired, and given that there is already a notation for writing a multi-pattern match:
q.match('pattern a', 'pattern b')

I think it is most intuitive to have multiple matches retained when the query is converted to cypher.
Additional information which could be helpful if relevent to your issue:
Code example (inline, gist, or repo)
For example, take a graph of a Repo named Test and a chain of dependencies named D1, D2 and D3:

The query:
q.match('(r:Repo { name: "Test" })-[*]-(d)')
  .match('(d)-[e]-()')
  .return(:d, :e)

generates the cypher:
MATCH (r:Repo { name: "Test" })-[*]-(d), (d)-[e]-() RETURN d, e

which returns  only the dependencies D1 and D2.
Forcing multiple matches with a break:
q.match('(r:Repo { name: "Test" })-[*]-(d)')
  .break
  .match('(d)-[e]-()')
  .return(:d, :e)

generates the cypher:
MATCH (r:Repo { name: "Test" })-[*]-(d) MATCH (d)-[e]-() RETURN d, e

which returns all dependencies D1, D2 and D3.
Runtime information:
Neo4j database version: 3.5.0
neo4j gem version: N/A
neo4j-core gem version: 9.0.0

Related to #255


undefined method `revision' for #BottleSpecification:0x000001030abf28

use command:brew unistall,upgrade... then error
https://docs.brew.sh/Troubleshooting
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/autossh.rb:10:in block in <class:Autossh>' /usr/local/Homebrew/Library/Homebrew/software_spec.rb:101:in instance_eval'
/usr/local/Homebrew/Library/Homebrew/software_spec.rb:101:in bottle' /usr/local/Homebrew/Library/Homebrew/formula.rb:2086:in bottle'
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/autossh.rb:8:in <class:Autossh>' /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/autossh.rb:1:in load_formula'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:26:in module_eval' /usr/local/Homebrew/Library/Homebrew/formulary.rb:26:in load_formula'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:46:in load_formula_from_path' /usr/local/Homebrew/Library/Homebrew/formulary.rb:101:in load_file'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:239:in load_file' /usr/local/Homebrew/Library/Homebrew/formulary.rb:92:in klass'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:88:in get_formula' /usr/local/Homebrew/Library/Homebrew/formulary.rb:229:in get_formula'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:280:in factory' /usr/local/Homebrew/Library/Homebrew/formulary.rb:311:in from_keg'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:294:in from_rack' /usr/local/Homebrew/Library/Homebrew/formula.rb:1388:in block in installed'
/usr/local/Homebrew/Library/Homebrew/formula.rb:1386:in each' /usr/local/Homebrew/Library/Homebrew/formula.rb:1386:in flat_map'
/usr/local/Homebrew/Library/Homebrew/formula.rb:1386:in installed' /usr/local/Homebrew/Library/Homebrew/cmd/upgrade.rb:35:in upgrade'
/usr/local/Homebrew/Library/Homebrew/brew.rb:101:in `'

From the issue template:

Please note we will close your issue without comment if you delete, do not read or do not fill out the issue checklist below and provide ALL the requested information. If you do not read fill out the issue template repeatedly you will be blocked from ever submitting issues to Homebrew again.

If you add the necessary information to this issue (don't create a new one, please) this issue may be reopened.


Make singleton nodes not disappear when scaled by strength

I had the problem that nodes with degree k = 0 disappear when node size is scaled by strength. This makes conceptually sense, but I still wanna see the nodes with degree zero. Hence I now find the minimum non-zero strength and if display_singleton_nodes is true, the size of k = 0 nodes is rescaled to be equal to this minimum non-zero strength.
I don't know if I've done that in a way which is in line with your concept, I hope it's the case :)

Great work! All good concept-wise!


Add missing error guards

My linter noticed some missing error checks in callbacks. Catching these will prevent uncaught exceptions or unexpected application states in edge cases.

:+1: I may have omitted it to keep it simple, as those error checks do add code noise. However it is pretty much required to handle thsese type of errors, if someone is planning to run an app in production.


Feature: Incorporate site search into masthead

[x] Enable masthead search toggle with site.search == true in _config.yml
[x] Toggle search input with button in masthead (magnifying glass icon)
[x] Update documentation, add note about _layout/search.html and masthead search not playing nice together. Deprecate search layout?

Example:

Ref #1011

Wow, nice!!

@ohadschn Thought you'd might enjoy this early holiday :gift:

This is like the Hanukkah Miracle all over again!

Looks Great!


remove add plan section, add troubleshoot windows powershell

We have removed the add plan button so I updated the documentation for this.
Added troubleshoot for windows Powershell terminal.

Approved over Slack.


Fix drag_value.edit_string unexpected reset

Make drag_value.edit_string None only during current focused widget update
Only two cases edit_string will be set to None (and reconstructed from value):

current widget gains focus.
current widget consumes up down key to change value.

Editing, Tabing and UpDown tested.
Close https://github.com/emilk/egui/issues/2418
Close https://github.com/emilk/egui/issues/2370

Still problematic. Editing DragValue then click another DragValue, the edit_string does not reset.

Fixed, add another reset on request_focus. Seems gained_focus is not satisfied this case.

@mwcampbell worked on this code recently - maybe you wanna take a look at this so it doesn't break AccessKit?

I reviewed the code and tested it using only the keyboard and a screen reader, and it looks good to me.

Thanks for taking a look @mwcampbell! And thanks for the PR @tkkcc!


(scripts): fix bcos3.0 build.sh and build_gm.sh error

Codecov Report

Merging #559 (ed3c1a1) into release-1.3.0 (572233e) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head ed3c1a1 differs from pull request most recent head 6a01723. Consider uploading reports for the commit 6a01723 to get more accurate results

Additional details and impacted files

@@               Coverage Diff                @@
##             release-1.3.0     #559   +/-   ##
================================================
  Coverage            15.58%   15.58%
  Complexity             441      441
================================================
  Files                  185      185
  Lines                 8687     8687
  Branches               748      748
================================================
  Hits                  1354     1354
  Misses                7215     7215
  Partials               118      118


biorand for Re 1 crash at start

Version
3.0.8 (a1e8985)
Seed
R710-R5NE-ZJHHH0MJ9F660N9KCKK5GXZZZZZZZZZZRKZ
Scenario
RE 1 (Chris)
Player Character
Wesker
What happened?

I installed the latest version to try new characters like npc, unfortunately with this version the game crashes

Works in latest build

Works in latest build

i'm using the latest version, but it doesn't work, after the initial video of resident evil 1, the game crashes

Funziona nell'ultima build

I tried without replacing player character, it works, basically it doesn't play with other characters

@nico8521 it works in the latest dev. build, but it has not yet been released.


opening thread link not working properly in update window

Describe the bug
When i go to click on "Open Thread" in the update dialog, nothing happens,
electron logs Check failed: chdir(current_directory) == 0
but if i manually run xdg-open <link> (as electron does on linux) it works fine
the "Open Directory" button works normally
Does not affect the link on the game card
Desktop:

OS: Linux
Version: archlinux 5.10.9-zen
App version: 2.5.6

Thanks!
Forgive me if I have not solved the problem but at the moment I am a little too busy irl


transition interpolator initial transitions zooms out

When I initialize the map and do a first flyTo or linear transitions the map zooms all the way out
instead of zooming to the bounds, but works every time after, or if i do a zoom with my mouse first
  const bounds = [10.747981, 51.818442, 14.758593, 54.684764]
  const viewport = new WebMercatorViewport(viewState);
  const newViewport = viewport.fitBounds(bounds);
  const newViewState = {
    ...newViewport,
    transitionDuration: 100,
    transitionInterpolator: new FlyToInterpolator()
  }

  setViewState(newViewState)

Framework Version: deck.gl 7.0.9
doesn't work on firefox or chrome

What is the initial zoom value? Can you log the zoom values in viewState and newViewState?

error because i initialised the initial view state as new WebMeractor()


rc: new call rc/pid - closes #2211

The tests failed because you need to run the code through go fmt (or better link goimports into your editor save hook)

That is great - thank you :-)


[Feature Request] taking notes

Many times I have a good idea or something I want to do in mind when I am working on an issue and writing a long text. I can choose between being sidetracked and creating new issues or forgetting it or opening a different application maybe using paper and pen to write down my notes. On github I really miss being able to write down a few words and work on it later. I am not sure if Gitea already contains this feature, I checked the documentation and the issues and found nothing, so probably not. I am not sure if anybody else is missing this feature, I guess the votes will decide. What do you think?

You mean the gist feature? If so there is already an (old) issue for that #693

@mrsdizzie No, as far as I understand the gist is for sending code. This one would be only for writing down a few words and continue work without major interruption and check it again later. Maybe it is similar to a todo list, but it isn't entirely that. The notes can be repo related or something totally unrelated, for example I realize that I need to buy eggs when I am working on a project, reading an issue or writing a long answer. I take a note something like "eggs" and continue doing my work. Ofc. I can do this on paper or in notepad too. Doing it in a webapplication have the advantage of moving that info between computers and that I don't have to take paper and pen or open a new application, which is further distraction. Usually I have more creative thoughts than buying eggs, and I work on many different projects, so sometimes I get a new idea about project A and B, when I am working on project C, and if I don't write it down I forget it, but if I start to create feature issues for it and think it through, then I won't work on project C any longer. Maybe it is just me, but I struggle to focus on a single project and this would help me.

I would say you want two things:

draft issues
a simole way to create them while working on a issue

?

@inf3rno I'm using private repository + Typora to do that.

I would say you want two things:
* draft issues

* and a simple way to create them while working on a issue

?

No, it is less than a draft. It is just a small note to remember what to do next after I finished working on the actual issue. Something like a short todo list for that day.

@inf3rno I'm using private repository + Typora to do that.

Thanks, I'll check this typora.


feat(sort-classes): add custom-group to sort-classes rule

Description
Today class ordering doesn't work much for classes that represent database entities. For example, using TypeORM, the ordering of properties changes the order of the columns in the database. To make it easier to use, I propose adding a custom-groups functionality already present in other rules such as sort-objects.
Code Example
Configuration:
'perfectionist/sort-classes': [
      'error',
      {
        'custom-groups': {
          'entity-id': ['id'],
          'entity-timestamps': ['createdAt'],
        },
        groups: [
          'entity-id',
          'index-signature',
          'static-property',
          'private-property',
          'property',
          'constructor',
          'static-method',
          'private-method',
          'method',
          ['get-method', 'set-method'],
          'unknown',
          'entity-timestamps',
        ],
      },
    ]

Input:
export class TestEntity {
  @PrimaryGeneratedColumn('increment')
  id: number

  @Column()
  name: string

  @Column()
  description: string

  @CreateDateColumn()
  createdAt: Date
}

Problematic output:
export class TestEntity {
  @CreateDateColumn()
  createdAt: Date

  @Column()
  description: string

  @PrimaryGeneratedColumn('increment')
  id: number

  @Column()
  name: string
}

Expected Output:
export class TestEntity {
  @PrimaryGeneratedColumn('increment')
  id: number

  @Column()
  description: string

  @Column()
  name: string

  @CreateDateColumn()
  createdAt: Date
}

What is the purpose of this pull request?

[ ] Bug fix
[x] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[x] Ideally, include relevant tests that fail without this PR but pass with it.
[x] Read contribution guidelines.

Thank you!
Released in v2.11.0


core.remote error handling in orchesta workflows

SUMMARY
When using core.remote in an Orchesta workflow and referencing its status or stdout in a following task, if the core.remote command has failed to connect to the specified host, it will error out as the task will not create an object
STACKSTORM VERSION
st2 3.7.0, on Python 3.8.10
OS, environment, install method
Running the st2-docker container in a DEV environment
Steps to reproduce the problem
version: 1.0
description: "Test job"

input:
  - recipients
  - hosts
  - username
  - cmd
  - timeout

vars:
  - runtime_error: "An error occurred while executing the workflow."
  - runtime_status: "unknown"

tasks:

  task1:
    action: core.remote
    input:
      hosts: <% ctx().hosts %>
      username: <% ctx().username %>
      cmd: <% ctx().cmd %>
      timeout: <% ctx().timeout %>
    next:
      - when: <% succeeded() %>
        do:
          - send_email
      - when: <% failed() %>
        do:
          - send_email
          - fail

  send_email:
      action: core.sendmail
      input:
        subject: "test - {{ task1.status }}"
        to: "{{ ctx().recipients }}"
        body: "{{ task1.stdout }}"

st2 run pack_test.test hosts="test", username="test"
In the above example, I understand that the test host does not exist and I'm expecting the first task to fail with an unreachable error
Expected Results
I would be expecting that the task1 object exist, with status containing a failed value
Actual Results
{'type': 'error', 'message': 'Execution failed. See result for details.', 'task_id': 'fail'}
{'type': 'error', 'message': "JinjaEvaluationException: Unable to evaluate expression '{{ task1.status }}'. UndefinedError: 'task1' is undefined", 'task_id': 'send_email', 'route': 1}
The workflow execution is completed with status "failed".

Workflow execution completed with errors.
{'type': 'error', 'message': 'Execution failed. See result for details.', 'task_id': 'task1', 'result': {'error': 'Unable to connect to any one of the hosts: [\'test\'].

Thanks!

I think task1 should publish the output to context that you can then refer to with ctx('task1_output')


DOC: Move development docs to zipline.io

Coverage remained the same at 87.585% when pulling a0a920b39b8a4781975cc63360d2dd0272458c0f on development-docs-on-ziplineio into 77235a6eaa0f5531ae3b35ecd0f5ca1d916ba3e1 on master.


Update direct-routing-configure.md

Was using set-csuser thats for on-premises skype, should have used set-csonlineuser. Also forgot to write -Indentity.

@AlexanderHolmeset - thanks for catch on that!


Implement runtime.ts in Rust

Currently the Lambda interface client is [implemented in TypeScript (https://github.com/awslabs/llrt/blob/main/src/js/%40llrt/runtime.ts).
Performance can be improved if runtime client is implemented in Rust using already defined dependencies (hyper, the customer json parser) etc.

Landed in https://github.com/awslabs/llrt/pull/260


Do not install this if you want to revert back to old Unity GI !

Everything in the title, do not install this if you plan to revert back to original Unity Realtime/Baked GI, I just removed the package and everything bcs it was not to my liking, I just wanted to test the look, reverted back all my settings, and now my lightmaps get generated pitch black !
I tried to clean GI cache in Unity, regenerated lighting, restarted the editor... no matter what I do my lighmaps get generated pitch black since I installed this package, one day of work thrown into the bin, I need to revert back to my yesterday backup due to that and need to reimport all the work I made today...
Just in case:

Unity 2022.3.41f1
URP 14

Okay after more testing it looks like it has only fucked the scene I was testing this package for some reason the other scenes I have can generate proper lightmaps, so I guess I will just reimport my scene elements into a fresh scene !
Fortunately my scene doesn't have too much stuff to import.

Hi, I'm sorry to hear that!
Since SSGI is a screen space effect, it shouldn't be able to affect the scene after removing the package.
What will be left in the project is a "missing renderer feature" box, but that happens to all custom renderer features when deleting the script without removing it from all URP renderers first. (and it shouldn't affect baking)

This is a big problem for me, so I tried to reproduce it but baking seemed to work fine after removing the SSGI package.

I totally get your concerns when the baked lightmaps not working anymore, but I can't seem to reproduce it in the Relaxing Corner scene. (Unity 2022.3.37f1) So, I can’t explain or provide a solution for this.☹
In addition to this, the only supported baked GI will be APV when using SSGI. If anyone plans to use SSGI in a lightmapped scene, I recommend unchecking Override Ambient Lighting in the renderer feature.
Anyway, thank you for trying it and I'm really sorry about this!

Honestly I have no idea why it did that, I had properly removed everything, SSGI from the renderer preset, and also from the global volume, like I said I also cleaned the GI cache, recreated a lighting scene profile etc... but not matter what I tried, my scene lightmaps were all generated pitch black after deleting the package !
That's not a big issue, since I was able to simply recreate a scene, deleting the previous one, reimport the exact same stuff I had saved in prefabs, and the lightmaps were all working properly again !
Maybe just Unity sometimes doing weird stuff...🤷
Btw, I installed your Volumetrics Clouds URP package (https://github.com/jiaozi158/UnityVolumetricCloudsURP) and this one is amazing and perfectly fit what I needed ! No issue with this one hehe.
Thx for responding so quickly, and sorry again for being so mad yesterday, I was a bit annoyed at the time lol ! Have a nice day.

Thank you very much for your understanding, I will keep an eye on the lightmap baking issue in the future.
It's fine because when something goes wrong, we all want to solve it as quickly as possible, and that's why I try to reply quickly too.
Also, glad to hear that the volumetric clouds repo is helpful for your project! Feel free to discuss with me if there's any problem with the clouds.😉


Need to be able to blacklist IP addresses from the pools

We added a new IPReservations API in v3.21 that probably satisfies this.


Update README.md

connect the paper to the repo. great work on this what a monster effort.

Thank you for the kind words! The link to the paper was already at the bottom of the README, but I've moved it up to the top and made a few other minor edits.


Remove a duplicate label

We have two semantically equivalent labels, one of them has only 7 issue tagged. let's remove test-failures in favor of 'failing test' https://github.com/apache/beam/issues?q=is%3Aissue++sort%3Aupdated-desc+label%3A"failing+test"+ https://github.com/apache/beam/issues?q=is%3Aissue++sort%3Aupdated-desc+label%3A"test-failures"+

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

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

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

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

R: @apilloud


fix: replace environment API call with env files

The environment API call was implemented to support a "build once, run anyway" approach using Docker containerisation. The approach is non-standard and causes issues with the changes to migrate to Next.js.
Replace the environment API call with dotenv files. To continue supporting both preprod and prod a custom build script should be used to swap the correct dotenv contents in depending on the environment.
TIS21-3995

LGTM!


fix(nuxt): update compatibility version of FormKit's Nuxt module to >=3.0.0-rc.9

FormKit fails to pass Nuxt's compatibility check.

This was fixed a while ago on @formkit/nuxt@next tag. See #383, or #370, or #371.


ISPN-5923 Wrong results when applying the <= operator to a string attribute having a null token defined

Jira: https://issues.jboss.org/browse/ISPN-5923
https://issues.jboss.org/browse/ISPN-5926

This is Preview because it needs a release of hibernate-search-5.5.1.Final first.

@Sanne can we have the release of Hibernate Search 5.5.1.Final please ?

@tristantarrant :+1: early afternoon

Pushed, thanks


Add test results top nav to submission detail view

Description
#3864 added a top nav bar to the /results/upload pages to easily navigate from and within the bulk submissions views. However, this nav was not added to the "view submission detail" view:

Acceptance criteria

Add the results nav component
Remove mention of COVID-19
Use the correct loading indicator

Ask @vz3 about this, he mentioned on a call that the "loading" component used for the submission detail view isn't correct

For the label, thinking "Test submissions" > "Results submissions" (SR typically uses "test" as something in progress)
Would this ever contain more than one spreadsheet? If not, "Results submission" (singular) might be better
Date looks good, and for time let's follow the Results page format, with no space before am/pm: "6/13/2022 3:01pm"

@vz3

what I've got so far:
https://user-images.githubusercontent.com/6401323/177429899-e30a858c-4571-47a0-8e53-512319977d48.mov
open questions for me still:

include filename y/n?
include "Result submissions" link?

Gotcha on filename. I can create a separate story to track+prioritize that. It was an explicit ask from @lg-king coming out of research.
We should change that back link to back link copy.
to spitball, "< Return to CSV upload history" cc @lauraykerr

@vz3 I like that — maybe "Return to spreadsheet upload history" for consistency?

Perfect! Let’s move forward with this @mehansen


The clean architecture solution template contradicts the documentation

The core should not depend on the repository/database, but the class in core\service depends on the repo.
Anything cited as an example should at least be consistent with the doc, even if incorrect

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

ID: 1ebf17cd-9d3e-d928-0767-d06e346868bb
Version Independent ID: b227c667-82ae-97ef-c175-7e17051c5ab2
Content: Common web application architectures
Content Source: docs/architecture/modern-web-apps-azure/common-web-application-architectures.md
Product: dotnet-architecture
Technology: modern-web-apps-azure
GitHub Login: @ardalis
Microsoft Alias: wiwagn

"The core should not depend on the repository [implementation] or database" - correct
"but the class in core\service depends on the repo." - which class? Can you add a link?
"Anything cited as an example should at least be consistent with the doc, even if incorrect." Where is it inconsistent, and what part of the doc are you saying is incorrect, if any?
Thanks!

Following up... if you mean this class:
https://github.com/ardalis/CleanArchitecture/blob/main/src/Clean.Architecture.Core/Services/ToDoItemSearchService.cs
It depends on an IRepository<T> interface, which is defined in the Core project. There's nothing wrong with depending on interfaces - that's what you're supposed to do when following SOLID principles and using DI appropriately.

I do mean that class, it declares an interface but actually depends on a concretion.  There may be others, but that was a big red flag and I stopped there.
Core should have the entity definitions and the majority of the critical business logic. The data "layer" depends on it for mostly the entity definitions. Core depending on the data layer at design or runtime is the wrong dependency direction, even with vanilla DI.

In what way does it care about the concrete implementation of the abstraction? Obviously at runtime interfaces will be replaced with implementations, but you seem to be saying something more than that.

I'm saying nothing more than that. That class has a runtime dependency on the repository, which should be the wrong direction for a dependency (but I can find nothing regarding design vs runtime dependencies aside from the speculation or opinion of others).
If that's OK to you, then the ProjectController then seems out of place or contradictory with how its doing work that would be in the Core and not handling just the Http stuff and interacting with core.
The project also has some SharedKernel thing which isnt mentioned anywhere in the docs page.  It feels like it has too much of its author's personal flavor to be cited as a clean example.  Is there not a better concrete example MSFT has available?

Well in case you're unaware, the author of the book (which you're reading in the docs repo, but it's actually a standalone book) is also the author of the Clean Architecture template as well as the eShopOnWeb sample. So, there's a fair bit of consistency expected between these things, although the book and eShopOnWeb are "official" Microsoft guidance and the Clean Architecture template is a "community" resource.
I'd love to have a discussion with you some time about your concerns w/regard to runtime dependencies and the Dependency Inversion Principle. I think it would be an interesting conversation. I don't recall anyone raising issues about how the runtime call chain behaves in regard to this principle, only how compile time dependencies are structured. I even have a diagram demonstrating this in the book.

As for your concerns regarding the ProjectController, what do you see it doing that could or should be moved into Core? It fetches a project, translates it into an API model, and returns it. If you really wanted, you could put that into a service or MediatR handler, but personally I would keep the API model in the Web project, which means that any service that returns that model would need to live in the Web project. At that point you'd have something like the CatalogViewModelService you'll find in eShopOnWeb. If you prefer that approach, there's nothing wrong with using it. Or if you'd rather just have your controller use something like MediatR to dispatch commands and handle them elsewhere, as I describe here, that's a common approach as well.
Hopefully it's clear that eShopOnWeb, a reference application, and Clean Architecture, a template, share the same set of design principles. Microsoft has other samples, including eShopOnContainers, that demonstrate other architectural approaches (and which have their own eBooks describing these approaches). There are others as well, including many smaller samples in the docs and on GitHub.

I'm going to give Uncle Bob's book a re-read over the next few days and re-read this to make sure I'm not way off base.

personally I would keep the API model in the Web project, which means that any service that returns that model would need to live in the Web project

I'm not sure I follow the "API Model" meaning, but having the Services in the Web project (WebApi or gRPC) seems correct. It seems more correct than having a separate Services library project and basically an empty Web API project that pretty much only handles the HTTP request/response and calls the services library to do the real work.  Why do you mix the two approaches in the cited example?  Thats what triggered the red flag for me.
Perhaps an example of what I'm seeing as more straight forward or "cleaner" would help to understand.

Service is going to be either a WebApi or gRPC asp.net core project. Its going to have majority of the "business logic/rules" and or orchestration. For WebApi, the controllers do the HTTP stuff, and they hand off to classes in the \Services folder for the actual "work". For gRPC there arent any controllers, just the \Services folder.
Core has interfaces for exposed services, and interfaces for dal/repository classes, and most of the business entity classes (no EF here), and anything else that would need to be shared  (extension methods, etc).
Data has the data source specific data access code in it for interacting with the database for get/save operations.
Not depicted is a Service Client project that uses either the proto files or nswag to auto generate clients for the service.

|--------------------|
| External Callers   |
|------------|-------|
             |
|--------|---V-------|
|        |           |
|   C  <-- Service   |
|   o    |           |
|   r    |--------|--|
|   e    |        V  |
|      <-- Data      |
|--------|------|----|
                |
|---------------V----|
| Database             |
|--------------------|

External callers can only contact the Service, never directly into Data
Both Service and Data can reference Core.
Core can reference nothing.
Service can reference Data.
Data cannot reference Service
Data only contacts the Db for its data

This keeps the dependencies the same at runtime as they are at design time.

Your diagram is essentially the same as the project structure already in use by eShopOnWeb and my Clean Architecture template.
There's a Core project that references nothing (except perhaps a Shared Kernel but we'll leave that out for now).
There's an Infrastructure project (with Data as well as other Infrastructure concerns) that references Core.
There's a UI project (gRPC, Web API, whatever) that reference Core and leverages Infrastructure for implementations (only references to Infra should be from Program.cs when DI is configured).
Maybe the broad term 'service' is part of the problem here? Many apps have "domain services" and "infrastructure services" and "application services" in addition to Web APIs and gRPC "web services". And the thing that designates where such services go (they're just C# POCOs that are injected as needed) is primarily their abstraction level and dependencies.
Domain services live in the domain (Core) and can't have dependencies on infrastructure or UI concerns.
Infrastructure services live in infrastructure and can have dependencies on infrastructure types/concerns.
Application services may live in a separate project but often I put them in the UI project (example: https://github.com/dotnet-architecture/eShopOnWeb/blob/main/src/Web/Services/CatalogViewModelService.cs). They can reference UI types like ViewModels.
Let me know if that helps clarify my position as it relates to yours - I think we're more or less in agreement. Assuming that's the case, we can probably close this issue. Thanks!

Thanks, @ardalis. The issue can be closed now.


Bad keyspace partitioning if you have a large schema

I observed layer files like this after restoring a schema with a lot of relations (1000-2000 ?):
-rw-r--r-- 1 heikki heikki<PHONE_NUMBER> Jun  8 10:32 000000067F000032AC000004EB0000000004-000000067F00004002000000000000000002__0000000091746311-00000001317D2521
-rw-r--r-- 1 heikki heikki<PHONE_NUMBER> Jun  8 12:19 000000067F000032AC000004EB0000000008-000000067F00004002000000000000000002__00000001D18498A1-00000002718DD891

Note the sizes: about 2 GB and 6 GB. That's unexpected, as the compaction code aims for a 256 MB file size.
Looking at the contents of the first file, almost all the space is take by one key, 000000067F00004002000000000000000001. Sample of the contents:
 key 000000067F00004002000000000000000001 at 1/2A295FB0:  img 48758 bytes
  key 000000067F00004002000000000000000001 at 1/2A2F5090:  img 48763 bytes
  key 000000067F00004002000000000000000001 at 1/2A2FD768:  img 48768 bytes
  key 000000067F00004002000000000000000001 at 1/2A328700:  img 48773 bytes
  key 000000067F00004002000000000000000001 at 1/3098A3B8:  img 48778 bytes
  key 000000067F00004002000000000000000001 at 1/309B58F0:  img 48783 bytes
  key 000000067F00004002000000000000000001 at 1/30B0DB20:  img 48788 bytes
  key 000000067F00004002000000000000000001 at 1/30B1D268:  img 48793 bytes
  key 000000067F00004002000000000000000001 at 1/30B2AA80:  img 48798 bytes
  key 000000067F00004002000000000000000001 at 1/30B37C58:  img 48803 bytes
  key 000000067F00004002000000000000000001 at 1/30B440F8:  img 48808 bytes
  key 000000067F00004002000000000000000001 at 1/30C0AF48:  img 48813 bytes
  key 000000067F00004002000000000000000001 at 1/30C26F88:  img 48818 bytes
  key 000000067F00004002000000000000000001 at 1/30CADC78:  img 48823 bytes
  key 000000067F00004002000000000000000001 at 1/30CBD258:  img 48828 bytes
  key 000000067F00004002000000000000000001 at 1/30D15430:  img 48833 bytes
  key 000000067F00004002000000000000000001 at 1/30D210F0:  img 48838 bytes
  key 000000067F00004002000000000000000001 at 1/30DE7F30:  img 48843 bytes
  key 000000067F00004002000000000000000001 at 1/30E03608:  img 48848 bytes
  key 000000067F00004002000000000000000001 at 1/30E1ED38:  img 48853 bytes
  key 000000067F00004002000000000000000001 at 1/30E8FB50:  img 48858 bytes
  key 000000067F00004002000000000000000001 at 1/30EAB228:  img 48863 bytes
  key 000000067F00004002000000000000000001 at 1/30EBF6D8:  img 48868 bytes
  key 000000067F00004002000000000000000001 at 1/30ECD4B0:  img 48873 bytes
  key 000000067F00004002000000000000000001 at 1/30F8FB80:  img 48878 bytes

And indeed this is causing trouble already. From the logs (from a different test run then the above):
2022-06-09T11:57:35.449539Z ERROR storage_sync_loop_step:process_sync_task_batch{sync_id=b24d9b092f92ee868f1617ed2d470b0a-2fd694a78e6503324bdbfb19f3458b65}:upload_timeline_data: Failed to upload a layer for timeline b24d9b092f92ee868f1617ed2d470b0a-2fd694a78e6503324bdbfb19f3458b65: Failed to upload a layer from local path '/storage/pageserver/data/tenants/b24d9b092f92ee868f1617ed2d470b0a/timelines/2fd694a78e6503324bdbfb19f3458b65/000000067F000032AC000004EB0000000004-000000067F00004002000000000000000002__0000000091717B09-000000013176FF59'
Caused by:
    Request ID: None Body: <?xml version="1.0" encoding="UTF-8"?>
    <Error>EntityTooLarge<Message>Your proposed upload exceeds the maximum allowed size</Message><ProposedSize>6259777536</ProposedSize><MaxSizeAllowed>5368709120</MaxSizeAllowed><RequestId>TQJSRW85MBGWJ0J4</RequestId><HostId>lZcDQqj8ipP++BCsIb9E+/30GQVygQf/fKL1E3rMjArJOJdmwYFh/nn6+Z6xxdKlHCB4a8367Rg=</HostId></Error>
Stack backtrace:
   0: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/result.rs:1911:27
      <remote_storage::s3_bucket::S3Bucket as remote_storage::RemoteStorage>::upload::{{closure}}
             at /home/circleci/project/libs/remote_storage/src/s3_bucket.rs:193:9
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
   1: <core::pin::Pin
 as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/future.rs:119:9
      pageserver::storage_sync::upload::upload_timeline_layers::{{closure}}::{{closure}}::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync/upload.rs:150:19
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
   2: <futures_util::stream::futures_unordered::FuturesUnordered<Fut> as futures_core::stream::Stream>::poll_next
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.21/src/stream/futures_unordered/mod.rs:514:17
      futures_util::stream::stream::StreamExt::poll_next_unpin
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.21/src/stream/stream/mod.rs:1626:9
   3: <futures_util::stream::stream::next::Next<St> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.21/src/stream/stream/next.rs:32:9
      pageserver::storage_sync::upload::upload_timeline_layers::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync/upload.rs:166:37
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
      pageserver::storage_sync::upload_timeline_data::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync.rs:1299:35
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
      pageserver::storage_sync::process_sync_task_batch::{{closure}}::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync.rs:1019:25
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
   4: <tracing::instrument::Instrumented<T> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tracing-0.1.30/src/instrument.rs:272:9
   5: <tokio::future::maybe_done::MaybeDone<Fut> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/future/maybe_done.rs:68:48
   6: pageserver::storage_sync::process_sync_task_batch::{{closure}}::{{closure}}
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/macros/join.rs:86:20
      <tokio::future::poll_fn::PollFn<F> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/future/poll_fn.rs:38:9
   7: pageserver::storage_sync::process_sync_task_batch::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync.rs:1011:42
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
   8: <tracing::instrument::Instrumented<T> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tracing-0.1.30/src/instrument.rs:272:9
   9: pageserver::storage_sync::process_batches::{{closure}}::{{closure}}::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync.rs:956:36
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
  10: <futures_util::stream::futures_unordered::FuturesUnordered<Fut> as futures_core::stream::Stream>::poll_next
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.21/src/stream/futures_unordered/mod.rs:514:17
      futures_util::stream::stream::StreamExt::poll_next_unpin
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.21/src/stream/stream/mod.rs:1626:9
  11: <futures_util::stream::stream::next::Next<St> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.21/src/stream/stream/next.rs:32:9
      pageserver::storage_sync::process_batches::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync.rs:975:47
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
  12: <tracing::instrument::Instrumented<T> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tracing-0.1.30/src/instrument.rs:272:9
      pageserver::storage_sync::storage_sync_loop::{{closure}}::{{closure}}
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/macros/select.rs:505:49
      <tokio::future::poll_fn::PollFn<F> as core::future::future::Future>::poll
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/future/poll_fn.rs:38:9
  13: pageserver::storage_sync::storage_sync_loop::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync.rs:903:13
      <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
  14: <core::pin::Pin
 as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/future.rs:119:9
      tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:498:48
      tokio::coop::with_budget::{{closure}}
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:102:9
      std::thread::local::LocalKey<T>::try_with
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/thread/local.rs:399:16
      std::thread::local::LocalKey<T>::with
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/thread/local.rs:375:9
      tokio::coop::with_budget
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:95:5
      tokio::coop::budget
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:72:5
      tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::{{closure}}
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:498:25
      tokio::runtime::basic_scheduler::Context::enter
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:356:19
  15: tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:497:36
      tokio::runtime::basic_scheduler::CoreGuard::enter::{{closure}}
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:555:57
      tokio::macros::scoped_tls::ScopedKey<T>::set
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/macros/scoped_tls.rs:61:9
  16: tokio::runtime::basic_scheduler::CoreGuard::enter
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:555:27
      tokio::runtime::basic_scheduler::CoreGuard::block_on
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:488:9
      tokio::runtime::basic_scheduler::BasicScheduler::block_on
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:168:24
  17: tokio::runtime::Runtime::block_on
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/mod.rs:475:46
  18: pageserver::storage_sync::storage_sync_loop
             at /home/circleci/project/pageserver/src/storage_sync.rs:902:25
  19: pageserver::storage_sync::spawn_storage_sync_thread::{{closure}}
             at /home/circleci/project/pageserver/src/storage_sync.rs:857:13
      <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/panic/unwind_safe.rs:271:9
      std::panicking::try::do_call
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panicking.rs:406:40
      std::panicking::try
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panicking.rs:370:19
  20: std::panic::catch_unwind
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panic.rs:133:14
      pageserver::thread_mgr::thread_wrapper
             at /home/circleci/project/pageserver/src/thread_mgr.rs:223:18
  21: pageserver::thread_mgr::spawn::{{closure}}
             at /home/circleci/project/pageserver/src/thread_mgr.rs:175:13
      std::sys_common::backtrace::__rust_begin_short_backtrace
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/sys_common/backtrace.rs:123:18
  22: std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/thread/mod.rs:484:17
      <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/panic/unwind_safe.rs:271:9
      std::panicking::try::do_call

So delta layers is filled by multiple versions of filenodemap. As far as there are many relations, this file is large enough ~50kb.
The only possible solution seems to be splitting one key between different layers.
As far as we support overlapped layers, it should not cause problems.
I will tr to prepare patch.

Just added some workaround: check not only LSN range but also size of open layer.
Still think that serialization of the whole catalog should be avoided, because storing several extra gigs of data seems to be bad idea.

This was fixed in commit 572ae743883df19f5ca9f32d7cdce7a7ca5cca4f.

The commit message does not mention L1 layers, could they now also be partitioned properly?
https://neondb.slack.com/archives/C033A2WE6BZ/p1658254390210739?thread_ts=1658226076.657579&channel=C033A2WE6BZ&message_ts=1658254390.210739
If not, let's reopen the issue before that's addressed so, that those layers are uploaded for the case from the thread.

There are in-memory (open) layers, L0 persistent layers and L1 persistent layers.
Right now compaction is triggered when N L0 layers are created, then  this layers are shuffled into L1 layers.
L1 layers are never compacted.
This patch limits size of open layers (and so size of L0 layers) and size of L2 layers created during compaction.

L2 layers created during compaction

Not sure what are those, but I see that this patch won't help the existing oversized L1s, thank you.

Sorry, mistyping. I mean L1 layers.
But yes, you are right: existed oversized L1 layers will not be reshuffled with patched version.


Missing setup instruction @ README.md

"node server.js" in Web-Audio-Editor directory

Thx, fixed it :)


Has the amend-algos api been added?

Has the amend-algos api been added?

Added in latest version


two issues

Hello,
sorry for the undescriptive title, it's just that I got two differente issues, so I didn't know how to phrase them.
first, I tested this out on this practice website. https://www.mistersyms.com/tools/gitgud/ I didn't get any output in the log at all, as if the program was entirely inactive.
secondly, in dead by daylight, I also didn't get any results, however there I got log outputs. I modified your script to add further log outputs, specifically also giving me log output any time the controller.skillcheck method got called. that showed me that the programm seems to run as it should in dbd. however, it just doesn't press the button. I tried adding a little delay between button-down and button-up, but that also did nothing. It calls the funktion to press space after the delay, however it just doesn't press space.

Hi Milan,The project still has quite a few unresolved issues and improvements that need to be made, but I haven’t had time to develop it further. If you’re still interested in auto skill check projects I suggest taking a look at https://github.com/En73r/DBDEazyQTE, which I believe is still maintained and almost 100% accurate.Cheers On 20 Feb 2024, at 17:39, Milan Matthes @.***> wrote:
Hello,
sorry for the undescriptive title, it's just that I got two differente issues, so I didn't know how to phrase them.
first, I tested this out on this practice website. https://www.mistersyms.com/tools/gitgud/ I didn't get any output in the log at all, as if the program was entirely inactive.
secondly, in dead by daylight, I also didn't get any results, however there I got log outputs. I modified your script to add further log outputs, specifically also giving me log output any time the controller.skillcheck method got called. that showed me that the programm seems to run as it should in dbd. however, it just doesn't press the button. I tried adding a little delay between button-down and button-up, but that also did nothing. It calls the funktion to press space after the delay, however it just doesn't press space.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

Hi Milan,The project still has quite a few unresolved issues and improvements that need to be made, but I haven’t had time to develop it further. If you’re still interested in auto skill check projects I suggest taking a look at https://github.com/En73r/DBDEazyQTE, which I believe is still maintained and almost 100% accurate.Cheers On 20 Feb 2024, at 17:39, Milan Matthes @.***> wrote:
Hello,
sorry for the undescriptive title, it's just that I got two differente issues, so I didn't know how to phrase them.
first, I tested this out on this practice website. https://www.mistersyms.com/tools/gitgud/ I didn't get any output in the log at all, as if the program was entirely inactive.
secondly, in dead by daylight, I also didn't get any results, however there I got log outputs. I modified your script to add further log outputs, specifically also giving me log output any time the controller.skillcheck method got called. that showed me that the programm seems to run as it should in dbd. however, it just doesn't press the button. I tried adding a little delay between button-down and button-up, but that also did nothing. It calls the funktion to press space after the delay, however it just doesn't press space.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>


fix "blank mnemonic" error when only using a BIP39 seed (no mnemonic phrase) and then changing the coin

Thanks, good catch!

Steps to reproduce the issue:

Set the "BIP39 Seed" field. I used '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'.
Change the coin from Bitcoin to something else (doesn't matter which other coin)
See an error "Blank mnemonic"

@iancoleman any way I can help to bring back this fix?


Symfony 4 PHP73 fails with error 'Attempted to load class “Kernel” from namespace “App”

to avoid repeating question and possible solution please check here. https://stackoverflow.com/questions/58677356/symfony-4-php-application-deployed-to-gae-fails-with-error-attempted-to-load-cl

Issue was caused by upload of vendors folder and one composer @auto_script entry


[Trade] Price and slippage error when there is dust liquidity

When there is dust liquidity, the TradeWidgetBuySell remains active, but sometimes when the user inputs a source amount, the target is rounded to 0 and the error shown is "Notice: price & slippage are unknown".
Actual: Show the "Notice: price & slippage are unknown", no price and enabled CTA

Expected: Show an error border, disable CTA and show an indication of the available liquidity

This error happens because the SDK outputs an effective rate of 0 when swapping. The dust amount keeps the form active, and an effective rate of 0 being returned means that the liquidity is not rechecked.


WIP [BEAM-12753] Enable Flink TestStream integration tests

Checking if Flink network buffer bugs impacting the Go SDK's TestStream integration tests are resolved.

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

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

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


FftOperations.RFFT_WithoutChecks doesn't use input

RFFT_WithoutChecks(Span<System.Numerics.Complex> destination, Span<System.Numerics.Complex> input) only uses the length of the input parameter, and not the data inside. The ForwardReal method calling this method apparently isn't tested.
I am curious about the ForwardReal methods. Are they supposed to be identical in output to the corresponding numpy methods? I ask because the  the numpy.fft.rfft method states "If the input a contains an imaginary part, it is silently discarded." Secondly, the purpose of rfft seems to be increased efficiency, because it uses a different algorithm to avoid calculating the portion thrown out.

Hi @FrankHileman, thanks for raising this issue!
Let's take a closer look at the code under discussion:
https://github.com/swharden/FftSharp/blob/6f4c322781a792a770a01c67f562911d9e5761eb/src/FftSharp/FftOperations.cs#L86-L101

The ForwardReal method calling this method apparently isn't tested.

Thanks for pointing that out! I'll start by adding this test now, then follow-up.


Make ARRAY_TO_MV a not deterministic function

Fixes #13595 by making ARRAY_TO_MV a non deterministic function.
As defined in SqlOperator Calcite javadoc, a function is deterministic if and only if

Returns whether a call to this operator is guaranteed to always return the same result given the same operands; true is assumed by default.

Which is not true in the case of ARRAY_TO_MV, whose semantic is actually not implementable in Calcite because it actually depends what is being done with the value returned.

Codecov Report
Attention: Patch coverage is 0% with 9 lines in your changes missing coverage. Please review.

Project coverage is 0.00%. Comparing base (59551e4) to head (5934ed3).
Report is 764 commits behind head on master.

Files
Patch %
Lines

...e/pinot/calcite/sql/PinotSqlTransformFunction.java
0.00%
5 Missing :warning:

...e/pinot/common/function/TransformFunctionType.java
0.00%
3 Missing :warning:

...ache/pinot/calcite/sql/fun/PinotOperatorTable.java
0.00%
1 Missing :warning:

:exclamation:  There is a different number of reports uploaded between BASE (59551e4) and HEAD (5934ed3). Click for more details.
HEAD has 53 uploads less than BASE

Flag
BASE (59551e4)
HEAD (5934ed3)

integration
7
1

integration2
3
1

temurin
12
1

java-21
7
1

skip-bytebuffers-true
3
1

skip-bytebuffers-false
7
0

unittests
5
0

unittests1
2
0

java-11
5
0

unittests2
3
0

integration1
2
0

custom-integration1
2
0

Additional details and impacted files
@@              Coverage Diff              @@
##             master   #13618       +/-   ##
=============================================
- Coverage     61.75%    0.00%   -61.76%
=============================================
  Files          2436     2480       +44
  Lines        133233   137040     +3807
  Branches      20636    21306      +670
=============================================
- Hits          82274        0    -82274
- Misses        44911   137040    +92129
+ Partials       6048        0     -6048

Flag
Coverage Δ

custom-integration1
?

integration
0.00% <0.00%> (-0.01%)
:arrow_down:

integration1
?

integration2
0.00% <0.00%> (ø)

java-11
?

java-21
0.00% <0.00%> (-61.63%)
:arrow_down:

skip-bytebuffers-false
?

skip-bytebuffers-true
0.00% <0.00%> (-27.73%)
:arrow_down:

temurin
0.00% <0.00%> (-61.76%)
:arrow_down:

unittests
?

unittests1
?

unittests2
?

Flags with carried forward coverage won't be shown. Click here to find out more.

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

As defined in SqlOperator Calcite javadoc, a function is deterministic if and only if

Returns whether a call to this operator is guaranteed to always return the same result given the same operands; true is assumed by default.

Which is not true in the case of ARRAY_TO_MV

Technically, ARRAY_TO_MV is deterministic right since it is guaranteed to always return the same result given the same operands? Essentially, we're never going to get a different result for something like ARRAY_TO_MV(RandomAirports) = 'MFR' when applied to the same row. Although this does seem to fix the issue described in https://github.com/apache/pinot/issues/13595, so as long as there are no other side effects, I guess we could live with this (especially considering that the ARRAY_TO_MV function itself is a bit of a hack).

That makes sense, thanks for the explanation!


Panel sometimes not loading

After update to current dev (2023.4.0b4) the panel sometimes just doesn't load in Safari. Chrome seems fine.
It loads after some page reloads 🤷
[Error] Unhandled Promise Rejection: Error: The following properties on element knx-frontend will not trigger updates as expected because they are set using class fields: hass. Native class fields and some compiled output will overwrite ...
	performUpdate (reactive-element.js:774)
	(anonyme Funktion) (reactive-element.js:705)
	asyncFunctionResume
	(anonyme Funktion)
	promiseReactionJobWithoutPromise
	promiseReactionJob

maybe related: https://github.com/nielsfaber/alarmo/commit/09199653e067eeb6d5b3128949a44740a6164835

This didn't occur a single time in my tests in the last two weeks. I guess it is fixed in upstream somewhere.


Enable importing the Synchronization module

Just like https://github.com/apple/swift-foundation/pull/742, we need to make the same changes to the SCL-F modules. We retain the compiler-added rpaths for libraries in the build folder and now overwrite them with $ORIGIN when installing, and we also add a public auto link to swiftSynchronization to ensure that our libraries pull in libswiftSynchronization.a in the static swift SDK.

@swift-ci please test

@swift-ci please test

@swift-ci please test

@swift-ci please test Windows platform


Error building for macOS 10.15

I am currently trying to integrate one of my libraries(https://github.com/alexanderwe/ConventionalCommitsKit), which uses swift-parsing into one a CLI for macOS 10.15. As soon as I integrate my library into the CLI project I get the following compilation error, when I run swift build.
error: the library '_URLRouting' requires macos 10.10, but depends on the product 'XCTestDynamicOverlay' which requires macos 10.15; consider changing the library '_URLRouting' to require macos 10.15 or later, or the product 'XCTestDynamicOverlay' to require macos 10.10 or earlier.

When I build via Xcode everything works as well as when I build my library alone (with swift build) but inside the CLI project I get this compilation error when compiling with swift build. Do you have any idea why _URLRouting needs to have macOS 10.10 ?
This is the Package.swift for my CLI project so far:
// swift-tools-version:5.6
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription

let package = Package(
    name: "MyCLI",
    platforms: [.macOS("10.15")],
    products: [
       .executable(name: "mycli", targets: ["MyCLI"]),
   ],
    dependencies: [
        // Dependencies declare other packages that this package depends on.
        // .package(url: /* package url */, from: "1.0.0"),
        .package(url: "https://github.com/apple/swift-argument-parser", exact: "1.1.0"),
        .package(url: "https://github.com/alexanderwe/ConventionalCommitsKit.git", from: "1.0.1")
    ],
    targets: [
        // Targets are the basic building blocks of a package. A target can define a module or a test suite.
        // Targets can depend on other targets in this package, and on products in packages this package depends on.
        .executableTarget(
            name: "MyCLI",
            dependencies: [
		.target(name: "Commands")
            ]
        ),
        .target(
            name: "Commands",
            dependencies: [
                .product(name: "ArgumentParser", package: "swift-argument-parser"),
                .product(name: "ConventionalCommitsKit", package: "ConventionalCommitsKit")
            ]
        ),
	.target(name: "Core")
    ]
)

I have the feeling I oversee something fundamental here - but I cannot figure it unfortunately

@alexanderwe Sorry for the delay, but have you tried our official package?
https://github.com/pointfreeco/swift-url-routing
The _URLRouting package that is shipped directly in this library was a beta and is out-of-date.
It is possible we have our platform requirements stricter than they need to be, and we'd definitely be down to discuss changes!

Going to close this since it hasn't been replied to in awhile, but if you believe you've found a bug, please open a new issue with a way to reproduce, or if you'd like to ask a question, please start a discussion.

Hey @stephencelis I am so sorry.. I totally forgot to reply to this issue and basically forgot it exists. I stopped working on that project that caused this error. If I would still see this error in the latest version I will create a new issue but I doubt it.
Sorry for any inconveniences caused by not answering

No worries at all. We know how it is :smile: Hopefully the issue is resolved in the current version.


Remove custom page template feature flag

Feature Description
Remove the feature flag and all relevant code and make sure the feature has full test coverage (both automated and QA).

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria

Implementation Brief

Verified in QA

Note: Not sending this to UAT because the previous issues addressing different parts of Page templates have already been sent to UAT.


Contribute form working, stripe API being used, but donations not hooked up yet.

Intermediate checkin.

👍


Enforce keyword order between override and static/async

The order is static override async.
Fixes #43606

Some tests were already using override static. I have literally no opinion on this, aside from that we should enforce an order, since pretty much everything else has an order enforced.

The current check of modifier order is painful. Are there any possible to map modifiers into some priority. And we just check the order of priority value.

I agree @Kingwl, looking at that function, it’s begging to be refactored into something more declarative. Personally I would love to see something like that implemented.

@dsherret

@nicolo-ribaudo

Thanks for the heads up @DanielRosenwasser!

Should there also be an order for abstract/override?
https://www.typescriptlang.org/play?ts=4.3.0-dev.20210426#code/IYIwzgLgTsDGEAJYBthjAgQmgpgYVXQQG8AoBBUSGeBAWwEYAKASgC4FqBLAOwHMA3OUrhocRHQBMrDt35CAvqVJUxtFGgwBZAJ4FNAVgQ4AHhBw8AJhmxh8hDGQoB7AG44oULpZwjq4+mZ2TmheQWFVGkQ3Dy8femlguXClIA

Yes 🤦

🤦


⚠ Bofrost.be has degraded performance

In 8b00b28, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1635 ms

Resolved: Bofrost.be performance has improved in ef7da05 after 13 minutes.


Backgrounding with Ctrl-Z, then resuming, leaves gemacs in an unusable state

Try the following on a Unix-esque system (Linux, in my case):

Start up gemacs
Tap Ctrl-Z to background it for a moment while you go find a piece of information you need in the editor.
After finding that bit of info, type "fg" to foreground it.

Rather than restore the screen mode, it sets waiting for input on stdin. Ctrl-C kills it.
i suspect, without in any way being sure, that this is simply a matter of restoring the screen mode after resuming. How that's handled in Go, i haven't a clue (i'm a C guy).
My use case: my web hoster recently removed emacs from their shared servers and refuse to reinstall it, telling me i "will simply have to use vim." And yet 25 years of emacs muscle memory Does Not Simply Use Vim. So... gemacs is the only light-enough-weight alternative i've found for installing there. It often happens that i'm editing a file, need to background the editor to copy a filename or some such, and resume the session to paste that bit of info into the editor. That becomes impossible without running a second SSH session.

@gdamore What's the recommended approach here-- should tcell clients be catching ctrl-Z / SIGTSTP and noticing when we come back... or something else?

@sgbeal Stephan, thanks for the report. It is unfortunate. I messed with it for a little bit and can see that SIGCONT can be caught to notice resumption. However I had a little but not enough luck with re-initializing the terminal.  So this will have to stay open until someone more sophisticated about terminal semantics has an idea.
As a workaround, I suggest using the GNU screen or tmux terminal multiplexers and just leaving gemacs going. Start a 2nd terminal with screen and use that to get the side bits of info.

Thank you for looking into this! If a solution presents itself i'll be thrilled.
Unimportant sidebar: "The problem" with screen is that its default configuration interferes with (==intercepts, for its own purposes) emacs-style key combinations (which also means bash and 25-ish years of my well-honed finger-muscle memory) ;). My hoster apparently doesn't have screen installed, in any case, so even reconfiguring its braindead defaults isn't an option :/. Fortunately, though, this is not an everyday problem, and now that i know about it, my biggest enemy is not the ctrl-z behaviour itself, but my fingers reflexively wanting to tap ctrl-z before they tap ctrl-x ctrl-s ;).

yes, the screen defaults must be rebound. Here is my usual .screenrc which remaps the main control key to Ctrl-z.  Two birds with one stone.
https://github.com/glycerine/screenrc

Thank you!
That leads to an interesting gemacs misbehaviour: i'm trying to copy/paste the URL to that repo into the screenrc so that i know where i got it later, and pasting https://github.com/glycerine/screenrc into gemacs stops pasting after https://git.
To reproduce:

open gemacs
Select this URL with your mouse: https://github.com/glycerine/screenrc (optionally tap ctrl-c, but it's not necessary)
Try to paste it into gemacs by middle-clicking the mouse.

Result: https://git gets pasted.
Weird.
It's not specific to a URL: gemacs stops pasting after 11 characters (or bytes, i'm not certain which), regardless of what i paste that way:<PHONE_NUMBER>01234. Yup. 11 chars is the paste limit. i've reproduced this with two different terminal emulators (MATE terminal and xterm).
Weird.

Yeah. Sorry. Not going to have a fix for that short-paste. Probably ever.
Maybe try configuring vim with emacs keybindings...
https://github.com/maxbrunsfeld/vim-emacs-bindings
https://unix.stackexchange.com/questions/49203/vim-customized-with-emacs-commands-insert-mode-only

Out of curiosity, what's the cause of the short paste? That seems like a weirdly specific limit.

I don't know. You'd have have to do the research.  Pseudo terminals can have line disciplines that can have archaic default limits would be my guess.


ARM: add support for arm architecture

The suggested enhancement involves adding support for ARM architecture in the CAPA tool and improving its capabilities on ELF files.
Here are the steps involved:

Changes to capa/features/common.py and capa/main.py: Simple changes have been made to add ARM architecture to the list of supported architectures in CAPA.

Changes to capa/features/extractors/viv/: More complex changes have been made to this directory to enable disassembly of ARM binaries.
Specifically, a new file, capa/features/extractors/viv/insn_arm.py, has been added.
This file replicates the logic of capa/features/extractors/viv/insn.py, but adapts its functions to ARM mnemonics and patterns specific to ARM binaries.

Testing: Each feature has been tested using binaries written in assembler or compiled with GCC (version 9.4.0), and the final result of the modifications has been evaluated over Linux Arm Malware samples, mostly Mirai.

Improving capabilities on ELF files: The modifications also aim to improve CAPA's capabilities on ELF files. Specifically, the following changes have been made:

ELF Stripper: CAPA's current version fails to detect the underlying operating system in ELF files, leading to premature termination of the analysis. To address this, Linux is assumed to be the default operating system if the analysis couldn't determine the underlying OS. This change is made in capa/features/extractors/elf.py.
Statically linked ELF files: The extractor was unable to yield the API features in statically linked ELF files, resulting in poor detection capabilities. To solve this problem, upstream detection of statically linked ELF files is performed, and certain basic blocks are marked as library function using a hard-coded table to translate the syscall number into their function name. This change is made in capa/features/extractors/viv/syscall.py.

Note:

While adding support for ARM architecture in CAPA, it was found that some ARM samples produce a lot of warnings in the provenance of the vivesct disassembler. However, these warnings do not seem to interfere with the final result of CAPA's analysis.

As for x86/x84 binaries, it was observed that the statement of some features is dependent on specific patterns, which may be related to the type and version of the compiler used. This dependency could potentially limit CAPA's abilities when analyzing these binaries.

Checklist

[ ] No CHANGELOG update needed

[ ] No new tests needed

[ ] No documentation update needed

Are you ok to add this features in a future version? We haven't looked yet how to add tests. Do we need to write them?

Hi @gauthier-wiemann, welcome to the capa community!
I'm so excited to see this contribution and the work that you've done. The explanation in the PR text gives a nice background on what we can expect to see in the code. I think that everyone on the team looks forward to reviewing the changes.
Just to set expectations, we're in a busy period right now as we prepare to deliver a workshop about capa at Brucon (are you going!?). So, we'll be a little quiet until next week. Then, I hope that we can work together to get these changes merged into master!

We haven't looked yet how to add tests. Do we need to write them?

Yes. I'm not yet sure how thorough they need to be (i.e., we have hundreds for x86 code features, but I'm not sure it's fair to require 1:1 tests for Arm immediately). Please consider if you can share the example binaries that you created/collected and we can incorporate them into the testfiles repository.

ref #1774


Docs for vertex.GetVertex API

Blocked on https://github.com/ava-labs/avalanchego-internal/pull/1257

Corresponding Postman Collection PR


[Doc]--Update documents for support consumer priority level in failover mode

(If this PR fixes a github issue, please add Fixes #<xyz>.)
Fixes #
(or if this PR is one task of a github issue, please add Master Issue: #<xyz> to link to the master issue.)
Master Issue: #
Motivation
Explain here the context, and why you're making that change. What is the problem you're trying to solve.
Modifications
Describe the modifications you've done.
Verifying this change

[ ] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API: (yes / no)
The schema: (yes / no / don't know)
The default values of configurations: (yes / no)
The wire protocol: (yes / no)
The rest endpoints: (yes / no)
The admin cli options: (yes / no)
Anything that affects deployment: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? ( no)
If yes, how is the feature documented? (docs)
If a feature is not applicable for documentation, explain why?
If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

This doc is updated for the Pulsar 2.4.0 released PR: https://github.com/apache/pulsar/pull/2954.
The doc is updated for the master right now. once it is reviewed and approved, it will be added to the previous releases.


Factory use ID of array definition as class name if class skipped + Fix bug: factory don't use definitions on resolve dependenices in some cases

Q
A

Is bugfix?
✔

New feature?
❌

Breaks BC?
✔

Fixed issues
#109 #118

Awesome.


Error thrown by Terser is not handled

Hi there, we've encountered a problem when the minified source does not output code. Found on this line here, the error from terser v4.8.0 is not handled, but rather we see an error where the length of the minified code has no length (found here).
[!] (plugin size-snapshot) TypeError: Cannot read properties of undefined (reading 'length')

Wondering if the solution below would be welcomed to throw this error (pseudo-code):
const { code: minified, error: minifiedError } = minify(source);

if (minifiedError) {
  throw minifiedError;
}

Happy to open up a pull request to patch.

Thanks! Yes a patch would be welcome, but unfortunately I cannot guarantee when I may have a chance to understand and review it. And adding a test case would be especially helpful.
I think this plugin was made to work with the original rollup-plugin-terser, looks like newer @rollup/plugin-terser is now using terser v5.

Possibly related: https://github.com/TrySound/rollup-plugin-size-snapshot/issues/61
Most important for me would be a simple reproduction that we can keep in a test case.

Thanks for getting back so promptly @brodybits and apologies for the delay in response! Really appreciate you updating with a way to know if Terser is failing, since it on our path to fixing build errors we are seeing in our projects. I talked to my team and we have time and I am happy to write a test case once we sort out a way of replicating. We are still looking into the reason it is failing, but you can see the failure here.

you can see the failure here.

https://github.com/zendeskgarden/react-containers/pull/493 ... namely this commit: https://github.com/zendeskgarden/react-containers/pull/493/commits/1cbd6f675495403dd062fd4d9d5d36b170661d96
I will try this myself as well.

@brodybits Thank you! It looks like optional chaining was the culprit behind the failure (here), and it does seem to be supported in v5.2.0 of Terser. Upgrading would probably be the best option here - if you don't oppose, I'll raise a PR with the version upgrade accompanied by tests.

Thanks for PR #20, reviewing it now.
I discovered there could also be issues if the source has only comments or blank lines, see #21.
I think this will need me to drop Node.js pre-14 support, see #18, will try to do this soon.
I am thinking that the issue with error handling could continue intermittently with the lag time between new ES features coming and terser updates, may have to keep #19 open for a while.


docs(form-field): update custom form field control docs

Documentation Feedback
The guide to create a custom form field control is beyond confusing. Some suggestions:

The stackblitz is very very hard to read. There is one .ts file with 2 components and 3 classes, and one of the components in the file references a separate template file with a completely different name. Why not just use another file altogether for the .ts and use the same name as the template?
The accessibility section briefly mentions things like setDescribedByIds(), but the actual implementation doesn't even use many things mentioned (and when I tried to use the exact example, was met with many errors I couldn't get past).
accommodate strict typescript settings, which many people use/are forced to use at work. I ran into many problems with this. Many @Inputs needed to be initialized, and I wasn't sure if I should just use the safe navigation or non-null assertion operators. I think the official documentation should be using the strictest forms of typechecking/null checking instead of the many "any" types that are so often used (not in this guide, but elsewhere in angular docs). It would make things much easier, and also stop teaching so people bad habits.

Affected documentation page
https://material.angular.io/guide/creating-a-custom-form-field-control

For the first bullet point, I disagree. Having two components defined in a single ts file pointing to two separate html files doesn't increase the complexity. Preference on how code in the examples is structured is not something we would take action on, sonless others also find that this has a significant impact on their ability to understand the example we most likely won't adopt this change
For the a11y and strict ts issues, the original purpose of this docs example is not to be perfect battle-tested and ready to use implementation of a phone input. Its only goal was to demonstrate some of the capabilities of the custom form field control
That being said, I'll keep this issue open so our team can discuss potentially enforcing strict ts, no a11y warnings, etc. on our docs examples


Investigate row locking mechanisms in CosmosDB

Let's see if CosmosDB has anything similar to a select for update or allows locking rows in general.
Following questions should be answered:

what row-locking mechanisms exist?
can they be time-limited?
is there some sort of default reset strategy?
is some sort of state information stored, i.e. can we reconstruct which connector replica locked the row?

CosmosDB itself does not support automatic row locking or a SELECT ... FOR UPDATE statement per se, so a solution was devised where the document itself has a lease property, which contains information about whether the document is locked or not.
the query is then performed in a stored procedure, atomically updating the lease property.


Adding DtoD support to CUDA shared memory feature

Hello world,
This patch:

Adds DtoD CUDA memcopy support which allows to pass video frames decoded in CUDA memory to Triton.
Changes API of set_shared_memory_region function to accept CUDA memory beside numpy arrays.

I'm not certain about changes in Python module API so please free to give me guidance on how to implement it better.

@rarzumanyan  Can you describe how your changes work? For device=gpu, what is the input_values for set_shared_memory_region?
I would suggest adding an example demonstrating the DtoD copies  similar to simple_http_cudasm_client. You can can have some transitive flow of data on the GPU. It will be useful in testing and understanding the API as well.

Hi @tanmayv25

Can you describe how your changes work?

Sure.
The main change in the patch is the CudaSharedMemoryRegionSetDptr function which acts very similar to CudaSharedMemoryRegionSet.
The only difference between them is that CudaSharedMemoryRegionSet performs HtoD CUDA memcpy, while CudaSharedMemoryRegionSetDptr does DtoD CUDA memcpy.

For device=gpu, what is the input_values for set_shared_memory_region?

When device==gpu, set_shared_memory_region function expects input pointer to be a memory region in vRAM, allocated with CUDA driver or runtime API.

I would suggest adding an example demonstrating the DtoD copies

Makes total sense, I just want to make sure you're happy with proposed API changes first.
As soon as this is sorted out, I'll add one more patch with sample to this PR.

Hi @CoderHam

Why not use a device flag and condition on that to use cudaMemcpyDeviceToDevice or cudaMemcpyHostToDevice?

That's perfectly fine by me to add extra flag. However, I didn't add it due for following reasons:

Didn't want to contaminate namespace with yet-another enum for device identification and export it to Python.
cudaMemcpy has enum to identify the memcpy direction but not all values are relevant.
Integer or boolean flag isn't easy to follow.

That's why I've decided to introduce another function for that.
If you want CudaSharedMemoryRegionSet signature to be extended with device flag anyway - please let me know, I'll do that.

@rarzumanyan on second thought your arguments for not contaminating the namespace / enum are valid. You can just make the new changes I suggested for handling the input_values field specially for the case where it is a (cuda) device pointer

@tanmayv25 who would be a good person to task with reviewing the remainder of this code/review?

@tanmayv25 friendly ping

@jbkyang-nvi, @tanmayv25 has suggested you might be a good person to request a review from for this code. Can you help with that?

@rarzumanyan are you able to add testing for this feature?


🆕 Software Suggestion | Mailfence.com

Basic Information
Name: Mailfence
Category: Email
URL: https://mailfence.com/
Description
Why I am making the suggestion
Based on our research last year, it looks like Mailfence didn't support DNSSEC nor DANE which both are now part of our email criteria. But actually it appears they now support both. Let's double-check if they now fully meet our criteria.
My connection with the software

[x] I will keep the issue up-to-date if something I have said changes or I remember a connection with the software.

It has TLS 1.0 enabled.
https://www.hardenize.com/report/mailfence.com/1589261161#email_tls
https://www.hardenize.com/report/kb.mailfence.com/1589263629#www_tls
It depends only on AES. It does not support Chacha 20.
https://www.hardenize.com/report/mailfence.com/1589261161#www_tls
It does not support Expect CT.
https://www.hardenize.com/report/mailfence.com/1589261161#www_expect_ct

This is in the https://github.com/privacytools/privacytools.io/tree/pr-add_mailfence branch, the reason it was not added is because they currently do not use any kind of encryption at rest.
From: Daniel Gray

Quick question, do you use any encryption at rest?
I expect that you probably do, but I didn't see anything offically mentioned about it.

From: Mailfence Support

That is presently not the case. We are working on it.


No more need to install pre-commit using pip

After we drop el8 support there should be no more need to install pre-commit from the PyPI repository as the el9 build is there: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2023-6ab9066c39

Forgot to remove the actual pip installation, should be good now.


Change editor version to Unity 2021.3.1f1 International Edition

Henry can not download Chinese editor 2022.3.0f1c1 version，so I change editor version to 2022.3.1f1  Inernational version，easy for Henry Track Model integration work

Works for me now. Thanks.
(Also figured that the corrupted scene is caused by not enabling git lfs. It works fine for now! :)


Proposed bugfix for "seeElement" (nightmare)

I.seeElement("#header")

Using CodeceptJS v1.0.0 with Nightmare.
While the element is visible, I receive an error with an incorrect stacktrace:
  expected number of elements on a page '0' not to equal '0'

  Scenario Steps:

  - I.executeScript(function()) at Test.<anonymous> (d1.login2.test.js:77:26)
  - I.dontSeeInCurrentUrl("diagnose/list") at Test.<anonymous> (d1.login2.test.js:76:5)
  - I.waitFor(function()) at logout (d1.login2.test.js:66:5)
  - I.click("#menuLogout") at logout (d1.login2.test.js:65:5)
  - I.click("#header button") at logout (d1.login2.test.js:64:5)
  - I.seeElement("#header") at logout (d1.login2.test.js:63:5)
  - I.click("button#login") at Object.login (steps_file.js:10:12)
  - I.fillField("input#password", "xxx") at Object.login (steps_file.js:9:12)
  - I.fillField("input#username", "xxx") at Object.login (steps_file.js:8:12)
  - I.amOnPage("/#/diagnose/list") at Test.<anonymous> (d1.login2.test.js:73:5)

When inspecting the source code and element, I notice the element offsetParent is null. The seeElement ignores those elements, see https://github.com/Codeception/CodeceptJS/blob/master/lib/helper/Nightmare.js#L397
When I look at the nightmare implementation of visible, they check for offsetWith and offsetHeight, see https://github.com/segmentio/nightmare/blob/master/lib/actions.js#L72
This seems to me a more reliable method.
As a workaround, I now use a custom helper:
'use strict';

class SeeElement extends Helper {
  seeElement(locator) {
    this.helpers['Nightmare'].browser.visible(locator);
  }
}

module.exports = SeeElement;

Looks like you have fixed this issue. Could you patch the Nightmare helper and write a failing test for this case? If writing test seems hard just patch it and send PR and I will finish it

Fixed in v1.1.6 which was release today.
Updated the behaviour as suggested by this ticket


Rollup through junction object only partially working

I just updated to the latest version 1.6.29 today to ensure I have the latest updates since I saw some updates related to the grandparent rollup features.
I have a use case where I'm trying to roll up an opportunity count to contacts through the standard salesforce opportunitycontactrole junction object. There will be cases where the same contact could have multiple contact roles on each opportunity, so I want to only count distinct opps in the rollup. I believe I have set up the custom metadata record properly for this use case because when I perform a full recalculation I return the correct value for my rollup. But something is off with how this is triggered and I can't figure it out.

Full Recalculation
Full recalculation works perfectly fine:
Opp A has 2 contact roles for the same contact
Opp B has 2 contact roles for that same contact
The contact rollup correctly returns a value of 2 distinct opportunities upon recalculation.

Insert/Update Scenarios
The rollup is not working upon insert or update of contact role records. Upon insert or update of contact role records, nothing happens to the contact rollup field.

Deletion Scenarios
It will work upon deletion, as long as there is one remaining opportunitycontactrole record for the opp linked to the contact.
This scenario works:
Opp A has 2 contact roles for the same contact
Opp B has 2 contact roles for the same contact
-I manually clear the rollup field value on contact record
-I delete one of the contact roles for one of the opps
Result following the deletion: The rollup fires and correctly returns a value of 2 distinct opportunities into the contact rollup field
This scenario doesn't work:
Opp A has 2 contact roles for the same contact
Opp B has 1 contact roles for the same contact
-I manually clear the rollup field value on contact record
-I delete the last contact role for Opp B
Result following the delete: Nothing happens to the contact record. The contact rollup field still has no value

I'll take a look and see what I can see - I'll let you know if I have any questions

@jamessimone nevermind...don't waste your time, was me being dumb again. I thought we had opp rollups and thus the rollup trigger set up there, but I was thinking of another org apparently.... One of our devs corrected for me and seems to be working well now :)

closing

well at least now we have a working example here if anyone want to use this for reference!

@alxman2021 no worries whatsoever! Your screenshot will serve as a great reference in the event anybody else is having this issue


[core] Add ignoreUnknown to Snapshot

Purpose

In order to make the old reader compatible with the new format

Tests

API and Format

Documentation

+1