Equals

Closes #437

When writing PRQL I think of assigns, aliases and named args the same way: take r value and store it into l value.
The reason that you can arbitrarily change l value for assigns and not for named args, is that named args are expected and assigns are not.
It's so similar use case, that I think is should use the same punctuation.
When I first saw PRQL, : was the least readable part of the language. Otherwise, one can start reading and understand how the underlying table is manipulated. Maybe that's my bias because I mostly know languages that already use = as assign operation, but after @snth expressed the same opinion, I think that = should be used for all named expressions.
For type annotations I agree, we can use :: instead of :, since it won't be used that much. It could be only :, but let's leave that for any future needs.
To be honest, func add::number x::number to::number:1 = ... was my excuse to get started on this. But I do have justified reasons for changing : to =. Sorry for pushing my agenda by opening pull requests :D

Sorry for pushing my agenda by opening pull requests :D

Ha! This is as good a reason as any.
OK, I don't have a super-strong POV here.
Given the size of the change, could we ask for unfiltered thoughts from @charlie-sanders and @rbpatt2019 ? And @snth? (and anyone else who is interested)

First of, let me preface my comments with saying that I am writing as an expectant user of the language, so I don't know too much about what happens under the hood in terms of lvalues, rvalues, etc... . That said I will probably veer off into some philosophical comments as well.
I find the syntax in this PR much easier to read, i.e. I prefer the = over : in the cases addressed in this PR.
Since I first got involved in the discussion around this, I have also thought a bit about the semantics of it and I think that philosophically it is also correct. In something like
derive [ gross_salary = salary + payroll_tax ]

while you may think of it as an "assignment", it is an equality in that "gross_salary" is synonymous with "salary + payroll_tax" and you can use either in any expression and evaluate to the same thing.
Similarly in
join de=dept_emp [emp_no]

"de" and "dept_emp" refer to the same table and can be used interchangeably (with the caveat that "de" is more specific than "dept_emp" if the "dept_emp" table is joined multiple times).

I think my previous comment could be extended to filter clauses and join conditions.
So for example
filter country_code = "USA"

to me would make sense because while above that line "country_code" is not synonymous to "USA", after that line it is and you can use the terms interchangeably.
Similarly for
join dm=dept_manager [dm.dept_no = de.dept_no]
```,
after that line you are guaranteed that `dm.dept_no` is the same as `de.dept_no`, i.e. they're equal.

I know this isn't quite the syntax we have proposed but to me this would make sense.

The one big exception is equality testing in expressions.
So if I have
derive [ is_manager = job_title == "manager" ]

here it is not the case that job_title and "manager" are synonymous and the point of the expression is to test where they are and where they are not.
So here there is an active test being performed. I'm happy with the == notation here since that seems to be the commonly accepted one. Given how in my mind this is almost asking a question of the data I also thought about what about something like ?= for this, e.g.
derive [ is_manager = job_title ?= "manager" ]

To me this almost makes it clearer that you are asking the data whether this is the case or not.

I'm not sure where I stand in terms of named args. If the argument is given then there is indeed an equality. If the argument is supplied then that's not the case. 🤷♂ Having the = here is pretty well established in most languages so happy to go with it.
For type annotations a single : would be nicer in my opinion as that seems to be the common option in modern languages, Rust, Typescript, Python, are the ones that come to my mind.
The function syntax is a whole topic in itself and I want to comment on that elsewhere.

https://github.com/prql/prql/pull/442#issuecomment-1115887748
Oh, that is a bold move with ?=. It's true that is better conveys what we are doing, but it's quite unconventional.

https://github.com/prql/prql/pull/442#issuecomment-1115873857

join dm=dept_manager [dm.dept_no=de.dept_no]

I see the relation algebra argument here. But assign operation is not entirely equivalent to equality statement:
from employees
select first_name
select name = first_name

... from this point on, name will reference employees.first_name. But first_name will not be in scope anymore and may even get a new value assigned.
Conceptually, assign is very similar to mathematical equality statement, but when writing code, there is a semantic difference. I know that many mathematicians struggle to accept that in programming, equality is expressed with ==, but the truth is that assignment is much more common than equality comparison. That's why I believe that C-style notation got this right, and that R and Haskell are fighting an-uphill-battle.

derive [ is_manager = job_title ?= "manager" ]

Really liking the look of that!

[replace : with = ]

I was on the fence at first but after seeing these examples , the aliases in particular seem easier to read as an assignment.  Are there no parsing concerns with functions ?
func my_func some_parm = 21 = f'...'

derive bar my_func some_parm=32

Is that able to be parsed without issue ?
I'm leaning towards having named parameters and default values use ':' , especially if we are not using that for type annotations, since they aren't assignments really but labels for values passed to the function.
func my_func some_parm:21 = f''
derive bar my_func some_parm:32

I appreciate @snth 's comments; to some extent that brings us to the conceptual discussion of equality vs identity.

it is an equality in that "gross_salary" is synonymous with "salary + payroll_tax" and you can use either in any expression and evaluate to the same thing.

Yes, though let me adjust the terms slightly — when we say gross_salary = salary + payroll_tax, we're saying it's an identity — i.e. it holds for every value of those variables — like x^2 - y^2 = (x+y)(x-y).
This sometimes uses the ≡ symbol in math (though I don't propose to go full APL and start adding unicode...)
When we say job_title == "manager" the job_title == "manager" is an equality — we're saying for some values of those the terms are the same, like x^2 - y^2 = z^2

Oh, that is a bold move with ?=. It's true that is better conveys what we are doing, but it's quite unconventional.

Similar sentiments — actually cool — but I'm not sure this is where we should spend our "novelty budget"

Another dimension I'm grappling with: whether we're defining a new object or not. Copying the list from above:

: for Named args; interp lower:0 1600 sat_score
: for Aliases; from d:department_employees [^1]
: for Assigns; derive temp_c: (temp_f | celsius_of_fahrenheit)
= for "Fundamental assigns"; func interp lower:0 higher x = (x - lower) / (higher - lower)
:: for Annotations, maybe?

Aliases & Assigns are creating something new: gross_salary: salary + payroll_tax — it's me choosing gross_salary.
Named args are passing a value — lower:0 — I'm not choosing the term lower.

Possibly I'm more sensitive to this than others, and so treating those differently would be overfitting to my own mind. The existing state was OK, but if we want to convert some of these to =, there is a coherent state of having Aliases & Assigns as different from Named args.

For type annotations a single : would be nicer in my opinion as that seems to be the common option in modern languages, Rust, Typescript, Python, are the ones that come to my mind.

I quite strongly think that we should put very little weight on the presentation of type annotations. If there is any tradeoff of having type annotations better vs. something else in the language being better, we should weigh on the side of "something else". It should have a similar use to writing macros in Rust — something that most people never learn how to do, even though they reap the benefits every day. Types are really helpful and I've changed my mind on how important they'll be, but the compiler can do almost all the work, and normal user PRQL code can stay clean.
(I'm not saying others are saying anything else, and lmk if there are cases where the compiler wouldn't be able to work something out, given a table schema and code, and users would need to supply annotations)

I'm not sure where that leaves us — what do people think are viable options?

Great work @aljazerzen
I think we're reached stability! :)

Jup, we've discussed all big parts of the language so changes from now on will all be lesser.


Change default API calls to use cache

@BobTorgerson I think we can close this because that's handled on the hostname level, not through code configuration, yeah?

Yes, this can be closed. We already transferred the domain name earthmaps.io to the cache.


⚠ Bofrost.es has degraded performance

In 59871ef, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1513 ms

Resolved: Bofrost.es performance has improved in 26137be after 8 minutes.


Create interpreter for Script

Only needs to adhere to the v0.0.1 protocol at the moment.
Accepts input script, evaluates and returns true or false.

Future Improvements

Support cleanstack and other opcodes like DATASIGVERIFY

Currently only supporting basic stack manipulation functions. Will become richer as lang becomes richer.

[x] Add basic opcode support
[ ] Write tests for opcodes.


chore(lobbies): upgrade multiplayer manager sdk addon

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#160  👈
#159
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @NathanFlurry and the rest of your teammates on  Graphite

Merge activity

Sep 17, 12:24 AM EDT: @NathanFlurry started a stack merge that includes this pull request via Graphite.


[Snyk] Upgrade openai from 3.2.1 to 3.3.0

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade openai from 3.2.1 to 3.3.0.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 2 months ago, on 2023-06-13.

Release notes

Package name: openai

3.3.0 - 2023-06-13Add support for function calling in the Chat Completions API
Announcement: https://openai.com/blog/function-calling-and-other-api-updates
Documentation: https://platform.openai.com/docs/guides/gpt/function-calling

3.2.1 - 2023-03-013.2.1

    from openai GitHub release notes

Commit messages

Package name: openai

dc821be 3.3.0
b7cbca5 generate spec 1.3.0
9ff88c2 Merge pull request #177 from openai/dev/logan/wording-tweak
b8390a6 Update README.md
c71e355 Merge pull request #175 from openai/dev/logan/update-readme-example
eea4632 Update README.md
3a83abd Update README.md
032cec6 Merge pull request #176 from openai/dev/logan/warning
452c737 Update README.md
28bd2a1 Update README.md
51b1340 Merge pull request #94 from arnif/patch-1
7dab2f2 Merge pull request #114 from Just-Moh-it/docs/beta-to-platform-url
88a2f0b docs: move beta.openai.com -> platform.openai.com
6543938 Remove $ from npm install command

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

👷 Deploy Preview for classy-horse-4ef088 processing.

Name
Link

🔨 Latest commit
db45f5cf15ce681d8cd9a6411e8644d798741235

🔍 Latest deploy log
https://app.netlify.com/sites/classy-horse-4ef088/deploys/64d92f8736f2830008d32594


ERC721 bugfix + gas optimizations

This removes the _addTokenTo and _removeTokenFrom internal functions (which had a notice indicating they were not meant to be used, and only existed due to a language limitation, and are therefore not considered part of the API). They have been inlined into _mint and _burn, making it easier to understand how each function is called in ERC721Enumerable.
Additionally, #839 had already been accidentally fixed in #1539, but the current implementation makes it more obvious that the issues is gone.
Fixes https://github.com/OpenZeppelin/openzeppelin-solidity/issues/839
Closes https://github.com/OpenZeppelin/openzeppelin-solidity/issues/1541

I just noted _burn has the same swap and pop behavior, and therefore contains its own copy of #839: I'll follow up on this and fix that.

A check that is now in _burn used to be tested via _removeTokenFrom in the tests I got rid of, but that require won't make sense after #1550 goes in - we could first merge that PR and then this one on top.

Merged #1550 and restarted the build.

I know the _mint test is sort of out of scope, but the _burn tests require _mint, and having that doesn't really make sense unless _mint is also tested.

Should be ready now, @frangio PTAL. The functions for adding/removing tokens from both enumerations should be replaced by a function that receives a storage mapping (they are pretty much the same), but sadly that isn't supported in 0.4.x.


Migrate Excel package to PhpSpreadsheet

Hello guys!
Are you going to migrate the Excel package to PhpSpreadsheet because PHPExcel is deprecated and not maintained?
PHPExcel last version, 1.8.1, was released in 2015. The project is no longer maintained and should not be used anymore.

Greetings,

Hi!
I know you must be very busy but, is there any update on this?

Hi Victor, nothing yet but it is on the plan. Currently PHPExcel still does a good job to read and write Excel file. Changing to PHPSpreadSheet, we will keep the interface of Excel package so virtually you will not recognize the difference. I will keep you update.

Hi all,
We have successfully move the Excel package from using PHPExcel library to the newer PhpSpreadsheet one. It will be published in the next release of KoolReport Pro.
Thanks for all your valuable feedback!


llava-onevision convert bug

System Info
Please see line 345 in tensorrt_llm/models/qwen/model.py. The llava-onevision should have tie_word_embeddings=True, which will fail when converting lm_head weights. We can change
"lm_head": "language_model.lm_head" to "lm_head": "language_model.model.embed_tokens"

Who can help?
@byshiue
Information

[x] The official example scripts
[ ] My own modified scripts

Tasks

[x] An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
[ ] My own task or dataset (give details below)

Reproduction
lm_head.weight
197it [00:00, 2288.93it/s]
Traceback (most recent call last):
  File "/root/llava-ov/convert_checkpoint.py", line 308, in <module>
    main()
  File "/root/llava-ov/convert_checkpoint.py", line 300, in main
    convert_and_save_hf(args)
  File "/root/llava-ov/convert_checkpoint.py", line 256, in convert_and_save_hf
    execute(args.workers, [convert_and_save_rank] * world_size, args)
  File "/root/llava-ov/convert_checkpoint.py", line 263, in execute
    f(args, rank)
  File "/root/llava-ov/convert_checkpoint.py", line 246, in convert_and_save_rank
    qwen = QWenForCausalLM.from_hugging_face(
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/models/qwen/model.py", line 453, in from_hugging_face
    loader.generate_tllm_weights(model)
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/models/model_weights_loader.py", line 409, in generate_tllm_weights
    self.load(tllm_key,
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/models/model_weights_loader.py", line 296, in load
    v = sub_module.postprocess(tllm_key, v, **postprocess_kwargs)
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/layers/linear.py", line 407, in postprocess
    weights = weights.to(str_dtype_to_torch(self.dtype))
AttributeError: 'NoneType' object has no attribute 'to'

Expected behavior
After I modify the code, it becomes
198it [00:00, 2781.83it/s]
Total time of converting checkpoints: 00:00:02

actual behavior
It cannot convert successfully before my modification.
additional notes
N/A

Hi @liyi-xia  could u please try the main branch and the latest code already have changes u mentioned above?

Hi @nv-guomingz , i saw it is still

@nv-guomingz hi, i did not see any difference between main branch and my screenshot. It is still convert lm_head to lm_head. May I know what you have done in recent commits to solve this problem?

By the way, when I tried latest release https://pypi.nvidia.com/tensorrt-llm/tensorrt_llm-0.17.0.dev2024121700-cp310-cp310-linux_x86_64.whl#sha256=c153ba5e78609d8060c2281a220f1cd4769a9c30e48d77b1fd95ac299aae4607, I encountered the following error. My CUDA is 12.6 and nvcc is 12.6.3
Traceback (most recent call last):
  File "/root/convert_checkpoint.py", line 9, in <module>
    import tensorrt_llm
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/__init__.py", line 32, in <module>
    import tensorrt_llm.functional as functional
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/functional.py", line 28, in <module>
    from . import graph_rewriting as gw
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/graph_rewriting.py", line 12, in <module>
    from .network import Network
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/network.py", line 31, in <module>
    from tensorrt_llm.module import Module
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/module.py", line 17, in <module>
    from ._common import default_net
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/_common.py", line 37, in <module>
    from ._utils import str_dtype_to_trt
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/_utils.py", line 32, in <module>
    from tensorrt_llm.bindings import DataType, GptJsonConfig
ImportError: /usr/local/lib/python3.10/site-packages/tensorrt_llm/libs/libtensorrt_llm.so: undefined symbol: cuMulticastCreate

@nv-guomingz hi, i did not see any difference between main branch and my screenshot. It is still convert lm_head to lm_head. May I know what you have done in recent commits to solve this problem?

Hi @liyi-xia , the mapping will be updated here

ok i see. but i am not able to use latest version now.

By the way, when I tried latest release https://pypi.nvidia.com/tensorrt-llm/tensorrt_llm-0.17.0.dev2024121700-cp310-cp310-linux_x86_64.whl#sha256=c153ba5e78609d8060c2281a220f1cd4769a9c30e48d77b1fd95ac299aae4607, I encountered the following error. My CUDA is 12.6, driver is 470.129.06 and nvcc is 12.6.3
Traceback (most recent call last):
  File "/root/convert_checkpoint.py", line 9, in <module>
    import tensorrt_llm
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/__init__.py", line 32, in <module>
    import tensorrt_llm.functional as functional
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/functional.py", line 28, in <module>
    from . import graph_rewriting as gw
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/graph_rewriting.py", line 12, in <module>
    from .network import Network
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/network.py", line 31, in <module>
    from tensorrt_llm.module import Module
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/module.py", line 17, in <module>
    from ._common import default_net
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/_common.py", line 37, in <module>
    from ._utils import str_dtype_to_trt
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/_utils.py", line 32, in <module>
    from tensorrt_llm.bindings import DataType, GptJsonConfig
ImportError: /usr/local/lib/python3.10/site-packages/tensorrt_llm/libs/libtensorrt_llm.so: undefined symbol: cuMulticastCreate

Could you share the steps for upgrading？

By the way, when I tried latest release https://pypi.nvidia.com/tensorrt-llm/tensorrt_llm-0.17.0.dev2024121700-cp310-cp310-linux_x86_64.whl#sha256=c153ba5e78609d8060c2281a220f1cd4769a9c30e48d77b1fd95ac299aae4607, I encountered the following error. My CUDA is 12.6, driver is 470.129.06 and nvcc is 12.6.3
Traceback (most recent call last):
  File "/root/convert_checkpoint.py", line 9, in <module>
    import tensorrt_llm
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/__init__.py", line 32, in <module>
    import tensorrt_llm.functional as functional
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/functional.py", line 28, in <module>
    from . import graph_rewriting as gw
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/graph_rewriting.py", line 12, in <module>
    from .network import Network
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/network.py", line 31, in <module>
    from tensorrt_llm.module import Module
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/module.py", line 17, in <module>
    from ._common import default_net
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/_common.py", line 37, in <module>
    from ._utils import str_dtype_to_trt
  File "/usr/local/lib/python3.10/site-packages/tensorrt_llm/_utils.py", line 32, in <module>
    from tensorrt_llm.bindings import DataType, GptJsonConfig
ImportError: /usr/local/lib/python3.10/site-packages/tensorrt_llm/libs/libtensorrt_llm.so: undefined symbol: cuMulticastCreate

@DylanChen-NV  provide some additional information：there is no error in the NVIDIA-SMI 470.129.06 Driver Version: 470.129.06 CUDA Version: 11.4 host environment; in the NVIDIA-SMI 525.105.17 Driver Version: 525.105.17 CUDA Version: 12.0 host environment, an undefined symbol error will occur.
On the machine where the problem occurs, after starting the container, the following information will appear
This may be caused by driver compatibility issues:
WARNING: CUDA Minor Version Compatibility mode ENABLED.
Using driver version 525.105.17 which has support for CUDA 12.0. This container was built with CUDA 12.6 and will be run in Minor Version Compatibility mode.
CUDA Forward Compatibility is preferred over Minor Version Compatibility for use with this container but was unavailable:
[[System has unsupported display driver / cuda driver combination (CUDA_ERROR_SYSTEM_DRIVER_MISMATCH) cuInit()=803]]
See https://docs.nvidia.com/deploy/cuda-compatibility/ for details.

In /etc/shinit_v2, maybe
  # If compat check passed, bring the compat lib into the path (several ways for safety)
  if [ "${_CUDA_COMPAT_STATUS}" = "CUDA Driver OK" ]; then
    # symlink the compat lib into a location that was preset to be on LD_LIBRARY_PATH via ENV
    ln -sf "${_CUDA_COMPAT_REALLIB}" "${_CUDA_COMPAT_SYMLINK}" 2>/dev/null
    # Additionally prepend _CUDA_COMPAT_REALLIB onto LD_LIBRARY_PATH in case _CUDA_COMPAT_PATH was not writable
    export LD_LIBRARY_PATH="${_CUDA_COMPAT_REALLIB}${LD_LIBRARY_PATH:+":${LD_LIBRARY_PATH}"}"
  fi

is not executed correctly.


Animation add-on

Add animation when an activity close and open.
(note: this issue should be implemented on all clicks where activity opens)

@plazzy99 Can you please assign this issue to me?


Circular_queue.cpp

Solved issue: #58
Program for circular queue in c++.

@maanpatel2492 already assigned to someone.


[DevCenter] Preparing for azure-developer-devcenter 1.0.0-beta.1 release

Description
Preparing the azure-developer-devcenter (Microsoft.DevCenter) package for 1.0.0-beta.1 release.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

@joshfree @srnagar @anuchandy @conniey @lmolkova @JonathanGiles can we get a spot check on this pull request? Shouldn't take long - this is just a touch-up of the release prep PowerShell script. We're trying to get this checked in by EOD 11/7 so we're fully ready to release this week.

@sebrenna If the API has changed, you will want to get an updated APIView uploaded, and share the link so that it may be reviewed.

@sebrenna If the API has changed, you will want to get an updated APIView uploaded, and share the link so that it may be reviewed.

@JonathanGiles No API changes in this PR, @weidongxu-microsoft just asked us to regenerate with the new autorest version (4.1.7) while we were adding the changelog for release.

@sebrenna If the API has changed, you will want to get an updated APIView uploaded, and share the link so that it may be reviewed.

@JonathanGiles
Code change is due to codegen upgrade. There is no REST API change on swagger.
Most of the change is minor improvement on Javadoc and implementation, which does not affect public API.
There is one API change on LRO of DELETE API, the return type is changed from SyncPoller<BinaryData, BinaryData> to SyncPoller<BinaryData, Void> (BinaryData becasue it is DPG lib), final result as Void because DELETE would remove the resource and delete is done when polling succeeded.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-developer-devcenter

@sebrenna
There one thing you need to do.
In test with LRO, please add following code around the SyncPoller.
e.g.
        BinaryData devBoxBody = BinaryData.fromString("{\"poolName\":\"" + poolName + "\"}");
        SyncPoller<BinaryData, BinaryData> devBoxCreateResponse =
                devBoxesClient.beginCreateDevBox(projectName, "me", "TestDevBox", devBoxBody, null);
+        devBoxCreateResponse = setPlaybackSyncPollerPollInterval(devBoxCreateResponse);
        Assertions.assertEquals(
                LongRunningOperationStatus.SUCCESSFULLY_COMPLETED, devBoxCreateResponse.waitForCompletion().getStatus());

Ref https://github.com/Azure/azure-sdk-for-java/pull/31954#discussion_r1015834248
I will add it to guide.

Also, please see if you want to update codeowner to add the label and reviewer. E.g. https://github.com/Azure/azure-sdk-for-java/blob/main/.github/CODEOWNERS#L95-L96

Also, please see if you want to update codeowner to add the label and reviewer. E.g. https://github.com/Azure/azure-sdk-for-java/blob/main/.github/CODEOWNERS#L95-L96

Good callout, got that updated too with the right aliases. Let me know if the config is syntactically incorrect or anything! I pulled that from our .NET owners file.


Deploy failed, error: failed to get apk infos, output: package: name='MYPACKAGENAME' versionCode='MYVERSIONCODE' versionName='MYVERSIONNAME' platformBuildVersionName='MYVERSIONNAME' compileSdkVersion='28' compileSdkVersionCodename='9'

I am getting following error on this step (v1.3.18)
Deploy failed, error: failed to get apk infos, output: package: name='MYPACKAGENAME' versionCode='MYVERSIONCODE' versionName='MYVERSIONNAME' platformBuildVersionName='MYVERSIONNAME' compileSdkVersion='28' compileSdkVersionCodename='9'
My project is an android project and it has many dimensions so it's variant is combinations of dimensions. for example fencyMyAppFree, classicMyAppPaid etc..
Are there any issues on this step with multi-dimension environment android project?
and please leave the comment if I should provide more information about my build.

Hi @taenguree  initially can you please include a build URL so we can see into this issue?

@bitce Hi, Thanks for the comment.
https://app.bitrise.io/build/439e8fa045aa1330
Here is the build URL.

previously, my project has no [drawable] folder but has [drawable-xlarge] folder only.
After I copied my android:icon resource from [drawable-xlarge] to [drawable] the issue had been fixed.
Thanks !

Oh I see, thanks for clarifying, good job!


Failed to save 'xxx' unable to write file

When I try to save something, the editor shows me the following error:
Failed to save 'ZCL_KIT_ALM.clas.abap': Unable to write file 'adt://xx/System Library/xx/Source Code Library/Clases/ZCL_KIT_ALM/ZCL_KIT_ALM.clas.abap' (Error: Unknown transport status. Object not locked?)
There's something I missed in the installation?
The transport order looks like:

Thank you!
Pepe

Hi Marcello,
thanks for the response time, yes our version is the 7.50, I'll try to install the abapGit plugin and test it again.
Best Regards,
Pepe

Hello Pepe,
Did you issue have been fixed?
I also install abapGit in backend system, but still have this issue, my system version is 7.50.
Thanks.
Best regards,
Martin

After abapgit you need to install the plugin mentioned in the Readme

Hi Martin, my SAP admin didn't allow me to install it :(

Hello Pepe,
Did you issue have been fixed? I also install abapGit in backend system, but still have this issue, my system version is 7.50.
Thanks.
Best regards, Martin

@duizhang8255
I have the same problem for 7.50. Have you found a solution?
We're also going to update ur system to a newer version anyways. So maybe that's working.

@pepealbuixech
You probably need to install this on your ABAP system: https://github.com/marcellourbani/abapfs_extensions

@marcellourbani
I did. But unfortunately it still brings up this error

Failed to save 'ZCL_KIT_ALM.clas.abap': Unable to write file 'adt://xx/System Library/xx/Source Code Library/Clases/ZCL_KIT_ALM/ZCL_KIT_ALM.clas.abap' (Error: Unknown transport status. Object not locked?)

Strange, should propose you to pick or create a transport
Does that happen even if you already have an open transpot for the object being edited?
For the 2nd error could be a known bug: doesn't support local objects not owned by you or without package assignment

@marcellourbani
This happend on my own open transport. The objects are stored in a package.
In this case I used a package from the repository that does not run on abapgit.
Can I only edit packages that are linked to abapgit? (due to the older SAP version)

no, abapgit shouldn't matter
No idea why it's not working for you, I tested this with both newer and
older systems than yours, and have a few thousand users (my own estimate,
from 16k downloads). Would need access to your system to investigate further
On Thu, 26 Jan 2023 at 10:24, THouRxx @.***> wrote:

@marcellourbani https://github.com/marcellourbani
This happend on my own open transport. The objects are stored in a package.
In this case I used a package from the repository that does not run on
abapgit.
Can I only edit packages that are linked to abapgit? (due to the older SAP
version)
—
Reply to this email directly, view it on GitHub
https://github.com/marcellourbani/vscode_abap_remote_fs/issues/176#issuecomment-1404806045,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AASW6HJZHJFPHXIN7D5KR2DWUJGG3ANCNFSM5OAGSSJA
.
You are receiving this because you were mentioned.Message ID:
@.***>

We will upgrade to a newer version later this year. Then I will try again and give feedback. Thanks for now. Appreciate your work.


Inspect - provide an easy way to determine type/additional info about scope members

Intellisense will use the scope to determine additional completion items to include in the suggestion list. Ideally we'd be able to display the correct type in addition to its name/label (function, numeric literal, string literal, etc).

I think a simple way to do this would be to store the IdentifierPairedExpression node rather than the Identifier node when adding let and section members to the scope.

The first step was #122 .

Completed with #156


Picolibc release version

We've been running benchmarks to compare performance with other toolchains for Cortex-M55, and the compiler is performing pretty well on the actual compilation - clearly superior to GCC because of its MVE capabilities, if not at the heights of Arm Compiler.
But the overall benchmark results are coming out firmly below the Arm GCC package because of Picolibc, which is optimised for size rather than speed. 45% faster on vectorisable code doesn't compensate for being nearly 4 times slower on parsing operations.
There is a Meson configuration for picolibc, so could you expose an option and provide the speed-optimsed variant in the multilibs?
https://github.com/picolibc/picolibc/issues/258
https://github.com/picolibc/picolibc/pull/259
Another issue we hit was the "tinystdio", which made semihosting support intolerably slow - one character at a time. Overall we'd rather like a "newlib" equivalent config of picolibc rather than the "newlib-nano" equivalent it seems to default to.
Although maybe if newlib is being re-added in an upcoming release, then that can be the full library, and picolibc can remain in its "nano"/"tiny" config. But still, a release rather than minsize option for that "tiny" would be good. The minsize speed penalty is very big.

Hi Kevin, thank you for the detailed analysis and great input! Let us see what can we do for the upcoming LLVM 18 based release and get back here.

https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/pull/441 added option to select between minsize and release builds, and provided release by default for bigger cores. For release builds fast malloc is also enabled.

Release version of picolibc added; newlib package is now part of the release, I will close this issue.


error occurs while update a billing plan

[{"op":"replace","path":"/","value":{"state":"ACTIVE"}}]
PATCH https://api.sandbox.paypal.com/v1/payments/billing-plans/P-74F93954CY027545G74H64CA: 400 Incoming JSON request does not map to API request, []

Thanks for fixing this!


docs: added RELEASE action status badge

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


add img2img and in/out-painting to the discord bot

If anyone sees this I'm sorry this didn't get done sooner, there were some unexpected things that came up that took a lot of my time.
I'm recharging over thanksgiving and will be doing this ASAP starting Oct-11 2022. If you need those features in the mean-time I would recommend using the interactive CLI or checking out the other GRPC server interfaces available on: https://www.stablecabal.org/
Thank you for your patience.

complete


Exchange Online PowerShell V2 note is not formatted correctly

This page:
> [!NOTE] > More content

Correct Syntax:
> [!NOTE]
> More content

I believe the intent was for the note to look like the page below. Unfortunately, it looks like 99% of the pages this note was added to are not using the correct markdown syntax.
https://github.com/MicrosoftDocs/office-docs-powershell/blob/master/exchange/docs-conceptual/exchange-online/connect-to-exchange-online-powershell/mfa-connect-to-exchange-online-powershell.md

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

ID: 586e8b44-035e-adae-2847-b5288bc6898d
Version Independent ID: 03dda286-85d7-41ca-a6dd-f88ef8d89dc6
Content: Set-HostedConnectionFilterPolicy (exchange)
Content Source: exchange/exchange-ps/exchange/antispam-antimalware/Set-HostedConnectionFilterPolicy.md
Service: exchange-powershell
GitHub Login: @chrisda
Microsoft Alias: chrisda

@jonwbstr, this is a known issue we are working on.
Thanks for the feedback.


Added yii\widgets\ActiveForm::validateEmptySelects and the same att…

…ribute to yii.activeForm.js which determines whether to validate SELECT without OPTION

Q
A

Is bugfix?
yes/no

New feature?
yes/no

Breaks BC?
yes/no

Tests pass?
yes/no

Fixed issues
comma-separated list of tickets # fixed by the PR, if any

Thanks for your contribution but enhancements aren't accepted for 2.0.x. We can do the change in 3.0 though.


Fix Progress Ring crash

Fix Progress Ring crash when changing the color of a solid color brush that was used for a now destructed progress ring's Foreground/Background color caused by never detatching the dependency property changed handler from the brush's color property.

/azp run


Integration with existing shadow-cljs.edn file

Hey there! I've been digging into cljest and its integration with shadow-cljs. I noticed that cljest manages its own shadow-cljs configuration separately from an existing shadow-cljs.edn file.
I'd love to integrate cljest's build and test processes with my existing shadow-cljs.edn and be able to have my dev server and test watch running in one shadow command.

Hey there, sorry for the really delayed response. So unfortunately I don't think this is really possible due to the way that cljest and shadow-cljs work together (or at least would cause some dev-ex friction). In general the way that I've set it up is that I want Jest to be in control of the FS watching and subsequent compilation triggering (since it's not possible to control this on the Jest side, and having two FS watchers often ran into race conditions), and while it's possible to run shadow-cljs in a "headless" mode such that you can manually trigger a compilation, when I tried to get it working so that it would work identically to watch mode without a watcher instance, it didn't seem to work as expected and so I had to do a lot of workarounds to get them to play well together, mainly overriding the way that shadow-cljs deals with watching and its config. So long story short having it integrate where shadow is the one that drives the process is kind of a no-go with Jest.
That said, I don't think they should clash, and one thing I thought about is taking parts of the config and merging them into the internal config so that there's less friction there. Do you think this would be helpful in your case?


Count management interface in CLAB_INTFS_WITH_MGMT env var

We now introduce a new env var CLAB_INTFS_WITH_MGMT that counts the management interface in when counting calculating the number of interfaces required by clab.
The reason for this change is to make sure that

we always check that the management interface is available, not only clab interfaces
we respect the network mode: none setting when eth0 interface is added manually to the list of endpoints and therefore it shouldn't be implied as an addition to datapath interfaces

Goes together with vrnetlab change https://github.com/hellt/vrnetlab/pull/166
** This is a breaking change for vrnetlab nodes**
Because newer vrnetlab (>=0.15.0) nodes will rely on the new CLAB_INTFS_WITH_MGMT env var, we will add an early error when this env var is not found asking users to upgrade containerlab.
Older vrnetlab nodes will continue to function because they would still use the CLAB_INTFS env var and since the calculation logic for CLAB_INTFS hasn't changed it will work as before.
It will not though support the network mode: none.
fix #1851

not a prio right now


Add Bamboo

Project URL
https://github.com/wordlessj/Bamboo
Description
Added Bamboo in Layout section.
Why it should be included to awesome-ios (optional)
Checklist

[x] Only one project/change is in this pull request
[x] Addition in chronological order (bottom of category)
[x] Supports iOS 9 / tvOS 10 or later
[x] Supports Swift 3 or later
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

What a nice lib, @wordlessj!
Thank you for collaborating! 🙌

@victorgama Thanks!


SQL statement, does it support wildcards?

eg ： insert into table1(field1,field2) values(?,?)  in  use(val1) use(val2) ?

This is not the right place for support questions, please use the mailing list.
Also look at how use is used in SOCI documentation/examples.


SDF duplicate MUX IOPATH paths with different delays

Description
The S-> X IOPATH of MUXes are duplicated in the SDF file and have different values:
SDF file snipset:
(CELL
(CELLTYPE "sky130_fd_sc_hd__mux2_2")
(INSTANCE 344)
(DELAY
(ABSOLUTE
(IOPATH A0 X (0.159:0.159:0.159) (0.268:0.268:0.268))
(IOPATH A1 X (0.125:0.125:0.125) (0.243:0.243:0.243))
(IOPATH S X (0.233:0.233:0.233) (0.341:0.341:0.341))
(IOPATH S X (0.163:0.163:0.163) (0.279:0.279:0.279))  <--- second arc with > 60 ps difference
)
)
)
This is most likely true for all MUXes, but not for other cells.
Environment
Tested on latest mpw-7a (but seen it  before):
OpenLane f9b5781f5ef0bbdf39ab1c2bbd78be8db11b27f2
PDK version 41c0908b47130d5675ff8484255b43f66463a7d6
Reproduction Material
Latest caravel example:
git clone -b mpw-7a https://github.com/efabless/caravel_user_project caravel_example
Expected behavior
Only one entry per arc.
PS: also wondering why bc:nc:wc numbers are identical at many cells.

Those are IOPATHs with different COND expressions that for some reason are not printed in the SDF.
The bc:typ:wc values are the same because there is only one process corner and the no min/max slew spread.
Without an explicit testcase (ie, a tcl command file that produces the SDF) I can't help you any further.

The explicit testcase is given in the text above. Use the actual, mpw-7a, default caravel_example project.
git clone -b mpw-7a https://github.com/efabless/caravel_user_project caravel_example
The earliest SDF file I have quick access to is from Dec '21 where I was fooling around with MPW-3. Same problem there, so I guess you can find that issue on any given Openlane SDF file.
Openlane SDF file supports different COND conditions ?

The expectation is that you will package a standalone test case.  See https://github.com/The-OpenROAD-Project/OpenLane/blob/master/docs/source/using_or_issue.md
@donn can help if required.

It looks like the issue is the sky130 liberty.
cell sky130_fd_sc_hd__mux2_1 has these timing arcs from S -> X
pin ("X") {
direction : "output";
function : "(A0&!S) | (A1&S)";
timing () {
related_pin : "S";
timing_sense : "positive_unate";
timing_type : "combinational";
}
timing () {
related_pin : "S";
timing_sense : "negative_unate";
timing_type : "combinational";
}
}
They should have sdf_cond attributes to label them for the SDF.

@jjcherry56 Conditions in the SDF file ? Is this possible ?
So I guess that both path are valid and my STA engine should take the most critical one, right ?

There is syntax to support it in SDF:

The timing engine will select the right arc.  However your SDF is not valid because it lacks the COND statements for the reason Cherry describes above.

I opened https://github.com/google/skywater-pdk/issues/382 for this issue.
@mithro @quantumhd please advise if you will fix this in the upstream repo or not

Unlikely to happen in the next few weeks. Best bet is to add something to open_pdks temporarily.


Keychain Sharing not working between two apps?

Hi have to share keychain between my two apps, for this I have tried following with Locksmith:

Enable Keychain sharing in capabilities.
Added common group name TestKeychainGroup.
Saved my data with Key MyteamID.TestKeychainGroup. It saved success
Now when i tries to retrieve saved data from keychain with key MyteamID.TestKeychainGroup it is giving nil.

Can anybody tell me, what I forgot to do or it is not supported by Locksmith. Thanks

If you are using default LockSmith setup then your service is setup with this code
public let LocksmithDefaultService = Bundle.main.infoDictionary![String(kCFBundleIdentifierKey)] as? String ?? "com.locksmith.defaultService"

It means it is getting the service name from kCFBundleIdentifierKey which is different for every app and extension. You must set it to same value either editing the source code of LockSmith.swift or using long notation by explicitly setting the service in the function calls. I also made the same mistake and wasted an hour lol


improve add observability on receiving HTTP request

pick https://github.com/apache/doris/pull/30432 and https://github.com/apache/doris/pull/40735

run buildall


[website] Move website to https://flow-project.github.io/

Move website from https://berkeleyflow.github.io/ to https://flow-project.github.io/ and add a re-direct to https://berkeleyflow.github.io/.

flow-project.github.io is now live. unclear about how to redirect so that's not done yet.

Wonderful, thanks Nish! Yes, we should re-direct so that we don't need to
maintain 2 websites.
For the re-direct, you can try this:
https://stackoverflow.com/questions/5411538/redirect-from-an-html-page#5411567

It's not perfect, but doing

appears to have done the trick.

Woohoo!!


item[:filename] is nil for .yaml files

item[:filename] is nil for .yaml files on nanoc 4.6.1
Steps to reproduce

Add foo.yaml anywhere inside content.
In pre-processor block, iterate items and: print item[:filename]
The filename will be nil

Expected behavior
I expect filename attribute for this yaml item to be set. identifier is set.
Actual behavior
Filename attribute of an yaml item is not set.

I am doing now this in my preprocessor block
  @items.each do |item|
    # TODO
    # fix missing filename attribute
    if (item[:filename] == nil) then
      item[:filename] = "content" + item.identifier
      print item[:filename]
    end

Ugly :)

The :filename attribute is an alias for :content_filename, which will be nil if there is no content file. You can instead use :meta_filename.
This is missing from the documentation. Will fix!

I’ve created nanoc/nanoc.ws/issues/196 to track this.


wrong result on zsyr with negative incx, for OpenBLAS 0.2.13.

I found this problem initially because the scipy linked against OpenBLAS won't pass a test related to z/c syr. (https://github.com/scipy/scipy/issues/4453). I translated the related test code (https://github.com/scipy/scipy/blob/master/scipy/linalg/tests/test_blas.py#L315) into C and linked it against three different libraries (OpenBLAS, ATLAS, and Accelerate on a mac).
#include <stdio.h>
#include <complex.h>
int main(void)
{
    int i, n;
    double complex alpha;
    char lowerOrUpper = 'U';
    double complex a[] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; /* to save the result */
    double complex w[] = {0, 1 + 2*I, 0, 0, 3+4*I, 0, 0, 5+6*I, 0, 0, 7+8*I, 0};
    int offx;
    int incx;
    alpha = 1.0;
    n = 4;
    offx = 1;
    incx = -3;

    zsyr_(&lowerOrUpper, &n, &alpha, w + offx, &incx, a, &n);

    for (i = 0; i < n*n; ++i) {
        printf("%.2f + %.2fi\t ", creal(a[i]), cimag(a[i]));
        if ((i+1)%n == 0) {
            printf("\n");
        }
    }
    return 0;
}

The reference result in scipy test is
In [6]: resz_reverse
Out[6]:
array([[-15.+112.j, -13. +82.j, -11. +52.j,  -9. +22.j],
       [  0.  +0.j, -11. +60.j,  -9. +38.j,  -7. +16.j],
       [  0.  +0.j,   0.  +0.j,  -7. +24.j,  -5. +10.j],
       [  0.  +0.j,   0.  +0.j,   0.  +0.j,  -3.  +4.j]])

The output of my test program using OpenBLAS is
0.00 + 0.00i	 0.00 + 0.00i	 0.00 + 0.00i	 0.00 + 0.00i
0.00 + 0.00i	 0.00 + 0.00i	 0.00 + 0.00i	 0.00 + 0.00i
0.00 + 0.00i	 0.00 + 0.00i	 64.00 + 0.00i	 0.00 + 0.00i
0.00 + 0.00i	 0.00 + 0.00i	 16.00 + 24.00i	 -5.00 + 12.00i

yet the outputs for ATLAS and Accelerate are the same (transpose it to match the result from scipy, since C and Fortran have different storage schemes):
-15.00 + 112.00i	 0.00 + 0.00i	 0.00 + 0.00i	 0.00 + 0.00i
-13.00 + 82.00i	 -11.00 + 60.00i	 0.00 + 0.00i	 0.00 + 0.00i
-11.00 + 52.00i	 -9.00 + 38.00i	 -7.00 + 24.00i	 0.00 + 0.00i
-9.00 + 22.00i	 -7.00 + 16.00i	 -5.00 + 10.00i	 -3.00 + 4.00i

I wonder if this is a bug in OpenBLAS in general, or it's limited to my processor (dual E5-2620 v3, Ubuntu Server 14.04.1)

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/7994531-wrong-result-on-zsyr-with-negative-incx-for-openblas-0-2-13?utm_campaign=plugin&utm_content=tracker%2F69691&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F69691&utm_medium=issues&utm_source=github).

Seeing all zeros on both Haswell and Nehalem here (and even a few NaNs when I compile without optimization).

Already broken in final gotoblas (from which OpenBLAS derives), while netlib lapack gives the same result as your ATLAS and Accelerate on my system. Wonder if it could be due to "historic" assumptions about the memory layout of the "double complex" data type, seeing that gotoblas/openblas zsyr appears to expect an array of doubles according to common_interface.h,
while lapacke has std::complex array arguments ?
Cf. http://icl.cs.utk.edu/lapack-forum/viewtopic.php?f=12&t=4330

@martin-frbg thanks for your testing and investigation. While there seems to be some differences on the interface on zsyr between OpenBLAS (gotoblas) and other implementations, it's interesting that it's only when incx is negative that OpenBLAS seems buggy.

@zym1010 - you mentioned 'differences in the interface' - but just to be clear, do you agree that the other libraries are correct and that this is a bug?

@matthew-brett Well, from the thread you referred to it seems that there are interface differences. And I agree that other libraries can produce the correct input expected by Scipy developers.

I wanted to check that when you say 'interface differences' rather than 'bug' you are saying that the answer given by OpenBLAS could be considered correct in some sense.   Can you explain why?

I believe the "interface differences" comment is related to my observation that openblas passes the complex arguments as an array of doubles rather than as std:complex (as netlib, atlas et al. do) - this
however appears to be a red herring. Unfortunately I did not get around to comparing earlier versions
of the original gotoBlas yet, all I can say is that the last one, which was the starting point of OpenBLAS already displayed the erroneous behaviour with negative incx.

Same effect with GotoBLAS2-1.08, the oldest source tarball I could find in my backups. (Copies of even older first-generation gotoblas failed to compile on even moderately recent hardware.) Debugging seemed to implicate the SSE2 copy routine invoked as COPY_K in level2/z_syr_k.c, but forcing use of the non-SSE copy.S did not change the result. As my knowledge of assembler is both sketchy and outdated I will probably not venture further.

Hi @zym1010 ,
Thank you for the feedback. Please try the develop branch. I think I fixed this bug.
Xianyi

I make the test for scipy. And I also meet the test fail.
FAIL: test_syr_her (test_blas.TestFBLAS2Simple)
Traceback (most recent call last):
File "/home/anaconda/lib/python2.7/site-packages/scipy/linalg/tests/test_blas.py", line 316, in test_syr_her
resz_reverse, rtol=rtol)
File "/home/anaconda/lib/python2.7/site-packages/numpy/testing/utils.py", line 1297, in assert_allclose
verbose=verbose, header=header)
File "/home/anaconda/lib/python2.7/site-packages/numpy/testing/utils.py", line 665, in assert_array_compare
raise AssertionError(msg)
AssertionError:
Not equal to tolerance rtol=1e-07, atol=0
(mismatch 100.0%)
x: array([[ 0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j],
[ 0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j],
[ 0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j],
[ 0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j]], dtype=complex64)
y: array([[-15.+112.j, -13. +82.j, -11. +52.j,  -9. +22.j],
[  0.  +0.j, -11. +60.j,  -9. +38.j,  -7. +16.j],
[  0.  +0.j,   0.  +0.j,  -7. +24.j,  -5. +10.j],
[  0.  +0.j,   0.  +0.j,   0.  +0.j,  -3.  +4.j]])

@lixiangnlp did you do your test with the current development branch of OpenBLAS (the only one containing the fix - which seems to work for me) ?

@martin-frbg I used the latest OpenBLAS.

Strange. I just redid my tests with the standalone C code from the start of this thread and got the desired result (though I could only test on aged Nehalem and ancient Prescott hardware right away)
Will reconfirm on Haswell later today.

The used CPU is Haswell i4790K. And I used the 0.15.1 scipy.

Again current "develop" branch works fine for me on i4770 both in multithreaded and singlethread builds. Could it be that your scipy environment pulls in an older version of OpenBLAS inadvertently ?

@xianyi Sorry for the late reply. I just tested the latest release and it works now! Thanks.


Can't search for CVE by CVSSv3 severity

I am trying to search for all critical/high/medium/low vulnerabilities that were released within the last month, using the below line for criticals:
crit_monthly_cves = nvdlib.searchCVE(pubStartDate=prev_month_first, pubEndDate=prev_month, cvssV3Severity='Critical')
This line works as soon as I take out the 'cvssV3Severity' parameter, however it throws this error when trying it with the parameter:
Invalid search criteria syntax: <Response [403]> Attempted search criteria: {'pubStartDate': '2022-09-01T00:00:42:000 UTC-00:00', 'pubEndDate': '2022-09-30T00:00:42:000 UTC-00:00', 'cvssV3Severity': 'CRITICAL'}
File "C:\Users\xxx\PycharmProjects\xxx\venv\lib\site-packages\nvdlib\cve.py", line 308, in searchCVE
    raw = __get('cve', parameters, limit, key, verbose)
  File "C:\Users\xxx\PycharmProjects\xxx\venv\lib\site-packages\nvdlib\get.py", line 41, in __get
    totalResults = raw['totalResults']
TypeError: 'Response' object is not subscriptable

Hello,
What version of NVDLib are you using? I was not able to replicate the issue on NVDLib version 0.6.1.  I am going to be releasing NVDLib 0.7.0 very soon, and I wasn't able to replicate the issue on that version either.
My test on 0.6.1:
>>> import nvdlib
>>> prev_month_first='2022-09-01 00:00'
>>> prev_month='2022-09-30 00:00'
>>> crit_monthly_cves = nvdlib.searchCVE(pubStartDate=prev_month_first, pubEndDate=prev_month, cvssV3Severity='Critical', verbose=True)
Filter:
https://services.nvd.nist.gov/rest/json/cves/2.0?cvssV3Severity=CRITICAL&pubStartDate=2022-09-01T00:00:00&pubEndDate=2022-09-30T00:00:00
>>> len(crit_monthly_cves)
331

Ah, that is my mistake.
I was using version 0.6.0 - I have just upgraded to 0.6.1 and it shows the same results that you found.
Thank you!


Initialize lift + shift for cross-db macros

Two Macros (Utils're Coming Home)

Follow-up to https://github.com/dbt-labs/dbt-core/pull/5265
No more spark-utils??? (Once this is passing, I'll open a follow-on PR there to ensure backwards compatibility for those who celebrate)
Checklist

[ ] I have signed the CLA
[ ] I have run this code in development and it appears to resolve the stated issue
[ ] This PR includes tests, or tests are not required/relevant for this PR
[ ] I have updated the CHANGELOG.md and added information about my change to the "dbt-spark next" section.

The datediff macro is failing in the session connection method with:
DEBUG    configured_file:functions.py:235 10:43:13.599281 [debug] [Thread-7  ]: Runtime Error in model test_datediff (models/test_datediff.sql)
  org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:Insert of object "org.apache.hadoop.hive.metastore.model.MTable@5c1a0c62" using statement "INSERT INTO TBLS (TBL_ID,CREATE_TIME,DB_ID,LAST_ACCESS_TIME,OWNER,RETENTION,IS_REWRITE_ENABLED,SD_ID,TBL_NAME,TBL_TYPE,VIEW_EXPANDED_TEXT,VIEW_ORIGINAL_TEXT) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)" failed : A truncation error was encountered trying to shrink LONG VARCHAR 'with data as (

      select * from test16528705702281762972_t&' to length 32700.)

This macro does compile SQL that is just about unreadably long. Perhaps it could be "minified"? :)

🥳


Fix File Upload

Upload hangs due to unclosed connection. "226 Successfully transferred ..." message cannot be read due to unclosed connection. This patch fixes the problem.

👍  on getthing this merged - this also addresses leaking open file pointers

nice work!

Thx!


Adopt SciPy sparse array classes

I wrote the sparse matrix code naively using SciPy's sparse matrix classes as I've done before. It turns out SciPy are switching to an array interface, more compatible with NumPy and hopefully faster too. Looking at the documentation, this shouldn't require much change beyond specifying how variables are defined. Most of the user-facing changes are to sparse operations which isn't something we use SciPy for.

While we've addressed some of the underlying intention here (namely making better use of NumPy and SciPy's typing), the main point of moving from spmatrix to sparray is held indefinitely until the class reaches performance parity. Looking around at what I can find on the issue, the transition has been in progress since 2021 but there's no timeline for deprecation. There's also still no warning about using spmatrix beyond the docs recommending sparray for new work.


Add JavaScript Functional Programming

This adds Awesome FP JS to the list.
How do you like the list? Is there anything we have to change/add?
Thanks.
// cc @naehrstoff
closes https://github.com/stoeffel/awesome-fp-js/issues/10

Generally looks pretty good.
Some feedback:

I would linkify functional programming in the description to a good source that explains functional programming. Maybe also add a succinct one-two sentences about functional programming at the top.
Inspired by the Awesome list thing. You can remove this if you want. The badge is enough.
The People sections isn't very useful as it gives no context about who they are and why I should care. They could use a bio and why I should follow them.
The Contribution section needs a link to the contributing.md file.
Many of the items in the Articles section could use a description/commentary.

Hey, thanks for the great feedback!
I will address it and bump you as soon as it's done.
Have nice Sunday and thanks for your time.
On Apr 17, 2016 13:18, "Sindre Sorhus"<EMAIL_ADDRESS>wrote:

Generally looks pretty good.
Some feedback:

I would linkify functional programming in the description to a good
source that explains functional programming. Maybe also add a succinct
one-two sentences about functional programming at the top.
Inspired by the Awesome list thing. You can remove this if you want.
The badge is enough.
The People sections isn't very useful as it gives no context about
who they are and why I should care. They could use a bio and why I should
follow them.
The Contribution section needs a link to the contributing.md file.
Many of the items in the Articles section could use a
description/commentary.

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/sindresorhus/awesome/pull/612#issuecomment-211002565

ping :)

Sorry currently pretty busy. Will try to clean up this WE.
Thanks for the ping 😄

The People sections isn't very useful as it gives no context about who they are and why I should care. They could use a bio and why I should follow them.

@naehrstoff how do you feel about removing this section? I do think this section is not very helpful atm and it would need a lot of time to keep it updated.

@sindresorhus: @naehrstoff and I did work on your feedback and think it's ready now. Would be great if you could have a second look. Please let me know if we should change/add something else.
Thanks for your time.

Looks good. Thanks for working on improving it :)

Maybe also add a succinct one-two sentences about functional programming at the top.

I'd still like to see this :arrow_up:

I have a snippet of text that we can use as a short introduction to functional programming. Will add it soon-ish :)

Thanks @sindresorhus for merging and the great feedback!
PS: Sorry for the late "thank you". I was really busy 😊


Fix glVertexAttribI3iv serialization

 WrappedOpenGL::Serialise_glVertexAttrib() contained broken branching logic, probably caused by copy/paste bug:
else if(Count == 2)
{
...
}
else if(Count == 2)

This pull request changes the latter 2 to 3 because the branch deals with glVertexAttribI3iv.

Thanks for this, good catch!


Feature: Multiple class names in theme to use e.g. TailwindCSS seamlessly

I tried to use TailwindCSS utility classes in my theme like so
underlineStrikethrough: "underline line-through",

and just in case also tried underlineStrikethrough: "underline.line-through" which is the Emmet style.
Though that's just toggling or something and doesn't work as expected.
I think it would be fantastic to be able to use utility classes, space (or dot separated).
My workaround at least for the underlineStrikethrough case is
underlineStrikethrough: "[text-decoration:underline_line-through]"

Which works thanks to the "new" JIT mode and being able to define arbitrary properties.
Anotherone would be to use plugins and then define styles using addUtilities() or addComponents().
Or maybe there's some limitation I don't (yet) understand 🤷🏻♂
Anyway, thanks a lot for Lexical, so far it's the best RTE experience I've had so far 🥳❤

Using multiple classes works for me without any problems (with "lexical": "0.3.7",):

// https://lexical.dev/docs/getting-started/theming
export const theme = {
  placeholder: 'richtext rt-placeholder text-gray-500',
  paragraph: 'richtext rt-paragraph text-gray-700 leading-normal my-2',
  link: 'richtext rt-link text-primary-500 underline',
  quote: 'richtext rt-quote border-l-4 pl-2 text-gray my-2',
  code: 'richtext rt-code rounded p-3 bg-gray-700 my-2 font-mono text-white block overflow-auto',
  text: {
    bold: 'richtext rt-bold font-bold',
    code: 'richtext rt-code font-mono text-gray-700 bg-gray-300 rounded text-base p-1',
    italic: 'richtext rt-italic italic',
    strikethrough: 'richtext rt-strikethrough line-through',
    underline: 'richtext rt-underline underline',
    underlineStrikethrough:
      'richtext rt-underlineStrikethrough line-through border-b-2 border-black',
  },
  heading: {
    h1: 'richtext rt-h1 pt-4 font-extra text-3xl text-primary leading-tight tracking-tighter',
    h2: 'richtext rt-h2 pt-3 font-bold text-2xl text-gray-600 leading-tight tracking-tight',
    h3: 'richtext rt-h3 pt-2 font-bold text-xl text-gray-500 leading-tight tracking-tight',
  },
  list: {
    // listitem: 'richtext rt-listitem ',
    ul: 'richtext rt-ul list-disc ml-5 marker:text-gray-600 marker:text-lg',
    ol: 'richtext rt-ol list-decimal ml-5 marker:text-gray-600',
    nested: { listitem: 'richtext rt-listitem list-none' },
  },
}

Yeah, or maybe use a pseudo element on the class to create the underline or strikethrough.
(Closing this as it seems like a styling clash with Tailwind.)

Uh interesting, you're right, I was expecting for it to show both classes, but because in the underlineStrikethrough: "underline line-through", case it doesn't I thought it's not working.
It surprises me that it's only in this case not applying both classes and then not working as you pointed out because only one would actually work.
Anyways, glad it's working and also thanks for the alternative option to [text-decoration:underline_line-through].


Remove APM Java Tracer dependency

Requirements for Contributing to this repository

Fill out the template below. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
The pull request must only fix one issue at the time.
The pull request must update the test suite to demonstrate the changed functionality.
After you create the pull request, all status checks must be pass before a maintainer reviews your contribution. For more details, please see CONTRIBUTING.

What does this PR do?
This PR removes the dependency with the APM Java Tracer.
Additionally, it adds a mechanism to send the information asynchronously to the Datadog Agent via public HTTP endpoint using this spec https://docs.datadoghq.com/api/latest/tracing/

Description of the Change

Alternate Designs

Possible Drawbacks

Verification Process

Additional Notes

Release Notes

Review checklist (to be filled by reviewers)

[ ] Feature or bug fix MUST have appropriate tests (unit, integration, etc...)
[ ] PR title must be written as a CHANGELOG entry (see why)
[ ] Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
[ ] PR must have one changelog/ label attached. If applicable it should have the backward-incompatible label attached.
[ ] PR should not have do-not-merge/ label attached.
[ ] If Applicable, issue must have kind/ and severity/ labels attached at least.

What is the usage of DostatsgClient after this? Is it still called internally inside DatadogAgentHttpClient? is it called separately for metrics? is it not called at all anymore? (This is separate from the tracer AFAIK)

I have refactored the DogStatsDClient class name to DatadogAgentClient which is the most accurate one. Inside of this class, we gather all "clients" (metrics, and traces).

Could you share some info about test coverage for the client and flushing/buffering code? I've seen there are some tests but I'm not sure of what is really covered.

Yes, I'll do this.

Could you comment a TL;DR for how the requests and flushing works? Is it a single separate thread doing blocking calls with a timeout of a minute? What about retries, are we not retrying calls if there is a single 5XX error?

Yes,

The mechanism is an immediate publisher-consumer approach with a queue in a single thread.
There is no flush mechanism, as soon as the consumer receives the message performs the call.
There is no retries mechanism in this PR because we're assuming that we're sending data to the Datadog Agent, so it's very unlikely that this could happen.
The HTTP calls have a 1 min timeout (again, we're sending data to the Datadog Agent)

I have refactored the DogStatsDClient class name to DatadogAgentClient which is the most accurate one. Inside of this class, we gather all "clients" (metrics, and traces).

Why? Was the DogStatsDClient separate from the APM requests before?
https://docs.datadoghq.com/developers/dogstatsd/?tab=hostagent AFAIK is separate from traces as this implements the statsd open source standard so I'm not sure you should merge everything together.

There is no retries mechanism in this PR because we're assuming that we're sending data to the Datadog Agent, so these kinds of errors are very unlikely to happen.
The HTTP calls have a 1 min timeout (again, we're sending data to the Datadog Agent)

If we think the connectivity with the agent is going to work so well why would we need timeouts of 1min? This reads contradictory to me. I think it would be safer to have at least one retry and much lower timesouts (5 or 10 seconds).
What does the tracer do for these numbers?

Why? Was the DogStatsDClient separate from the APM requests before?

No, it wasn't.. In fact, the class name was wrong in the past because we're using it as the class to create the clients for DogStatsD, Logs, and Traces clients. So the correct name should be DatadogAgentClient, and inside we gather or the other clients (Metrics, Logs, Traces, etc).

If we think the connectivity with the agent is going to work so well why would we need timeouts of 1min? This reads contradictory to me

This method is used to create HttpURLConnection for both flavors, HTTP and Datadog Agent, that's why the default timeout is 1 minute. I'm going to refactor the method to set the timeout via argument.

I think it would be safer to have at least one retry and much lower timeouts (5 or 10 seconds). What does the tracer do for these numbers?

Tracer is using 10 seconds of timeout and no retries. I'll follow the same strategy.


[tinyxml2] update to 7.0.1

There are major improvements in the cmake for this new release.

now tinyxml2 uses namespaces, so tinyxml2::tinyxml2 instead of just tinyxml2
no more manual separation of shared library and static library, now it depends on the standard BUILD_SHARED_LIBS macro, hence the major simplification of the portfile.

Tested both shared and static and it compiles and works with my downstream project.

it looks like tinyxml2 adding namespaces broke the builds for tinyexif and fastrtps.  I will add a patch to both of those projects to use the namespace.


Test find_end_of_wal_segment and fix its contrecord handling

Related to #544: fixes some troubles with handling WAL records that cross a segment boundary.
This PR starts fixing them:

Add a separate library/binary for carefully crafting weird WALs using a Postgres server. Right now it can craft three kinds of WAL: simple, one ending in a record that crosses segment boundary, and a similar one with a small message appended.

The latter two were not handled correctly, and prior to #1280 (or somewhere around), it was even possible to crash Safekeeper.  It is harder now because it starts find_end_of_wal from commit lsn.

Add lots of tracing to find_end_of_wal_segment. It's called on Safekeeper startup only, so should not yield a big performance penalty.
Fix find_end_of_wal_segment's bug: it worked incorrectly when the first record in the last segment is a contrecord. The old logic was to crash, new logic is to skip this record and find at least one full valid record in the segment.

I think it's better to get the barebones in first, but there are some todos left:

Handle corner cases in find_end_of_wal_segment marked as TODO in this PR. I believe they never happen in our tests.
Backtrack if there is no full valid record in the last segment file. This test is currently #[ignore]d.

Removing complex WAL generation logic from 891d0523613750181a7cc916da6fae9a828daf8e in favor of a simpler strategy: emit necessary logical message, flush it to the disk via neon_xlogflush from https://github.com/neondatabase/postgres/pull/160, kill the server. No COMMIT record.
Disabling autovacuum just in case on Anton's suggestion. Maybe some other stuff needs to be disabled as well.

Wow, it's a real flaky failure introduced (or reproduced?) by this PR! Investigating. Does not reproduce locally.
2022-05-20T17:11:33.180580Z ERROR {tid=8}: query handler for 'START_WAL_PUSH postgresql://no_user:@localhost:18106' failed: failed to restore shared state

Caused by:
    Condition failed: `rec_offs + n <= XLOG_RECORD_CRC_OFFS` (23 vs 20)

Stack backtrace:
   0: anyhow::ensure::render
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/anyhow-1.0.53/src/ensure.rs:97:20
   1: <(A,B) as anyhow::ensure::BothDebug>::__dispatch_ensure
             at /home/circleci/.cargo/registry/src/github.com-1ecc6299db9ec823/anyhow-1.0.53/src/ensure.rs:20:9
      postgres_ffi::xlog_utils::find_end_of_wal_segment
             at /home/circleci/project/libs/postgres_ffi/src/xlog_utils.rs:331:17
      postgres_ffi::xlog_utils::find_end_of_wal
             at /home/circleci/project/libs/postgres_ffi/src/xlog_utils.rs:439:25
   2: <safekeeper::wal_storage::PhysicalStorage as safekeeper::wal_storage::Storage>::init_storage
             at /home/circleci/project/safekeeper/src/wal_storage.rs:329:17
   3: safekeeper::safekeeper::SafeKeeper<CTRL,WAL>::new
             at /home/circleci/project/safekeeper/src/safekeeper.rs:554:9
   4: safekeeper::timeline::SharedState::restore
             at /home/circleci/project/safekeeper/src/timeline.rs:130:17
      safekeeper::timeline::GlobalTimelines::get
             at /home/circleci/project/safekeeper/src/timeline.rs:598:21
   5: <core::option::Option<alloc::sync::Arc<safekeeper::timeline::Timeline>> as safekeeper::timeline::TimelineTools>::set
             at /home/circleci/project/safekeeper/src/timeline.rs:513:22
      <safekeeper::handler::SafekeeperPostgresHandler as utils::postgres_backend::Handler>::process_query
             at /home/circleci/project/safekeeper/src/handler.rs:108:13
   6: utils::postgres_backend::PostgresBackend::process_message
             at /home/circleci/project/libs/utils/src/postgres_backend.rs:431:33
   7: utils::postgres_backend::PostgresBackend::run_message_loop
             at /home/circleci/project/libs/utils/src/postgres_backend.rs:283:31
      utils::postgres_backend::PostgresBackend::run
             at /home/circleci/project/libs/utils/src/postgres_backend.rs:265:19
   8: safekeeper::wal_service::handle_socket
             at /home/circleci/project/safekeeper/src/wal_service.rs:55:5
   9: safekeeper::wal_service::thread_main::{{closure}}
             at /home/circleci/project/safekeeper/src/wal_service.rs:26:43
      std::sys_common::backtrace::__rust_begin_short_backtrace
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/sys_common/backtrace.rs:123:18
  10: 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
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panicking.rs:406:40
      std::panicking::try
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panicking.rs:370:19
      std::panic::catch_unwind
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panic.rs:133:14
      std::thread::Builder::spawn_unchecked::{{closure}}
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/thread/mod.rs:483:30
      core::ops::function::FnOnce::call_once{{vtable.shim}}
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/ops/function.rs:227:5
  11: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/alloc/src/boxed.rs:1694:9
      <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/alloc/src/boxed.rs:1694:9
      std::sys::unix::thread::Thread::new::thread_start
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/sys/unix/thread.rs:106:17
  12: start_thread
  13: clone
2022-05-20T17:11:33.444770Z  INFO Got SIGQUIT. Terminating in immediate shutdown mode

Gosh, I love programming. No sarcasm.

Unable to reproduce locally.
Re-running the test in CI made it pass, so it's flaky, and I got fortunate it failed the first time. Another test failed, though: test_replace_safekeeper, and for the same reason. Re-running once got it everything pass.
Compiling with --release and running the test multiple times got me the local reproduction.

So, the corner case: if a record gets split between two segments, find_end_of_wal_segment does not care and still reads the second half of the record as if it was a correct record with a header, CRC, and stuff, but just does not check it. However, that behavior changed in my last commit: I ensured that the record never stops inside the xl_crc field. That would be correct for if we were reading a valid record, but we are reading a tail of a record. Hence the failure.
Nice coincidence, IMHO:

A record got split between two pages; and
Its second half has a length of either 21, 22, or 23 bytes exactly; and
It got caught by a completely unrelated test in or CI.

Fast fix: check less when skipping the first contrecord. A probably cleaner one would to clearly specify the current state of find_end_of_wal_segment (e.g. "skipping the first cont record", "reading the header", "reading the record body"), but I'd leave it for a separate PR, see https://github.com/neondatabase/neon/issues/544#issuecomment-1133043210


Incorrect GetUrl in D365

We have an extension running live in D365 and we are relying on the GetUrl function and are getting incorrect results in the web client and the Fin and Ops app.
In the web client, GetUrl returns:
https://mytenant.financials.dynamics.com/MS?tenant=mytenant.financials.dynamics.com
But to work either the MS part has to be removed or /webclient added:
https://mytenant.financials.dynamics.com/?tenant=mytenant.financials.dynamics.com
or
https://mytenant.financials.dynamics.com/MS/webclient?tenant=mytenant.financials.dynamics.com
In the Fin and Ops app, GetUrl returns:
ms-dynamicsnav://mytenant.financials.dynamics.com:443/MS?tenant=mytenant.financials.dynamics.com
But the Fin and Ops does not register to that scheme (ms-dynamicsnav) and therefor does not start. I don't know if it responds to any other scheme but if it does then the GetUrl functionality needs to be updated. If it does not respond to any scheme it needs to be added and the GetUrl functionality updated as well.

I'm not sure if question is the correct label for this issue. From my viewpoint this is clearly a bug or a configuration issue.

Agree.  Looks like a bug. It has not yet been yet acknowledged as one though.

Any news on when this will be fixed?

Hi @kalberes.
To the best of my knowledge this is not an issue in in Nav 2018. As I stated in my original post this is blocking our app (LS Express) which is already live on D365 Business Central!
Could you please contact the owning team and have them take a look at this issue as soon as possible?

hi @StanislawStempin .
Now we have a tenant in D365 BC and there this issue is fixed when browsing BC in the web client.
But if I'm in the Business Central app GetUrl still returns an URL to to Dynamics NAV app (ms-dynamicsnav).
This is not a live site issue but a bug, either in the GetURL function or a missing scheme registration in the BC app (or both) as I mention in the original issue.

Most likely your tenant has not been updated to the latest version yet. Please retry in a few weeks and open a new issue if the problem still persists.

Alright, that just might be the case. But could you confirm that we are waiting for a change in the GetUrl functionality? Cause in my mind there are two solutions to this problem:

The Business Central app already registers a scheme but the GetUrl isn't returning it. In that case we are waiting for the tenant to be updated. It would also be nice to get that scheme in order to confirm that it does in fact work.
The Business Central app isn't registered as ms-dynamicsnav but will be. In this case we are not waiting for the tenant but for the app to be updated.

I want to make sure that we are waiting for the correct solution cause we have been waiting for almost three months now.

GETURL AL function should now return (from update 15 on up):
•	https://businesscentral.dynamics.com/ as the base Url
•	Ms-businesscentral:// as the protocol for mobile apps
The protocol registered for the app was just tested to confirm it is registering the correct one in the OS.
If you see a different behavior, please report back, as this is unexpected.

Hi @pborring.
Thanks your response, it really helps to see what has been fixed. I've confirmed that the protocol ms-businesscentral works. Now we just wait for the GetUrl to update.


[docs] v5 documentation site breaks intermittently

Duplicates

[X] I have searched the existing issues

Current behavior 😯
This sounds like a regression of this closed and locked bug: https://github.com/mui/material-ui/issues/28368
I've been seeing this intermittently for the past week.  The embedded examples do not respond or work at all, and the per-example toggle controls (view source, JS<->TS swap, etc) do not appear.  I see this 404 in the dev console:
GET https://mui.com/_next/static/chunks/pages/components/dialogs-ccf34012d3adbddd.js net::ERR_ABORTED 404
Expected behavior 🤔
The embedded examples should work and respond as they do in a built project, and we should be able to view source on the examples
Steps to reproduce 🕹
Steps:

Open the documentation at any example (i.e. https://mui.com/components/dialogs/)
Try to click any of the "Open Dialog" buttons in the examples
Try opening the custom site search with CTRL-K

Context 🔦
No response
Your environment 🌎

`npx @mui/envinfo`
  Don't forget to mention which browser you used.
  Output from `npx @mui/envinfo` goes here.

I can't reproduce (FR)

I can't reproduce (FR)

Ahah: I was seeing it simultaneously on one machine but not another just now at https://mui.com/components/dialogs/ - I cleared cache on the problem machine and it fixed itself.  Maybe your doc deployments aren't busting/expiring cache correctly, or maybe you need to keep old resources around?
In any case, workaround for anyone seeing this is to clear cache or CTRL-F5 the page.  Thanks for the reply.


feat: add asyncWrapper config

What: add asyncWrapper config
Why: At first glance you're probably thinking: "Oh no, no no. No way." But think for a moment that react-testing-library can't just export its own wait* APIs and make everything work, because the findBy* queries all use the waitForElement API that's exposed by dom-testing-library (not the one that would be wrapped by react-testing-library), so we have two options:

Write wrapping code for every findBy* query that exists today and keep that updated in the future if new queries are ever added. This would include wrapping within/getQueriesForElement so the findBy* queries from those are are wrapped. In addition to wrapping all the wait* utilities.
Allow configuration of the dom-testing-library wait* APIs as this PR does

I don't like either of those solutions, but I dislike solution 2 WAY less.
How:
Add a config option called asyncWrapper and wrap all the wait* APIs in that. The default just calls the callback so there's no real cost to doing it this way. I've tested this locally with and without my changes to react-testing-library and it works great (so people using a new dom-testing-library and an old react-testing-library will be fine). When I update react-testing-library I'll make sure to add a version bump to dom-testing-library so we don't wind up with the opposite situation.
Checklist:

[x] Documentation added to the docs site N/A
[x] Typescript definitions updated (I think so?)
[x] Tests N/A
[x] Ready to be merged

Note, the diff is worse than this really is. Checkout the changes in wait.js to see what's really going on in the others.

:tada: This PR is included in version 3.19.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

I think this has benefitd for another reason - MutationObserver isn't always available. It can be used to replace the waitForElement based on MutationObserver with a simpler poll or timeout - I did that in the original async wrapper lib.


Additional IDB overlays

Config IDBs

[ ] Image Viewer, including export (#58)
[ ] Modern tag export
[ ] Legacy tag export
[ ] Legacy project export

Metrics IDB

[x] See what support, others might want out of this view

Logs IDB

[x] Completed/available

Tag Historian IDB

[ ] Probably tricky to support all versions, but ideally a table + details pane model

Audit Log IDB

[ ] Simple table + details pane of events, similar to logging view

Alarm journal IDB

[ ] Simple table + details pane of events, similar to logging view

Metrics completed with #81

https://github.com/inductiveautomation/kindling/issues/18


Boolean <-> Integer duality

We should support converting between strict sorted integers and boolean masks. We may need an array type to go in both directions?
This could allow us to remove the RoaringUInt array

Capturing from slack:
Currently our tableprovider's pushdown is bottlenecked by take(varbin)

DataFusion defers to arrow's filter_bytes function to turn the predicate mask into new ArrayRef:
https://github.com/apache/arrow-rs/blob/920a94470db04722c74b599a227f930946d0da80/arrow-select/src/filter.rs#L660-L689
We want to have our own boolean builder to construct these masks, calculating run lengths, and using that to alternate between slicing/indexing in our implementation of take()

I think we resolved this in #1327 and #1351. #1327 switched the predicate/mask argument of filter to FilterMask. I'll close but obviously re-open if there's more work to do!
I profiled the entire TPC-H suite and it seems to be mostly DataFusion stuff.
_target_release_tpch_benchmark 2024-12-16 11.51 profile.json.gz


🥢Custom Errors

Let's implement this branch of Solmate into Solbase, https://github.com/transmissions11/solmate/pull/286

yesssssss

resolved!


Dashboard Freezes When Clicking on Task with Large Output

Hi there,
I've noticed a small bug when clicking on a task that has a big output inside a run. It seems like the cloud dashboard freezes.
Ps. Been loving the trigger platform btw! Great work!

@nickscamara thanks for the report! Could you send me the Run ID so I can take a look at the size of the task output? If you are able to get the Run page to load:

I've experienced this too @nickscamara. With one of our jobs we used to manage our beta list.
@ericallam you'll be able to access this run and if you click the "Get all responses" task you'll experience it: https://test-cloud.trigger.dev/orgs/triggerdev-8694/projects/admin-area-4W1-/jobs/beta-list-manual-sync/runs/clk6v2vvz023pn03sllk2w84x/tasks/01h5hy9snjmc6q8jaqnb1aa0f8
There are two things going on here I think:

We should have a loading state on the right-hand Outlet so it's clear it's loading.
The JSON is massive so the code view is probably spending a long time generating generating all the HTML elements for display.

@ericallam clle9al4h2p0ilr38dxyxdwmr


Add LaunchDarklyClient constructor that doesn't require an LDConfig argument

When using the default configuration it should be possible to create the client by calling LaunchDarklyClient.resource(sdkKey), similar to how there is a one-argument constructor on the underlying LDClient.

Resolved by #47


webui: show capabilities by function - make function count reactive

closes https://github.com/mandiant/capa/issues/2348
Checklist

[x] No CHANGELOG update needed

[x] No new tests needed

[x] No documentation update needed

preview

thank you!


Update alerts.md

Removed inappropriate usage of the word 'holy'.

It's a fun bit of copy, it'll stay. Thanks though.


ACCUMULO-1604: added check for negate option in ColumnAgeOffFilter an…

…d new test in FilterTest

+1

@milleruntime would you like to squash this into one commit before its merged?

Yeah I can do that
On Friday, July 8, 2016, Keith Turner<EMAIL_ADDRESS>wrote:

@milleruntime https://github.com/milleruntime would you like to squash
this into one commit before its merged?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/apache/accumulo/pull/122#issuecomment-231467545, or mute
the thread
https://github.com/notifications/unsubscribe/ALUpGz6MStXgGlCAU2XgRskjeF7By7lQks5qTrZHgaJpZM4JFc8O
.

Left some nit-picky suggestions, but :+1: from me as-is too. Thanks for the fix!

@milleruntime are you finished with this and ready for it be merged?

@keith-turner Yes ACCUMULO-1604 is good to go

Will merge shortly.


EPMC: Duplicated evidence strings

Reviewing the 19.06 epmc data using the unique_association_fields yielded the following insights:

The submitted file contains 7,065,740 rows.
The following combinations of UniProt ID and abstract ID are all repeated 3 times and are missing a disease ID:

http://identifiers.org/uniprot/O43612,http://europepmc.org/abstract/MED/29445282,
http://identifiers.org/uniprot/P01286,http://europepmc.org/abstract/MED/21850272,
http://identifiers.org/uniprot/Q5VZF2,http://europepmc.org/abstract/MED/29445282,
http://identifiers.org/uniprot/Q8TD46,http://europepmc.org/abstract/MED/23730297,

[ ] epmc to investigate these 3x 4 evidence strings

733,592 JSON evidence strings are repeated twice and the UniProt, abstract and disease IDs for these can be found here. These replicates are most likely entries for papers that have been scored in the abstract and the full-text pipeline.

[ ] epmc to confirm that these replicates are indeed due to abstract & full text pipeline

[ ] ot to define what we want to do with these replicates

EuropePMC will make changes to their pipelines to exclude evidence from abtracts if there is full-text evidence for the same publication

These issues will be covered in the context of the new OTAR2056 Literature project.

@MichaelaEBI where can we learn more about OTAR2056?

Unfortunately, the research projects funded by Open Targets (OTAR projects) can only be shared within the partnership. The final results will all be made publicly available, but the proposal and the intermediate results are only accessible to the partners. As @MichaelaEBI said, this project is still in its infancy and it's the next iteration of an already published OTAR project (ref)

Ah, that's unfortunate. We have quite a bit of experience with text mining (cf. https://github.com/hammerlab/t-cell-relation-extraction) and had hoped to improve the literature evidence source, having studied the existing implementation that you link and finding many areas for potential improvement. Perhaps y'all could consider a more open model for development of large features in the near future? Alternatively, how can we become a partner so that we can have access to these planning and implementation discussions?


Update to V11 style data

ESLint/Prettier made a lot of extraneous changes. The important ones are:

Remove V9 and V10 support
Change actorAttributes to use new V11 system data model as described here: https://foundryvtt.com/article/active-effects/

fixes #202
fixes #197
fixes #186

@Moerill and @Geekswordsman ,
I apologize for the mess ESLint/Prettier made of your code. Hopefully the v11 fix I made in _actorAttributes() is clear.

@paladintodd and @JasonSunday ,
Can you see if this change fixes Savage Worlds for you?

It is still the same.

Strange. It's working for me. Are you using the version from this PR or using Moerill's release?

Moerill's release.

I've never tried installing it from GithHub, but you can try this URL:
https://raw.githubusercontent.com/BeardedGnome/token-mold/master/module.json

Hello, @BeardedGnome, I tried using your module from the manifest provided, but there seems to be an error. In your manifest.json you include a release that does not exist.
"download": "https://github.com/Moerill/token-mold/releases/download/v2.21.0/v2.21.0.zip",

You should create a release from a tag in your fork and replace this inclusion with your own something like.
"download": "https://github.com/BeardedGnome/token-mold/releases/download/v2.21.0/v2.21.0.zip",

@Visovsiouk
@JasonSunday
Figured out how to publish a release. Unfortunately, it broke this PR. I'll have to figure out how to fix that now.

@Visovsiouk
@JasonSunday
Does it work for you?
https://raw.githubusercontent.com/BeardedGnome/token-mold/master/module.json

I had to publish a breaking version for Foundry v12:
Foundry v11:  https://raw.githubusercontent.com/BeardedGnome/token-mold/v2.21.0/module.json
Foundry v12:  https://raw.githubusercontent.com/BeardedGnome/token-mold/v2.22.1/module.json


Inventory management (OCC-37)

Concept
Content items which have ProductPart may also have an InventoryPart. If a type has InventoryPart, then additional conditions apply before the product can be added to the cart.
Fields or Properties
Should this use OrchardCore.ContentFields? It would be nicer, I think.

Inventory (int/NumericField) The number of items in stock.
AllowsBackOrder (bool/BooleanField) If true, ordering is allowed even if Inventory is less or equal to zero.
OutOfStockMessage (string/MarkdownField/HtmlField) Enables a specific message for an out of stock product (can be used to give an ETA).
IgnoreInventory (bool/BooleanField) If true, inventory is ignored same as not having an InventoryPart at all. This is useful for digital products for example.
MinimumOrderQuantity (int/NumericField) The minimum number of this item one can order; ignored if zero or negative.
MaximumOrderQuantity (int/NumericField) The maximum number of this item one can order (per day? ever?); ignored if zero or negative.

I have changed the ConsiderInventory from the original proposal into IgnoreInventory so it can be default false.
Events
Should have an IInventoryEvents interface with at least

AddingToCart: before item is added to cart; add custom logic e.g. authentication check and cancel adding to cart if needed.
OrderCheckedOut: after payment; should contain a default handler for updating the inventory, this is where we'll trigger workflows too.

Services and Providers

IProductInventoryService & ProductInventoryService (Product prefix so the implementation doesn't start with the letter I.)

Task<int> QueryInventoryAsync(int sku): return the current inventory count. (also suggest a Task<bool> IsAvailableAsync(int sku) as an extension method)
Task UpdateInventoryAsync(int sku, int difference, bool reset = false): Normally you want to change the inventory by decrementing with sales amount or incrementing with shipment amount. Reset sets the value to zero first. This should be locking/atomic to prevent problems with simultaneous orders.

IProductInventoryProvider & LocalInventoryProvider:

Include the actual implementations of the two methods above.
Order property.
Task<bool> IsApplicableAsync(string sku): check if it product can use this provider. For LocalInventoryProvider this means the presence of the InventoryPart.

Workflows
They are great, but it should be part of a followup issue to tighten the scope.
Project Structure
The events, interfaces and services (excluding LocalInventoryProvider) should go to OrchardCore.Commerce.
LocalInventoryProvider and InventoryPart should go it a new module, e.g. OrchardCore.Comerce.Inventory.Local. Future ERP-based implementations would go to OrchardCore.Comerce.Inventory.{ProductName} projects accordingly.

The simple implementation should simply store the info on the part, but the abstraction it implements should assume remote data. In all but the most simple shops, inventory won't be managed in the Orchard app, but will be an existing system that Orchard Commerce will have to integrate with. The abstraction may also separate cart/order integration from inventory management, which should have lower-level APIs to increment, decrement, change, query, etc. inventory levels for a given SKU.

Nwazet links for reference:

https://github.com/bleroy/Nwazet.Commerce/blob/master/Services/IProductInventoryService.cs
https://github.com/bleroy/Nwazet.Commerce/blob/master/Services/ProductInventoryServiceBase.cs

Not sure what you mean by cart management. One thing that mat seem unfamiliar in the Nwazet implementation is bundles. Those are composite products that are made of an aggregation of products. When one of the products composing the bundle becomes unavailable, you want the bundle to also become unavailable. Since bundles are not implemented in Orchard.Commerce, this part can be skipped (but might be a thing to keep in mind as an example of interesting extensions that it should be possible to implement).

Should any of the inventory part's fields be displayed when viewing the product on the user-facing site?

When should inventory be decreased — upon being added to cart, or upon completing checkout?

I'd say no by default, but it should be possible to create a template that does show it. As usual different businesses use different rules so you need to account for all possibilities. Most businesses will tell you if a product is unavailable or not, some will tell you how many items are in stock, and some -gasp- will lie about it (which is probably illegal in quite a few places) Inventory management will not even be on for all businesses, so even if you go with displaying it, it should be gracefully disappearing when the feature is not on.
That will also depend on the business. doing it on checkout seems like a reasonable default, but ultimately this looks like something that should be orchestrated with a workflow.
There's in fact a security reason not to do it on adding to cart: a business' competitor could create a bot to create fake visitors to your site and add products to the cart until your inventory is virtually depleted, then never complete these purchases. You would never be able to sell anything. Doing it on checkout at least creates the hurdle that you need to pay for depleting the inventory.

No, but you can assume that the content type that has InventoryPart also has ProductPart.
Looks like a typo, fixed.
I don't think you can, locking and async are kind of opposites. I agree that this process should be locked so feel free to replace UpdateInventoryAsync with a synchronous method.
I will write a followup comment in a bit.
Same.
I suggest adding blank template cshtml files for most of them, so they are hidden by default but can be still overridden with admin templates. Please add a nice template for the Inventory field that shows remaining stock in a similar format to the Price above. Also if the business doesn't need inventory info they should be able to simply remove the inventory part without error.
I think we can assume decreasing inventory on the checkout completion (so after payment) for the MVP. We can add a setting later to disable that e.g. if the business wants to do it via workflows when we have more support for those.

Async can be combined with locking when using SemaphoreSlim
`using System.Threading;
namespace MyNamespace
{
public class AsyncWithLock
{
// SemaphoreSlim with initialCount of 1 means only
// one thread may enter (lock) it at a time
private readonly SemaphoreSlim _lock = new(initialCount: 1);
    public async void LockingMethodAsync()
    {
        // The first thread to access WaitAsync() will return immediately;
        // all subsequent threads will be blocked until the first thread
        // calls Release()
        await _lock.WaitAsync();
        try
        {
            // single-thread-accessible code here
        }
        finally
        {
            _lock.Release();
        }
    }
}

}
`

IInventoryEvents: these two methods (OrderCheckedOut(), AddingToCart()), where should they be used and what parameters should they take? If you could, please elaborate on this part a bit more in general as I'm a bit confused.

I was thinking about adding some extension points, but now I feel like this was a bit over-engineered for the MVP. We can skip the events for this issue.

IProductInventoryProvider and LocalInventoryProvider, and their relation to IProductInventoryService's QueryInventoryAsync() and UpdateInventoryAsync() methods: what do you mean by including the implementation of the two above mentioned methods? These two methods are already implemented in ProductInventoryService (on the issue branch, that is). Should both inventory providers be derived from IProductInventoryService just to make it so the methods are available here as well?

The IProductInventoryProvider implementation should contain the business logic. the IProductInventoryService should just iterate over the IProductInventoryProvider services. The IProductInventoryService is basically a container for all its providers. See the PriceService.AddPricesAsync() for reference.

I also noticed that IsApplicableAsync() is a method (and Order is a property) of ISortableUpdaterProvider, should these new providers be based on this (much like IPriceProvider or ITaxProvider)?

Yes, IProductInventoryProvider should inherit from ISortableUpdaterProvider<T>,