Moved ServiceNow changes to new branch

Also I changed this to a draft just to make sure we don't merge since it's not able to be merged yet

Also I changed this to a draft just to make sure we don't merge since it's not able to be merged yet


About SBS models training results

Hi,
I was training all models under Market1501, but all SBS results is surprisingly bad. I am not sure what's going on here. I used the defual configs/Base-Strongerbaseline.yml didn't change anything.

[06/15 17:16:51 fastreid.engine.defaults]: Evaluation results for Market1501 in csv format:
[06/15 17:16:51 fastreid.evaluation.testing]: Task: Rank-1
[06/15 17:16:51 fastreid.evaluation.testing]: 0.3%
[06/15 17:16:51 fastreid.evaluation.testing]: Task: Rank-5
[06/15 17:16:51 fastreid.evaluation.testing]: 1.5%
[06/15 17:16:51 fastreid.evaluation.testing]: Task: Rank-10
[06/15 17:16:51 fastreid.evaluation.testing]: 2.1%
[06/15 17:16:51 fastreid.evaluation.testing]: Task: mAP
[06/15 17:16:51 fastreid.evaluation.testing]: 0.2%
[06/15 17:16:51 fastreid.evaluation.testing]: Task: mINP
[06/15 17:16:51 fastreid.evaluation.testing]: 0.1%
[06/15 17:16:51 fastreid.evaluation.testing]: Task<EMAIL_ADDRESS>[06/15 17:16:51 fastreid.evaluation.testing]: 0.0%
[06/15 17:16:51 fastreid.evaluation.testing]: Task<EMAIL_ADDRESS>[06/15 17:16:51 fastreid.evaluation.testing]: 0.1%
[06/15 17:16:51 fastreid.evaluation.testing]: Task<EMAIL_ADDRESS>[06/15 17:16:51 fastreid.evaluation.testing]: 1.0%
[06/15 17:16:51 fastreid.utils.events]: eta: 0:23:08  iter: 13999  total_loss: 35.866  loss_cls: 34.508  loss_triplet: 1.347  time: 0.3334  data_time: 0.0021  lr: 1.45e-04  max_mem: 9122M
[06/15 17:18:02 fastreid.utils.events]: eta: 0:21:56  iter: 14199  total_loss: 35.651  loss_cls: 33.897  loss_triplet: 1.733  time: 0.3336  data_time: 0.0020  lr: 1.33e-04  max_mem: 9122M
[06/15 17:19:12 fastreid.utils.events]: eta: 0:20:40  iter: 14399  total_loss: 33.896  loss_cls: 32.263  loss_triplet: 1.631  time: 0.3339  data_time: 0.0021  lr: 1.21e-04  max_mem: 9122M
[06/15 17:20:25 fastreid.utils.events]: eta: 0:19:44  iter: 14599  total_loss: 31.458  loss_cls: 29.965  loss_triplet: 1.494  time: 0.3343  data_time: 0.0020  lr: 1.10e-04  max_mem: 9122M
[06/15 17:21:36 fastreid.utils.events]: eta: 0:18:25  iter: 14799  total_loss: 30.579  loss_cls: 29.220  loss_triplet: 1.358  time: 0.3346  data_time: 0.0019  lr: 9.89e-05  max_mem: 9122M
[06/15 17:22:47 fastreid.utils.events]: eta: 0:17:22  iter: 14999  total_loss: 30.617  loss_cls: 29.375  loss_triplet: 1.246  time: 0.3348  data_time: 0.0024  lr: 8.81e-05  max_mem: 9122M
[06/15 17:24:00 fastreid.utils.events]: eta: 0:16:19  iter: 15199  total_loss: 30.139  loss_cls: 28.981  loss_triplet: 1.154  time: 0.3352  data_time: 0.0022  lr: 7.78e-05  max_mem: 9122M
[06/15 17:25:12 fastreid.utils.events]: eta: 0:15:18  iter: 15399  total_loss: 30.285  loss_cls: 29.200  loss_triplet: 1.089  time: 0.3356  data_time: 0.0021  lr: 6.79e-05  max_mem: 9122M
[06/15 17:26:21 fastreid.utils.events]: eta: 0:13:52  iter: 15599  total_loss: 29.985  loss_cls: 28.950  loss_triplet: 1.033  time: 0.3357  data_time: 0.0019  lr: 5.86e-05  max_mem: 9122M
[06/15 17:27:32 fastreid.utils.events]: eta: 0:12:47  iter: 15799  total_loss: 29.761  loss_cls: 28.778  loss_triplet: 0.981  time: 0.3359  data_time: 0.0022  lr: 4.98e-05  max_mem: 9122M
[06/15 17:28:43 fastreid.engine.defaults]: prepare test set
[06/15 17:28:43 fastreid.data.datasets.bases]: => Loaded Market1501
[06/15 17:28:43 fastreid.data.datasets.bases]:   ----------------------------------------
[06/15 17:28:43 fastreid.data.datasets.bases]:   subset   | # ids | # images | # cameras
[06/15 17:28:43 fastreid.data.datasets.bases]:   ----------------------------------------
[06/15 17:28:43 fastreid.data.datasets.bases]:   query    |   750 |     3368 |         6
[06/15 17:28:43 fastreid.data.datasets.bases]:   gallery  |   751 |    15913 |         6
[06/15 17:28:43 fastreid.data.datasets.bases]:   ----------------------------------------
[06/15 17:28:43 fastreid.evaluation.evaluator]: Start inference on 19281 images
[06/15 17:28:48 fastreid.evaluation.evaluator]: Inference done 11/76. 0.1979 s / img. ETA=0:00:13
[06/15 17:29:07 fastreid.evaluation.evaluator]: Total inference time: 0:00:20.702736 (0.291588 s / img per device)
[06/15 17:29:07 fastreid.evaluation.evaluator]: Total inference pure compute time: 0:00:16 (0.239254 s / img per device)

If you run the experiments with multi-GPUs, you need to enable synchronized bn by changing BN in backbone and head to syncBN.

Do I have to change anything if I use multigpu in AGW setting?  I didn't think AGW use BN. But AGW results didn't come up with Market1501 Baselines in MODEL_ZOO.md

I got these results on 1 GPU, if you use multi GPUs, you only need to change bn to syncBN, then you can get my result.

Understood. Thanks


Schema: Matches

This might not need to be it's own schema. Once the backend is working we can figure this out more


bump k8s version when setup minikube

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: richardwxn
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: gargnupur
If they are not already assigned, you can assign the PR to them by writing /assign @gargnupur in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

tests/e2e/local/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hi @richardwxn. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

/ok-to-test
you should join the org in istio/community

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: howardjohn, richardwxn
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: gargnupur
If they are not already assigned, you can assign the PR to them by writing /assign @gargnupur in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

tests/e2e/local/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@richardwxn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test e2e-simpleTests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@richardwxn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e_pilotv2_auth_sds.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio_auth_sds_e2e-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@richardwxn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e_pilotv2_auth_sds.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio_auth_sds_e2e-master

prow/integ-security-k8s-presubmit-tests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test integ-security-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@richardwxn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e_pilotv2_auth_sds.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio_auth_sds_e2e-master

prow/integ-security-k8s-presubmit-tests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test integ-security-k8s-presubmit-tests-master

prow/istio-integ-k8s-tests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio-integ-k8s-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

/assign @gargnupur
Can you help approve the change

@howardjohn Can you help merge it or it is an automated process here?

@gargnupur needs to /aprove the change otherwise the bot won't notice it I think. Also the test are failing so it won't merge. The tests fail because they are running under your account on circleci. I forget the exact steps, but you need to go into circleci and change the settings to not watch richardwxn/istio, then it will run under Istios account (which has more resources)

/retest

@howardjohn Thanks for the explanation. I tried updating the setting of circleci but it looks like I need to close and reopen a new pr for the updated setting to work, simply retest won't work. Do you know is there an easier way to enforce updated settings and rerun

@richardwxn maybe just force push (maybe just change commit message)

New changes are detected. LGTM label has been removed.

@richardwxn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e_pilotv2_auth_sds.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio_auth_sds_e2e-master

prow/integ-security-k8s-presubmit-tests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test integ-security-k8s-presubmit-tests-master

prow/istio-integ-k8s-tests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio-integ-k8s-tests-master

prow/integ-pilot-k8s-presubmit-tests.sh
660b397e7bfce38e5fc00e7e79b1bd0ee473a4f2
link
/test integ-pilot-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@gargnupur Can you help give lgtm label again since I push updated commit to trigger retest

/lgtm
/approve

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: gargnupur, howardjohn, richardwxn
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

tests/e2e/local/OWNERS [gargnupur]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@richardwxn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio-integ-k8s-tests-master

prow/integ-pilot-k8s-presubmit-tests.sh
6acbbe547c383870e93e79d616a79d4c2976de7d
link
/test integ-pilot-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@richardwxn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
57517e9156d56bc70d6bbc1f9e610c70c56e29ed
link
/test istio-integ-k8s-tests-master

prow/integ-pilot-k8s-presubmit-tests.sh
6acbbe547c383870e93e79d616a79d4c2976de7d
link
/test integ-pilot-k8s-presubmit-tests-master

prow/integ-mixer-k8s-presubmit-tests.sh
6acbbe547c383870e93e79d616a79d4c2976de7d
link
/test integ-mixer-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

/test integ-mixer-k8s-presubmit-tests-master


Alonzo UTXOW examples

This introduces the first 8 unit tests / examples for Alonzo: a failing and a succeeding transaction for each of: Spend, Cert, Rewrd, and Mint. Using the real Plutus interpreter!

These examples are great! We will sort out the cost model validation soon, I assume in a separate PR?

These examples are great! We will sort out the cost model validation soon, I assume in a separate PR?

yep, that's my plan.


Add view endpoint

Add endpoint that retrieves a single housing info record.
Have added additional (and hopefully helpful!) descriptions to commit messages to explain what changes were done per commit.
Any suggestions, feedback, comments would be appreciated.
Please let me know if something's missing or wrongly implemented.

From investigations done on the UH data source, it was found that:
- To get a specific contact detail e.g email or phone, this required a contactNo value obtained from the cccontactlink table.
- To get thecontactNo value from cccontactlink, you needed a tag_ref value from the tenagree table.
- To get atag_ref value, you needed a house_ref value from the property table.
Have added changes to the previous way of querying for contact details:
i.e. This would instead use an obtained contactNo value from the cccontactlink table and not personNo from the member table.

key_2 in the cccontactlink table (referring to personNo) has a data type of char(10) in the schema but personNo in member table is numeric(2,0).
It's been added as a string in the contact link infrastructure file and converted where needed.


[WIP] Moved posts connection to root query

Closes #16

@MartinDawson You mentioned, that you got rid of the viewer type. I moved the posts connection here from the viewer to the root query. Now I'm running into problems on the client, because I'm not sure, how to write the query. Did you solve that already? I tried following
The components container
fragment Posts_posts on PostConnection {
  pageInfo {
    hasNextPage
    endCursor
  },
  edges {
    node {
      id
      ...PostTeaser_post
    }
  }
}

and the [posts route]
query PostsRoute_Query ($afterCursor: String, $count: Int!) {
  posts (after: $afterCursor first: $count) @connection(key: "Posts_posts") {
    ...Posts_posts
  }
}

What should I do in the pagination query?

@MartinDawson Seems like you had the same issue :-)

Yeah, just move your connection directive to the fragment. My Example: https://github.com/MartinDawson/SoundVast/blob/graphql/src/SoundVast/wwwroot/components/songs/songsContainer.jsx

@MartinDawson Thanks a lot. It worked. It"s funny though, that you explicitly have to pass the data object inside the render function like here. Didn't need to do that before


:wrench: Add .editorconfig

Category

Feature

Overview

Add .editorconfig file in order to override default user's settings according to ESLint config file

Issue Number (if applicable)

Related issue: #353

New Vars (if applicable)

.editorconfig

Thank you for this. I'll merge on dev instead of Master.


Minor fixes

Ensure and test that Transaction ID matches its hash. This appears to have been fixed in Transaction.getTransactionIdBytes() but not Transaction.getTransactionId()
Make some classes and constants public to be usable from the read-only library
Minor typo fixes in comments

Thanks! looks good. Tests pass.

I've drafted a new release (1.3.1). Published to Maven Central. It should take a few hours from timestamp on this comment to properly propagate through all Central repos.
Thanks @nickabourisk !


Use the built-in IP Address type if supported

The ability to use the built-in IP Address type in databases that support it was added in f89c580353826fae429bc7c386a92e62a874a251 (v5.2.27). It probably should be used here instead of defaulting to a string. Any database that doesn't have this type built in will still fallback to a 45-character string field.

No plans on changing this at the current time.

@taylorotwell May I ask why not?


Colouring Configuration

Hi,
Can you please provide further details regarding colouring?
I.e how do I configure client & server in order to color language's special syntax?
Thanks

Hi
Syntax Highlighting is not done by LSP !
(except in very recent version which supports semantic tokens but it doesn't concern the whole document)
Monaco editor can out-of-the-box highlight some languages, if you want more, you can give a try to monaco-ace-tokenizer or vscode-textmate

Thanks for the response!
And what about completion? How do I configure that?
I noticed sometimes the client sends textDocument/completion message but doesn't get any related response.

Without any context, it's difficult to answer.
There is a functional example in this repo

And what about completion? How do I configure that?
I noticed sometimes the client sends textDocument/completion message but doesn't get any related response.

That should just happen automatically.

Confirm that the client is sending the JSON request.
Confirm that the server is receiving said JSON request.
Confirm that the server is sending back a) a non-empty result or b) a promise that resolves to a valid result.
Confirm that the client is receiving said JSON response.
Confirm that the client is converting the JSON response correctly to a format that Monaco understands.

...

Monaco editor can out-of-the-box highlight some languages, if you want more, you can give a try to monaco-ace-tokenizer or vscode-textmate

How is it done? can you give me an example?

And what about completion? How do I configure that?
I noticed sometimes the client sends textDocument/completion message but doesn't get any related response.

That should just happen automatically.

Confirm that the client is sending the JSON request.
Confirm that the server is receiving said JSON request.
Confirm that the server is sending back a) a non-empty result or b) a promise that resolves to a valid result.
Confirm that the client is receiving said JSON response.
Confirm that the client is converting the JSON response correctly to a format that Monaco understands.

They do send and receive JSON-RPC. but server doesn't send any completion info.

They do send and receive JSON-RPC. but server doesn't send any completion info.

Well, if the client's request looks good to you then that implies the server has a bug somewhere and then that is not a fault of the monaco-languageclient library.

For example if I want the Monaco Editor to color the word "hello" with color red, how do I configure that?

For example if I want the Monaco Editor to color the word "hello" with color red, how do I configure that?

You can take a look at the Monarch documentation and/or browse through the language definitions defined in the Microsoft/monaco-languages repository.

thanks


sub attributes

Hello! Can you shower example with sub attributes?
When i used this:
req['Vendor-Specific'] = 'subscriber:command=account-logon'
i get
TypeError: startswith first arg must be str or a tuple of str, not bytes
Thank you!

Sorry, i didn't unclude dictionary.cisco


What about constexpr?

Standard constexpr algorithms
P0202 proposes to add constepxr to many functions from <cstring> and to basically every algorithm from <algorithm>. Apparently, the proposal was rather well-received and we might have constexpr algorithms in the standard at some point in the future.
So, what about cpp-sort? Since we're already using C++14, we can use the improved constexpr but I feel that it won't solve every problem:

std::swap and a few other utility functions are not constexpr, but we could probably reimplement a few of them. Update: actually, some parts of <functional> such as std::mem_fn and a good part of <iterator> would have to be reimplemented too in order to handle everything, and some parts are rather huge.
The standard algorithms are not constexpr either, but since we ship altered versions of many of them, adding constexpr shouldn't be a problem.
Some algorithms allocate dynamic memory. There is currently no way I know of to solve this problem. Projects reimplementing a constexpr version of the standard algorithms such as Bolero Murakami's Sprout don't use algorithms that allocate heap memory; these projects are generally only meant to be used at compile-time.

I would be trivial to change some algorithms to be constexpr but it's probably not the case for most of them. A partial constexpr support could be a starting point.

The first revision of P0202 takes several design choices into consideration and gives the following set of rules to make standard algorithms constexpr (<cstring> has been disqualified from constexpr enhancements):

For some of them, most notably the non-mutating ones, just adding constexpr should be enough.
Some of them rely on std::memcpy and friends, so compilers are encouraged to use their own equivalent constexpr intrinsics of these functions instead. It concerns everything that relies on the std::copy and std::move family of algorithms.
Algorithms that might allocate heap memory such as std::stable_partition and std::stable_sort are not marked constexpr.

Basically, we will wait for a constexpr-ified standard library (at least for std::copy and std::move), then we can start to constexpr-ify cpp-sort. The whole iter_move thing might make things harder to do though. Anyway, this is definitely a future issue.
Use cases
I often wondered whether there were use cases for constexpr sorting algorithms. Here is a list of situations where sorting at compile-time might be useful:

Compile-time std::set which sorts its input and performs a binary search on lookup, which is more performant than the tree implementation (e.g. Frozen).
It can be used to reorder struct fields by size to make tighter structs.
Other ideas?

Marking this as a future issue for now. Apparently not everyone thinks P0202 is a good idea, and too many existing parts of the standard library would have to be implemented again in order to be usable at compile-time.

C++20 is approaching with plenty of extended constexpr and compile-time utilities, most notably:

constexpr <algorithm>
More constexpr here and there in the library
constexpr new and delete might solve the problem of allocating algorithms if accepted (+ allocators, etc.)
Maybe constexpr std::string and std::vector and related utilies (std::char_traits)
consteval functions
std::is_constant_evaluated, which might help for the cases where std::memcpy is not usable
constexpr union, try/catch, dynamic_cast, typeid, which might help to complete the remaining gaps

All those improvements should make C++20 the suitable candidate for making most of the library constexpr.

Another advantage I hadn't thought of is that undefined behaviour isn't allowed when invoking constexpr functions, so it would be something valuable in the testsuite. Once many functions are marked constexpr, on interesting way to test them would be to use Catch2's STATIC_REQUIRE when possible.
Both compile-time checks and runtime checks are interesting though (just to make sure that all the tests are run even when there are failures at compile time), so I would most likely just add another CI job per compiler for compile-time tests, and define CATCH_CONFIG_RUNTIME_STATIC_REQUIRE for the ones that already exist. That would warrant another option in the testsuite CMake file.

Instead of completely waiting for C++20, I decided to start rolling out some constexpr support in version 1.10.0: the idea is that even if we don't provide constexpr sorters ourselves, the library components such as sorter_facade can still be used to create constexpr sorters. This is still fairly limited since passing ranges to a sorter in a constexpr context won't work before C++17, but this is somewhat enabling without having to change many things.

In the spirit of a few messages above, 1.13.0 ships with a new CMake option called CPPSORT_STATIC_TESTS which controls CATCH_CONFIG_RUNTIME_STATIC_REQUIRE. I changed tests to use STATIC_CHECK instead of CHECK when it was trivial to do so. By default all tests are deferred to runtime, but setting that new option to ON allows the changed ones to run at compile time instead.
The constexpr support is rolling out slowly, but those are all good first steps.

Changing the whole test suite would be quite the task and I still don't have a master plan for it, so for now I decided to go with the simplest approach: have a new test where constexpr sorters are called at compile time on a small array. This is quite limited for a bunch of reasons (for example it only tests algorithms that work on random-access iterators) but will already allow to see which sorters can be made trivially constexpr and which ones require additional work. We need to start somewhere and that's a good place to start if any.
List of sorters to try to make constexpr:

[ ] adaptive_shivers_sorter
[ ] cartesian_tree_sorter
[ ] counting_sorter
[ ] drop_merge_sorter
[ ] float_spread_sorter
[ ] grail_sorter
[ ] heap_sorter
[ ] heap_sorter<4>
[ ] insertion_sorter
[ ] integer_spread_sorter
[ ] mel_sorter
[ ] merge_insertion_sorter
[ ] merge_sorter
[ ] pdq_sorter
[ ] poplar_sorter
[ ] quick_merge_sorter
[ ] quick_sorter
[ ] selection_sorter
[ ] ska_sorter
[ ] slab_sorter
[ ] smooth_sorter
[ ] spin_sorter
[ ] split_sorter
[ ] spread_sorter
[ ] std_sorter
[ ] string_spread_sorter
[ ] tim_sorter
[ ] verge_sorter
[ ] wiki_sorter

I will first perform tests on the 2.x.y branch, but might also backport the ones that can trivially be made constexpr to the 1.x.y branch, guarded with a macro only enabling the feature in C++20 mode.

Components that can reasonably be marked constexpr without too much additional work in 1.x.y:

[ ] heap_sorter
[ ] insertion_sorter
[ ] quick_sorter
[ ] selection_sorter


provisioning uses secrets from vault

Provisioning is now self contained, only vault password is needed as
input. There is a initialize_ramdisk.yml playbook that extracts
certificates, ssh keys and openstack credentials to under /dev/shm/
in a cluster specific subdirectory. Heat (de)provisioning takes care
of adding/removing the ssh keypair used in configuration tasks in
Ansible.
Ansible retry-files are also disabled as redundant.

Getting rid of ramdisk data is definitely a good idea. However, very soon we'll have containerized environment for deployments, and there we can match the the expectations for lifecycle of this data easily for both interactive development runs and CI processes.

LGTM


Add search form to armeria.dev

Currently, the official documentation site(https://armeria.dev) does not provide a search form.
There are search plugins integrating to Gatsby https://www.gatsbyjs.com/docs/adding-search/

It'd be also nice if we can include the class/method list in the search autocompletion form.


Format code style

@angao a couple of things:

as with another of your PRs, now that we're working with Hugo/Blackfriday, blocks inside listitems need to be formatted differently, with careful attention to indentation, to keep list numbering correct. See https://github.com/kubernetes/website/blob/master/content/en/docs/test.md
a lot of folks don't put much in the way of commit messages in, but you're doing a lot to help with formatting issues, so if you could specify which issue you're addressing, and how, and why, that would help speed up the review.

Thanks!

@angao Please resolve the conflict and respond to the review feedbacks. Thanks.

@tengqm ok, I have resolved this conflict

@angao pls check Bradamant3's comments on getting the numbered list correctly formatted. Basically, code blocks in a list need to be indented by 6 spaces.

@angao You are correct. The current version works well. Thanks.
/lgtm
/approve


Nick: Watch sgbsolar.com

Nick requests the watch of the watch_keyword sgbsolar\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

sgbsolar\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by cocomac in Charcoal HQ


A.1-10

Migratable from CLRS2e's A.1-10. The exercise now explicitly constraints that |x| < 1.

Migrated from CLRS2e's A.1-5


@ApiImplicitParam is not resolving class of the dataType correctly

I am using swagger version 2.50
@ResponseBody
@ApiImplicitParam(name = "account", value = "new account",
        dataType = "com.company.model.Account", paramType = "body")
public Account createAccount(HttpServletRequest request) throws IOException {
       ...
}

The value in the dataType is the name of the class. Class.forName() should be able to resolve it. However in the swagger output it simply says that dataType is string
What I am doing wrong? Is that a bug?

Is it fixed?

ApiImplicitParams are supposed to be used for headers, cookies (parameters that are implicit). As a result it only supports scalar types and for simplicity they are always `string.

Perhaps cookies aren't supported in editor.swagger.io. It is supported in the spec for sure


Reduce empty whitespace in the display of a ticket

A ticket with a number of follow-ups will typically generate an hrule and  an empty buttongroup div in almost all of the panels.
This patch suppresses this empty output, and thereby makes more of the ticket and followup thread visible on the screen at once. Its a minor thing, but since I've written a local patch to fix it, here it is. It's rather ugly, due to the limitations of the Django template language in dealing with complex expressions.
diff --git a/helpdesk/templates/helpdesk/ticket.html b/helpdesk/templates/helpdesk/ticket.html
index 4ad4827..d02aab4 100644
--- a/helpdesk/templates/helpdesk/ticket.html
+++ b/helpdesk/templates/helpdesk/ticket.html
@@ -105,6 +105,9 @@ $(document).on('change', ':file', function() {

                             {% if forloop.last %}

{% endif %}
                         {% endfor %}
+
+{% with possible=helpdesk_settings.HELPDESK_SHOW_EDIT_BUTTON_FOLLOW_UP %}
+    {% if  possible and followup.user and request.user == followup.user and not followup.ticketchange_set.all or  possible and user.is_superuser and helpdesk_settings.HELPDESK_SHOW_DELETE_BUTTON_SUPERUSER_FOLLOW_UP %}

                             {% if helpdesk_settings.HELPDESK_SHOW_EDIT_BUTTON_FOLLOW_UP %}
@@ -116,6 +119,7 @@ $(document).on('change', ':file', function() {
                                 <button type="button" class="btn btn-warning btn-xs"> {% trans "Delete" %}</button>
                             {% endif %}

+{% endif %}{% endwith %}

Thanks! I applied this patch to master.


go vet: possible misuse of unsafe.Pointer

When running go vet ./... I see a few errors that should be fixed:
./sqlite3.go:476:63: possible misuse of unsafe.Pointer
./sqlite3.go:494:67: possible misuse of unsafe.Pointer
./sqlite3.go:507:71: possible misuse of unsafe.Pointer
./sqlite3.go:524:67: possible misuse of unsafe.Pointer
./sqlite3.go:538:70: possible misuse of unsafe.Pointer

It looks like these are all flagging uses of the newHandle function, which indeed violates the rules about uintptr to unsafe.Pointer conversions. In particular, it returns an incrementing counter and then tries to treat it as a pointer, which I believe has the capacity to really confuse the garbage collector, or worse.
https://golang.org/pkg/unsafe/#Pointer

Conversion of a uintptr back to Pointer is not valid in general.
A uintptr is an integer, not a reference. Converting a Pointer to a uintptr creates an integer value with no pointer semantics. Even if a uintptr holds the address of some object, the garbage collector will not update that uintptr's value if the object moves, nor will that uintptr keep the object from being reclaimed.

This function ought to be replaced with a compliant implementation, like this.


[PageContainer] slotProps is not inferring the actual toolbar component's props type

Steps to reproduce

Define a component to use as toolbar in PageContainer, e.g. function PageActions({ status }: { status: string }) { ... }
Pass the slots and slotProps on PageContainer: ... slots={{ toolbar: PageActions }} slotProps={{ toolbar: { status: 'something' } }} ...

Current behavior
Typescript throws the following error over slotProps
TS2353: Object literal may only specify known properties, and status does not exist in type PageContainerToolbarProps

Expected behavior
The props type of PageActions component should be inferred and not throw when I pass the expected props to slotProps
Context
No response
Your environment

npx @mui/envinfo
   System:
    OS: Linux 6.8 Ubuntu 24.04.1 LTS 24.04.1 LTS (Noble Numbat)
  Binaries:
    Node: 22.9.0 - ~/.nvm/versions/node/v22.9.0/bin/node
    npm: 10.8.3 - ~/.nvm/versions/node/v22.9.0/bin/npm
    pnpm: Not Found
  Browsers:
    Chrome: 131.0.6778.85
  npmPackages:
    @emotion/react: ^11.13.5 => 11.13.5
    @emotion/styled: ^11.13.5 => 11.13.5
    @mui/base:  5.0.0-beta.62
    @mui/core-downloads-tracker:  6.1.9
    @mui/icons-material: ^6.1.9 => 6.1.9
    @mui/lab:  6.0.0-beta.16
    @mui/material: ^6.1.9 => 6.1.9
    @mui/material-nextjs: ^6.1.9 => 6.1.9
    @mui/private-theming:  6.1.9
    @mui/styled-engine:  6.1.9
    @mui/system:  6.1.9
    @mui/types:  7.2.19
    @mui/utils:  6.1.9
    @toolpad/core: ^0.10.0 => 0.10.0
    @toolpad/utils:  0.10.0
    @types/react: ^18 => 18.3.12
    react: ^18 => 18.3.1
    react-dom: ^18 => 18.3.1
    typescript: ^5 => 5.6.3

Search keywords: PageContainer, slotprops, infer, toolbar

Instead of passing the intended props to the custom component via slotProps, you can pass it to the custom component itself and wrap the custom component definition in a useCallback, which you can pass to the slot instead of the component function.
Something like: https://codesandbox.io/p/sandbox/cocky-morning-lccr4w

Thanks; yeah, that will do for now, but i would consider this approach a workaround, I think the expected behaviour would be for the props to be inferred properly.


Added IWritableArchive interface

So that when working with ArchiveFactory, you can cast the opened
archive to IWritableArchive for accessing AddEntry, RemoveEntry and
SaveTo methods without having to know what type of archive is opened
underhood. Also moved extension methods from AbstractWritableArchive to
this new interface. Also added GZipArchive to ArchiveFactory.Create as
it is one of the 3 writable archive types (zip, tar, gzip), not sure why
it was omitted.
Also replaced NotImplementedException for streams.
Especially for streams, it is more appropriate to throw
NotSupportedException instead of NotImplementedException. Usually
consumers of streams expect NotSupportedException to handle errors.
For reference about this best practice, please see
these articles:
http://blogs.msdn.com/b/brada/archive/2004/07/29/201354.aspx
http://blogs.msdn.com/b/jaredpar/archive/2008/12/12/notimplementedexception-vs-notsupportedexception.aspx

Thanks for the clean up!


Get a public attributes object for programatic use.

I'm building an image-process component which use the eleventy-img plugin and it would be useful to have access to an object of public attributes only to feed to the generateHTML method. When using webc.attributes directly I get all the attributes including webc:*, @attributes, :@my-private-attribute, etc. I came with my own (maybe naive) workaround which is filtering webc.attributes. It works, but it is very brittle.
const attributes = () => Object.keys(webc.attributes)
    .filter((key) => !key.startsWith("webc:"))
    .filter((key) => key !== "src")
    .filter((key) => key !== "uid")
    .filter((key) => key !== "options")
    .filter((key) => key !== "attributes")
    .reduce((newObject, key) => {
      newObject[key] = _attributes[key];
      return newObject;
    }, {});

Something like webc.attributes.public or getPublic(webc.attributes) would do. Here's the full component for context.
<script webc:type="js" webc:root="override">
  const Image = require("@11ty/eleventy-img");
  const _attributes = webc.attributes;
  const src = _attributes.src;
  const options = _attributes.options || {};
  const attributes = () => Object.keys(_attributes)
    .filter((key) => !key.startsWith("webc:"))
    .filter((key) => key !== "src")
    .filter((key) => key !== "uid")
    .filter((key) => key !== "options")
    .filter((key) => key !== "attributes")
    .reduce((newObject, key) => {
      newObject[key] = _attributes[key];
      return newObject;
    }, {});

  Image(src, options)
    .then((imgMeta) => Image.generateHTML(imgMeta, attributes(), {
      whitespaceMode: "inline"
    }))
    .catch((error) => console.error(error));
</script>

So far, I'm having a lot of fun writing WebC!  Good point!

I guess that's a bit of an edge case. Thank you for considering! 😊

webc.filterPublicAttributes(webc.attributes) will ship with 0.10.1!

Docs building to https://www.11ty.dev/docs/languages/webc/#extra-data-for-javascript-render-functions


Limits on relationships

Description
There is a caveat on relationships, due to many to many, we cant limit the results because we dont know which records are responsible of which relation

update document please

Hello @ThanhSonITNIC
Is this a problem for you ? Basically the limit is applyed on backend side after the query ?

No problem, but documentation outdate
"limit": 2

It should be working actually, the sql query isnt limited. I'll specify this anyway


[CRP] Lanelet2Local sensor abstraction

Description: Create the world, scenario and ego messages from the available inputs.
AC:

scenario message is created and published by transforming lane data from global to local coordinate system in a predetermined area around ego
ego message is created and published from available sensor and vehicle data
system specification doc updated

Collected ego topics and published them in the predefined form
In scenario creation a temporary solution has been created (for now, without route):

find the next possible lanelets after ego lanelet
select the first one from the list
This requires maps that have only the desired path. After path selection the points are extracted starting from the closest to ego until the limit (param) is reached.

Tested with handling map


fix(gvisor): skip invalid/untraceable sandboxes at startup

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area libscap-engine-gvisor

Does this PR require a change in the driver versions?
no

What this PR does / why we need it:
There are several cases in which we could find invalid sandboxes, e.g.:

race condition between stopping and querying them
on k8s, the pause container

In those cases Falco should not crash, but rather not trace those sandboxes.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
The continue may look redundant, but I wanted to be explicit when skipping over an error.
Does this PR introduce a user-facing change?:

fix(gvisor): skip invalid/untraceable sandboxes at startup

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

(cc @loresuso )

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, loresuso, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Splitting Polygon with hole returns wrong format

A hole in a polygon is defined inside of the polygon self:
  var poly = {
    "type": "Feature", "properties": {}, "geometry":
      {
        "type": "Polygon",
        "coordinates":
          [
            [[0, 0], [1, -1], [2, 2], [0, 0]], // Base polygon
            [[0.3, 0.3], [0.6, 0.6], [0.5, -0.5], [0.3, 0.3]] // hole
          ]
      }
  };

When I now execute the split, it returns a own polygon instead of a hole:
Data:
  var poly = {
    "type": "Feature", "properties": {}, "geometry":
      {
        "type": "Polygon",
        "coordinates":
          [
            [[0, 0], [1, -1], [2, 2], [0, 0]],
            [[0.3, 0.3], [0.6, 0.6], [0.5, -0.5], [0.3, 0.3]]
          ]
      }
  };

  var line = {
    "type": "Feature",
    "properties": {},
    "geometry": {"type": "LineString", "coordinates": [[0.395508, 0.999705], [2.471924, 0.823946]]}
  };

  var output = polygonsplitter(poly, line);
  console.log(output)

The output returns:
{
    "type": "Feature",
    "properties": {},
    "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
        [[[0.9525536638369576, 0.9525536638369576], [0, 0], [1, -1], [1.6316893249065927, 0.8950679747197778], [0.9525536638369576, 0.9525536638369576]]],
        [[[1.6316893249065927, 0.8950679747197778], [2, 2], [0.9525536638369576, 0.9525536638369576], [1.6316893249065927, 0.8950679747197778]]],
        [[[0.3, 0.3], [0.6, 0.6], [0.5, -0.5], [0.3, 0.3]]]] // The hole is now a own polygon and not inside the "master"-polygon
    }
  }

If you enter the geojson here, you see that the hole is not rendered as hole.
The correct geojson would look like that:
{
    "type": "Feature",
    "properties": {},
    "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
        [
          [[0.9525536638369576, 0.9525536638369576], [0, 0], [1, -1], [1.6316893249065927, 0.8950679747197778], [0.9525536638369576, 0.9525536638369576]],
          [[0.3, 0.3], [0.6, 0.6], [0.5, -0.5], [0.3, 0.3]] // hole is inside the master
        ],
        [[[1.6316893249065927, 0.8950679747197778], [2, 2], [0.9525536638369576, 0.9525536638369576], [1.6316893249065927, 0.8950679747197778]]]
      ]
    }
}

Docs:
I found here a simple explanation for holes in Polygons.
There is only one thing missing. According to the specs, the polygons needs to be follow the right-hand rule:
exterior rings are counterclockwise and holes are clockwise.
Based on that, the “hole”-polygon needs to moved inside of the big  / first polygon and then the coords of the hole must be reverted (to be clockwise):

Thanks for the bug report @Falke-Design , I'll take a look, I have a suspicion it is misbehaving because the hole points are on the exterior ring.

Do you mean the hole points in the source polygon? For me the structure of the data looks good. There is a exterior and a interior (hole) array


Adding admonitions for improved functionality

Summary
There is technically a {{ params PARAM }} for pulling page-level parameters, but nothing (at a glance) for site-level parameters.
This specifically pulls any params set at the Site config.toml -> [params] section.
This opens up similar behavior to our Sphinx docs where we populate config.toml with static data that we then pull down into individual pages as-needed.

@rushenn I had considered trying to add a fallback or logical conditional so this can be used for either Site or Page params, but that felt like a little bit too much.
There's also near zero error checking here, so LMK if you have ideas on how to improve or optimize this.

@ravindk89 If I understand correctly, we could achieve the same result using the built-in {{ .Site.[param-name] }}. However, it doesn't provide any validation if the param is missing from the config file. Is the main purpose of this shortcode to ensure that validation is in place?

Honestly I could not make heads or tails of the Hugo docs to identify that as an option :grimacing:
That said I think the validation is helpful - we want to know if the key is missing or unset so we can do something about it, instead of injecting a blank option.

I had also considered maybe extending this core logic to support lookups from a key-value store or external YAML file so we could support other kinds of replacement logic, but that can come later.


Unable to reproduce the results

I tried to reproduce the results on GLUE benchmark. I got F1 score 66 on MPRC, which is much lower than the one reported in the paper(78). I also got accuracy 77 on SST-2. which is also abnormal.
Running script:
python ./run_glue_discrete_LM.py \
--task_name=mrpc \
--per_device_train_batch_size 16 \
--per_device_eval_batch_size 16 \
--weight_decay=0.1 --seed=42 \
--k_shot 16 --prompt_learning_rate 1e-4 \
--sample_size 20 --prompt_length 10 \
--prompt_search_space 200 \
--api_limit 8000 --ce_loss True

May I ask how to fix it?

Hi,
Thank you for your interest in our work!
It is caused by different hyper-parameters. Here is a set of hyper-parameters for MRPC in our experiments for your reference:
python ./run_glue_discrete_LM.py \
--task_name=mrpc \
--per_device_train_batch_size 16 \
--per_device_eval_batch_size 16 \
--weight_decay=0.1 --seed=42 \
--k_shot 16 --prompt_learning_rate 1e-3 \
--sample_size 30 --prompt_length 20 \
--prompt_search_space 100 \
--api_limit 8000 --ce_loss True

I obtain the results as follows:
Black_test_f1  = 79.52

Thanks for your quick reply.
I try the provided hyperparameters. It will give below error:
Traceback (most recent call last):
  File "/mnt/disk1/Black-Box-Prompt-Learning/./run_glue_discrete_LM.py", line 823, in <module>
    main()
  File "/mnt/disk1/Black-Box-Prompt-Learning/./run_glue_discrete_LM.py", line 568, in main
    prompts_discrete_indices = prompts_dist.sample()
  File "/mnt/disk1/anaconda3/envs/bdpl/lib/python3.9/site-packages/torch/distributions/categorical.py", line 107, in sample
    samples_2d = torch.multinomial(probs_2d, sample_shape.numel(), True).T
RuntimeError: invalid multinomial distribution (encountering probability entry < 0)

I also find that the eval f1 becomes lower during the training process:
epoch 0: {'accuracy': 0.46875, 'f1': 0.6046511627906976}
epoch 1: {'accuracy': 0.46875, 'f1': 0.5853658536585366}
epoch 2: {'accuracy': 0.40625, 'f1': 0.4864864864864864}
epoch 3: {'accuracy': 0.34375, 'f1': 0.39999999999999997}

Since the provided pmi vocab download link is invalid. I generate the pmi vocab through
python pmi_ngram.py --dataset glue_data/MRPC/msr_paraphrase_train.txt --output_dir pmi/mrpc.txt

with glue data download from link.
May I ask if the pmi vocab is wrong?

Hi,
Sorry for my late reply. I was a bit swamped these days.
It is weird to see the error:
RuntimeError: invalid multinomial distribution (encountering probability entry < 0)
First of all, I think we need to solve this issue. I never see such message.
I have updated the pmi vocab. Could you please download it again?
Thanks!

Hi @shizhediao ,
The pmi vocab at https://drive.google.com/file/d/1Yk6JSYKXrG356o8rs2dtMTOIBJgSJOGE/view?usp=share_link still doesn't exist.

Hi I uploaded it again to the Google Drive. Could you try this link?
Thanks!

Hi @shizhediao ,
I try the provided pmi vocab. It still gives the same error.
Thanks!

Could you provide more log information?
I checked with the error message (e.g., https://stackoverflow.com/questions/57627943/invalid-multinomial-distribution-encountering-probability-entry-0-at-pytorc) and doubted that it was caused by NaN value.

Hi, it's indeed caused by nan value. Do I need to tune the hyperparameters by myself? What's the range of each hyperparameter?

Hi
Although I did not know why the same hyperparameters do not work well on another machine, it would be good to tune the hyperparameters. At least, we should avoid training instability.
Here are some essential hyperparameters:
sample_size: >10 the larger the better
prompt_length: [0, 100]
prompt_learning_rate: [1e-6, 1e-4]

Hi @shizhediao,
Thanks for the well-documented codes. Currently, I'm experiencing the same issue as @MatthewCYM, where I'm encountering abnormal performance on several datasets. Specifically, I'm observing lower performance on MNLI (26.8 vs. 42.5), SST-2 (76.5 vs. 87.6), MPRC (68.8 vs. 78.1), and CoLA (-0.9 vs. 4.6) when using the hyperparameters mentioned in Table 6 in Appendix A.4. I'm curious if this discrepancy is due to differences in the environment or different hyperparameters being used. I noticed that you're using a batch size of 16 for the MRPC dataset, whereas Table 5 specifies a batch size of 32.
For the environment concern, when I install the environment using the command source install.sh, the version of the datasets package that gets installed is 2.6.1. However, running the code with this version throws an error:
File "./Black-Box-Prompt-Learning-main/run_glue_discrete_LM.py", line 260, in main
    raw_datasets = load_dataset("glue", args.task_name)
………………
TypeError: can only concatenate str (not "int") to str

After upgrade datasets package to version 2.12.0, I can run the code, but I encounter the same NaN error with the following command:
python ./run_glue_discrete_LM.py \
--task_name=mrpc \
--per_device_train_batch_size 16 \
--per_device_eval_batch_size 16 \
--weight_decay=0.1 --seed=42 \
--k_shot 16 --prompt_learning_rate 1e-3 \
--sample_size 30 --prompt_length 20 \
--prompt_search_space 100 \
--api_limit 8000 --ce_loss True

Could you provide more information about the environment you are using? In my case, the environment looks like this
# Name                    Version                   Build  Channel
datasets                  2.6.1                    pypi_0    pypi
huggingface-hub           0.15.1                   pypi_0    pypii
torch                     1.7.1                    pypi_0    pypi
torchaudio                0.7.2                    pypi_0    pypi
torchvision               0.8.2                    pypi_0    pypi

Additionally, if possible, could you provide a sample run for other datasets such as MNLI, SST-2, and CoLA?
Lastly, if @MatthewCYM happens to solve this problem, please let me know! Thanks in advance!

Hi,
We have updated some of the trained discrete prompts based on RoBERTa to Google Drive for your reference.
In addition, we provide the training hyper-parameters in the file name.
Please take a look.
Thanks!

Hello, I have encountered the same issue as them. After using the parameters you provided above, I also encountered the NaN issue.

Hi, after solving NaN, I tried the hyperparameters you gave above and got a result of only 0.577 for F1, which is much lower than the 0.792 you gave, which is unacceptable


⚠ Bofrost.es has degraded performance

In 2659df6, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1510 ms

Resolved: Bofrost.es performance has improved in 46d047a after 7 minutes.


Fields autocomplete in sql editor

Hi,
First of all, I would like to thank you for this project! It's so great!!! I am so happy it's very light and super fast. I see that you have autocomplete for tables and views. I saw this PR https://github.com/sosedoff/pgweb/pull/449 but don't know how to adjust it to add fields in the autocomplete.
I would appreciate it if you could add field autocompletion to the SQL editor. It would make pgweb so much cooler and useful.
Thanks,
Carlos

Existing autocomplete solution will not work as expected with column names being fed into it, AFAIK.
I think this is the main reason why it has not been implemented yet, the autocomplete needs to be smarter.

Are there any plans to implement it? Anyway to push for this feature? Can you provide me a clue as to where to look into it?

The PR you've linked is quite old, though as far as i remember the issue with bringing in all columns into autocomplete was related to the js module: it does not provide any way of configuring the nesting level, ie if i search "mytable." it should switch to autocompletion space for anything under "mytable" (cols, views, etc).Instead, it would always look up top level objects.
Maybe there were some changes in the dependencies of this project that would allow us to implement the column autocomplete, i just havent had any spare time to dig into it. Feel free to experiment tho.

Closing the issue to clear out the board of open issues.


Enable Composer cache for Travis CI builds.

Speeds up Travis CI builds.

Thanks again!

Thanks for merging. 😄


vision.py fixes

orb and gloh calls were broken.
the features c++ destructor wasn't called and needed to be called explicitly in order to release its memory. I've added a del method to features which calls af_release_features

Thank you for fixing this!


Load MenuItems dynamically

The menu items (and/or menus) can be added dynamically?
For example, I have a list of log dates that I need to be added as menu items when a "Show logs" menu is selected.
I am not sure whether this has a memory impact when you go back to the main menu etc
Thanks

I don't see why not. As long as you hold on to the Menu* that represents your "Show logs" menu, you should be able to dynamically add MenuItem* at runtime. Eventually you will run out of memory on the heap but I doubt it's much to worry about.
Have you tried adding menu's dynamically? I think this would be a nice example.

Running out of heap could be an issue, although I don't know what are the case for that.
For example, how can I scroll though a list of logs?
Having, let's say, 50 logs, read sequentially from an external EEPROM, with 5 logs per page, how these 5 MenuItems can be recreated on next page? Making 50 MenuItems and scrolling through won't work
Thanks

Since you're showing 5 per page, you could hold on to the five MenuItem's and re-use them every time the page changes . Granted, it's a bit tedious, but I can't think of another way off the top of my head. I'm planning to look all the pull requests and issues this weekend, so I'll try this out and see if I can think of a better way.

Hello there, i am in need of the same functionality. In theory dynamic menus can be created no problem. But the issue is that there is 'remove_item' missing to remove the dynamic item later (and therefore prevent memory leaks). I could implement this today, please let me know if you would like me to do it.

Issue #31 will be needed to support dynamic menus. Adding an optional callback when the Menu is selected povides a trigger for loading dynamic menu items.
Another option is to subclass Menu with DynamicMenu specifically for this purpose.

Now that #22 (NumericMenuItem) is in the code the 'show log' use case can be solved with a subclass of NumericMenuItem.
The value of the menu item can be used as the log index. And the get_composite_name() returns a sub-section/view of the log.
While the user is 'editing' the NumericMenuItem he is actually scrolling through the log. Care has to be taken so that the _maxValue and _minValue matches the actual log size.
This can be done without dynamically adding any menuitems to the menusystem.

Hello there, I believe adding the DynamicMenu would be a nice and clean solution. Let me know if i should do it. I would be more than happy to contribute :)

@eadf That's one option. There would still need to be a way to trigger loading those items (#31).
@gzabusek I'm going to look at this today and see what I come up with.

Hm, I don't think there will be any need for a trigger. To display a log we would only need one single MenuItem, a subclass of NumericMenuItem. Normally it will just display the name of the log, while in edit mode it will scroll through the log rows.

@eadf Some users might want a single MenuItem per log file. Adding an on_select callback to a Menu gives the client a lot of flexibility over how a dynamic menu it created. They can still create their own NumericMenuItem subclass if they want, but it shouldn't be part of the library. I want to avoid deep class hierarchies.

Some users might want a single MenuItem per log file

Yes, that's what I ment. Maybe i should have typed it like this..
"To display one log we would only need one single MenuItem"

They can still create their own NumericMenuItem subclass if they want, but it shouldn't be part of the library

That is also what I envisioned, it would be impossible for us to know anything about how the end user reads the log. My point is simply that the use case "display logs" can be solved without adding dynamic menus to the library.
LogMenuItems can be added by an example, reading static data for simplicity.

In your example when does the NumericMenuItem subclass get created?

It's allocated just like any other MenuComponent. In setup() or globally (like in serial_nav.ino).
When the NumericMenuItem subclass enters 'edit mode' it will have to query the actual log to fetch the valid _maxValue.

I think I understand now. I still seem limitations. The number of log files could change at run time (e.g. rotating every 24 hours/every 100kb), but the menu items that represent them are only created once during setup.
In any case, it's still a novel approach and worth an example. For some people this might be enough. I still think we need the other approach though. Do you agree?

Yeah, the concept breaks down if the number of logs vary. I'm just afraid that dynamic menus will grow the codebase too much. I'm already scavenging for extra bytes (both dynamic and flash) in my small ATmega328P projects.
Esp8266 (2/4Mb flash) would be nice (read cheap) if it wasn't so limited in GPIO pins.
I'll see if I can write down an serial_log_nav.ino example this weekend.

I agree memory use is important. It's been on my mind for a while (pun intended!) :smile: I've created #35 for this.

Looking into this a bit more and it's not as trivial as it seems. The biggest issue is with memory fragmentation (see: http://www.nongnu.org/avr-libc/user-manual/malloc.html).
I'll look into it more deeply at some point.

Hi guys,
I would like to use dynamic menus in order to show users a list of available WiFi networks (Shouldn't be a huge number)
After reading the comments above I couldn't understand what is the status of this issue. Is it possible to create dynamic menus? If so - can you provide a quick example? If not, when will it be available?
(I will use this opportunity to say that menusystem is great!!!)
Thanks!

Thanks, I'm glad you like it. :)
The current state is that I've looked into it and it's not so trivial. The potential problem is that freeing and reallocating memory for the dynamic components will probably lead to memory fragmentation, and then memory allocation will fail. I found a library called SimpleList which might help, but I've not tried.
It won't be in the next release unless someone else solves it before I make the release, which is currently planned for whenever it's ready. Once that release is done I plan to tackle this issue. I'm sorry that I can't be more concrete about when that will be.

A Menu now has an optional callback function, which can be used as a trigger for adding components dynamically. (see #50).
There is still the issue of dealing with memory fragmentation. I still like the idea of an object pool that gets recycled (as shown in the example in #38). An object pool breaks the current Menu interface which takes pointers to components in add_item and add_menu.
I've been thinking about moving away from allocating memory due to its inherent problems (heap fragmentation, leaks) to defining at compile time how big everything will be. For non-dynamic menus this is always known, and dynamic menus could use the object pool idea, recycling the objects to show different options in the menu.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_7741c394-c12d-4079-9d78-9f981a451a8d/pull/1 is merged into live branch.
Auto archive content to https://github.com/VSC-Service-Account/docs-archive-test-target_7741c394-c12d-4079-9d78-9f981a451a8d.git

Docs Build status updates of commit 5cb8b43:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-BuildPermissionInsufficientError] Your repository https://github.com/VSC-Service-Account/docs-archive-test-source has enabled Docs Build service account. It seems that at least one of the accounts, e2ebd1, does not have Read permission to the repo. Please ask your repo admin to grant correct permission to service accounts (refer to this document: https://review.docs.microsoft.com/en-us/engineering/projects/ops/engdocs/how-to-grant-service-account-permission-in-your-repository?branch=master) and then retry the build.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


feat(op2): support cppgc in async ops

#[cppgc] return values were added in https://github.com/denoland/deno_core/commit/a736d868d091406ee20c3fda44bde56def2e73f3 which made
creation of cppgc backed objects possible without direct access to V8 APIs.
This patch builds on top of that and adds #[cppgc] support for async ops.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 81.21%. Comparing base (a736d86) to head (13f3c30).
Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #673      +/-   ##
==========================================
+ Coverage   80.94%   81.21%   +0.27%
==========================================
  Files          97       96       -1
  Lines       24425    24346      -79
==========================================
+ Hits        19770    19773       +3
+ Misses       4655     4573      -82

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


Sorting algorithms

Anyone looking for a fun side project. Looking to implement new sorting algorithms into the application. The method itself can sort in place (sort list passed to method) or return a new list that's sorted!

@garroadran sounds great! Looking forward to seeing them!

@garroadran Thanks again Dan! Appreciate the additions made!
#2

My pleasure! I might come back and do another one for you later this week if I have time!


Update lib.rs

Code isn't tested. The current implementation causes problems in cases like the following:
async fn fetchDocument(url: &String) -> Result<Elements, String> {
    let client = reqwest::Client::new();
    let res = client.get(url).send().await.unwrap();
    let body = res.text().await.unwrap();

    let doc = Vis::load(&body).unwrap();

    Ok(doc)
}

Error:
error: cannot return value referencing local variable `body`

Something like the proposed changes should solve the problem.

Thanks for your pr, i will test the code in the daytime later.

@John0x  Change the &str into Into<Cow('_, str)> will not fix the above example when pass the parameter body as a String reference, the body will dropped after the function end and the reference's lifetime is not long enough. So here need to get the ownership of body, maybe a type of Cow::from(body) to owned the body. The Into<Cow<'_, str>> will really cover the cases like below:
async fn fetchDocument(html: &String) -> Result<Elements, String> {
    let doc = Vis::load(&body).unwrap();
    Ok(doc)
}

the above example may look like:
async fn fetchDocument(url: &String) -> Result<Elements, String> {
    let client = reqwest::Client::new();
    let res = client.get(url).send().await.unwrap();
    let body = res.text().await.unwrap();

    let doc = Vis::load(Cow::from(body)).unwrap();

    Ok(doc)
}

I will merge the PR later, thanks for your first PR and good advice!

@John0x the version v0.5.1 has published to update this change. thx again!


Adding tags caused data to be inserted with tons of duplicate tags

I'm not 100% sure how this happened so I'll have to experiment with it more, but upon adding new tags for some scanning space, our submissions were having the same tags applied multiple times.
Two things:

Figure out how this happened on the server side and prevent it from happening again
But also add in a constraint when submitting data that tags have to be unique in their list, which will be an additional layer preventing this from happening.

I moved 3 scope items to blacklist and then my remaining ip address was getting tagged with the same tag 4 times per item. Changes to the scope manager (whether adding or removing scope) seems to add a new duplicate tag per ip range added or removed. I currently have no idea why, but at least I can reproduce it now.


Please remove or hide this repository

Hello,
I noticed that this repository publishes (parts of) an Ebay copyrighted assignment. Could you please remove or hide this repository?
Kind regards,
Erik.

On further inspection I noticed that there are no direct inclusions of ebay copyrighted material. Sorry for stating that earlier. However, I do see several key data fragments, just slightly changed: files Sheet.csv and Sheet.txt are highly similar to files from the exercise. Furthermore, the rest of the code would be an excellent submission for our exercise. So if you did not write this code in response to our exercise, I am very curious to what happened here.
In short: I can ask you to remove this, but I am really curious where you got the idea to write this code.

If it is fine for you I would prefer to move the discussion somewhere else, you can reach me at<EMAIL_ADDRESS>

Thanks Paizo.


Fix api-reference shortcode for localized pages. (v1.22 backport)

This PR fixs issue #34178 that api-reference shortcode not working on localized pages.
It is backport of PR #34272 to v1.22.
/area web-development
/kind bug

Thanks.
/lgtm
/approve


Incremented version to <IP_ADDRESS>-SNAPSHOT.

Signed-off-by: dblock<EMAIL_ADDRESS>opensearch-security pull request intake form
Please provide as much details as possible to get feedback/acceptance on your PR quickly

Category: (Enhancement, New feature, Bug fix, Test fix, Refactoring, Maintenance, Documentation)

Maintenance

Github Issue # or road-map entry, if available:

N/A

Description of changes:

Incremented version to <IP_ADDRESS>-SNAPSHOT.

Why these changes are required?

Main is building against OpenSearch 1.1 and is no longer a 1.0.

What is the old behavior before changes and new behavior after changes? (Please add any example/logs/screen-shot if available)

N/A

Testing done: (Please provide details of testing done: Unit testing, integration testing and manual testing)

mvn -B clean package

TO-DOs, if any: (Please describe pending items and provide Github issues# for each of them)

N/A

Is it backport from main branch? (If yes, please add backport PR # and commits #)

No.
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #1429 (bbc650c) into main (1079bc1) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main    #1429   +/-   ##
=========================================
  Coverage     64.80%   64.80%
  Complexity     3213     3213
=========================================
  Files           247      247
  Lines         17264    17264
  Branches       3053     3053
=========================================
  Hits          11188    11188
  Misses         4526     4526
  Partials       1550     1550

Continue to review full report at Codecov.

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


install error with Ruby 2.2.0

RBIGNUM does not seem to be defined anymore
sparse_ruby_to_int.cpp:84: error: ‘RBIGNUM’ was not declared in this scope

RBIGNUM AND RBIGNUM_DIGITS were removed from the ruby.h of Ruby 2.2.0.
If you need this right now you can edit your ruby.h and change it to look like this:
struct RBignum {
    struct RBasic basic;
    char sign;
    long len;
    void *digits;
};
#define RBIGNUM_SIGN(b) (FIX2LONG(rb_big_cmp((b), INT2FIX(0))) >= 0)
#define RBIGNUM_POSITIVE_P(b) (FIX2LONG(rb_big_cmp((b), INT2FIX(0))) >= 0)
#define RBIGNUM_NEGATIVE_P(b) (FIX2LONG(rb_big_cmp((b), INT2FIX(0))) < 0)
#define RBIGNUM_DIGITS(b)     (RBIGNUM(b)->digits)

#define R_CAST(st)   (struct st*)
#define RBASIC(obj)  (R_CAST(RBasic)(obj))
#define ROBJECT(obj) (R_CAST(RObject)(obj))
#define RBIGNUM(obj) (R_CAST(RBignum)(obj))
#define RCLASS(obj)  (R_CAST(RClass)(obj))
#define RMODULE(obj) RCLASS(obj)
#define RSTRING(obj) (R_CAST(RString)(obj))
#define RREGEXP(obj) (R_CAST(RRegexp)(obj))
#define RARRAY(obj)  (R_CAST(RArray)(obj))
#define RDATA(obj)   (R_CAST(RData)(obj))
#define RTYPEDDATA(obj)   (R_CAST(RTypedData)(obj))
#define RSTRUCT(obj) (R_CAST(RStruct)(obj))
#define RFILE(obj)   (R_CAST(RFile)(obj))

Look for RBIGNUM in the ruby.h.
NOTE: I didn't test this other than the compilation success yet!

@rdp I do not know how do you want to fix this, if you want to edit your sparse_ruby_to_int.cpp to include those definition and structure or if you want to change the usage of that structure in your implementation.
Best,
Yvan.

could you try with git master please?
On Mon, Jan 5, 2015 at 7:53 AM, Yvan Da Silva<EMAIL_ADDRESS>wrote:

@rdp https://github.com/rdp I do not know how do you want to fix this,
if you want to edit your sparse_ruby_to_int.cpp to include those definition
and structure or if you want to change the usage of that structure in your
implementation.
Best,
Yvan.
—
Reply to this email directly or view it on GitHub
https://github.com/rdp/google_hash/issues/32#issuecomment-68717675.

build fine from master. Thanks!

ok hopefully fixed in 0.8.5 (thanks for the note).
-roger-


Add Ionic_2 Hello World

Ionic App with all source files required for a successful build...

Awesome, merged!

Thanks!


Time Series Legend default sort order

In grafana scenes, is it possible to predefine the order of Legends in the Time Series panel (table view)? Similarly, as in the case of the Tooltip, the 'Values sort order'?
I want the same effect as if I had clicked on the 'name' field.

Thank you.

Found a solution:
.setOption('legend', {       calcs: ['min','max'],       displayMode: LegendDisplayMode.Table,       placement: 'bottom',       sortBy: 'Name',       sortDesc: false,     })


Unchecked checkbox not mapped to process variable

Describe the Bug
An unchecked checkbox does not create the mapped variable
Steps to Reproduce
Scenario a: I create my form in the modeler form-builder.
{
  "schemaVersion": 2,
  "components": [
    {
      "label": "Checkbox",
      "type": "checkbox",
      "id": "Field_1l6w7am",
      "key": "chk_variable"
    }
  ],
  "type": "default",
  "id": "Form_1mnbkj6"
}

// when
I complete a task with an unchecked checkbox
// then
the mapped process variable chk_variable will not be created.
Scenario b: I create my form as html file
    <input type="checkbox"
      id="resolve-chk"
      cam-variable-name="chk_variable"
      cam-variable-type="Boolean"
 />

// when
I complete a task with an unchecked checkbox
// then
the mapped process variable chk_variable will be created and the value is false.
Scenario c: I create the checkbox in the properties panel forms tab.
<camunda:formData>
  <camunda:formField id="chk_variable" label="Checkbox" type="boolean" defaultValue="false" />
</camunda:formData>

// when
I complete a task with unchecked checkbox
// then
the mapped process variable chk_variable will be created and the value is false.
Expected Behavior

The variable will always be mapped. I assume that in scenario a the checkbox value is null. So using a defaultValue field like in the properties panel forms tab could already solve the problem
Environment

Camunda Modeler Version: [4.11.1]

Depends on https://github.com/bpmn-io/form-js/issues/190

Thanks for opening this issue.
It looks like we already track this upstream (https://github.com/bpmn-io/form-js/issues/190), could you verify it?

Hey @nikku, it seems to be the same issue.

It looks like this issue has already been fixed in https://github.com/bpmn-io/form-js/issues/190, and has been fixed for over a year in the app 🤡


Repository update causes select widget to stop showing subwindow

Upon updating the directory I have noticed that when I click the select button the tooltip (subwindow) does no longer show. I have tried rolling back to the previous release and everything works fine @derekdreery

Pinging @Lejero also who made the change.
Btw, having dropdown open a subwindow doesn't work in my tiled window manager (as the windows tile, and don't float). Would it be inconceivably hard to change the approach to dropdowns? (could it paint_with_z_index instead?)

One of my PRs updated to a newer version of druid being referenced because there was a problem with the BackgroundBrush type not existing I think, but that's the only thing I can think of that would affect it at all. Otherwise I didn't touch code outside of the ProgressBar, and ProgressBar example. So I guess there might be a drawing change somewhere since druid was last updated?

Both the select and dropdown examples are broken.
This happens because the DROP notification never reaches its intended target.
I assume this PR is the culprit after reading the changelog, although I haven't tested reverting it yet.
For now, swapping submit_notification(DROP) with submit_command(DROP) (and handle that in dropdown.rs) is the workaround I'm using.

Informational post: Under the optimistic merging strategy, commits that partially or fully revert other commits are allowed.

@arifd I recently pushed some changes to druid to fix floating windows on tiled window managers (assuming you're using the GTK backend)

Druid main, or here in the widget nursery? And excuse my ignorance but when you say "pushed" does that mean the changes are in effect already?
Also, what did the change involve exactly?
Thanks!

On the main druid repo, in #1714. It doesn't seem to be in effect here yet, because this crate is pinned on an older version of druid...

Note: Just tried the dropdown example on Windows and this still doesn't work, even after merging #37.

Note: Just tried the dropdown example on Windows and this still doesn't work, even after merging #37.

Of course, the PR does not touch that example. It fixes the select example only.
You'd need to fix that one as well, see above patch.
BTW, does directing the command directly to the widget any faster, performance wise? I'm not familiar with druid's internals.

Yeah I can confirm that this has been resolved


WatchFace#onTimeChanged performs expensive string formatting and concatenation irrespective of logging level

WatchFace#onTimeChanged is currently implemented as follows:
    protected void onTimeChanged(WatchFaceTime oldTime, WatchFaceTime newTime) {
        Logr.v(String.format("WatchFace.onTimeChanged: oldTime=%d; newTime=%d",
                oldTime.millis, newTime.millis));
    }

This performs string formatting which involves allocation of new char[] and String objects on every render cycle, irrespective of whether this event is being logged. The symptom is stuttering when rendering in interactive mode. By modifying my overridden method such that it no longer calls super.onTimeChanged, my rendering has become much smoother.
It should probably at least check whether the event will be logged before doing the concatenation. I see similar things going on in onWatchModeChanged and others, but those don't seem to be called anywhere near as often.

I had a quick look at how this one would be fixed and there are a few options.

Add a Logr.isLoggable(int) method which callers should check if they're going to perform complicated formatting to create the message. Benefit here being that absolutely no new objects are created, but you pay the cost in code complexity.

Add Logr.v(String,Object...) overloads to delay the call to String.format until you actually know that the message will be logged.

Add overloads like Logr.v(String,Object), Logr.v(String,Object,Object), ... for the cases where the number of arguments are small. Creates more methods, but avoids creating new objects, except in the case of autoboxing of primitives. Sadly, though, some of the parameters passed in are indeed primitives.

If we have Java 8 lambdas then passing a lambda is another option, but I guess that instance of the lambda still has to be constructed.
So I'm leaning towards solution #1, where anyone who wants to do String.format or other concatenation should check whether the event will be logged before doing it.
Thoughts?

I had a quick look at how this one would be fixed and there are a few options.

Add a Logr.isLoggable(int) method which callers should check if they're going to perform complicated formatting to create the message. Benefit here being that absolutely no new objects are created, but you pay the cost in code complexity.

Add Logr.v(String,Object...) overloads to delay the call to String.format until you actually know that the message will be logged.

Add overloads like Logr.v(String,Object), Logr.v(String,Object,Object), ... for the cases where the number of arguments are small. Creates more methods, but avoids creating new objects, except in the case of autoboxing of primitives. Sadly, though, some of the parameters passed in are indeed primitives.

If we have Java 8 lambdas then passing a lambda is another option, but I guess that instance of the lambda still has to be constructed.
So I'm leaning towards solution #1, where anyone who wants to do String.format or other concatenation should check whether the event will be logged before doing it.
Thoughts?

Oh yeah, I notice there is also this thing.
  public static final boolean DEBUG = Boolean.parseBoolean("true");

But it's always set to true for me. So it could be that the real bug here is that the artifact clockwise is publishing to the repo is built with this stuff enabled, when really it was supposed to be disabled.

Oh yeah, I notice there is also this thing.
  public static final boolean DEBUG = Boolean.parseBoolean("true");

But it's always set to true for me. So it could be that the real bug here is that the artifact clockwise is publishing to the repo is built with this stuff enabled, when really it was supposed to be disabled.


⚠ Minecraft has degraded performance

In aacffba, Minecraft (https://www.minecraft.net) experienced degraded performance:

HTTP code: 200
Response time: 1335 ms

Resolved: Minecraft performance has improved in 6755d41.


warning in mapping to item type 'bug'

Hello,
I am getting the following warning while exporting:

however, i am not mapping my issue types to 'bug' - bugs from jira are getting mapped to user stories and hence i have defined the states for user stories and not for bugs
is there a fix for this? @Alexander-Hjelm

You need to map the state "Require Additional Information". Read the documentation!


Fix touch event listener and styling on change account selector

It make issue, Now can't able to open switcher


Difference in "bun link" and usage command from README.md

When linking, the readme instructions say:

But the command for running is:

Resulting in:

I got that issue as well
Its usually concerning with the the .bun/bin not being in PATH variable,
the steps to fix this would be the following

export the bun binary to the path variable

export PATH="/Users/username/.bun/bin:$PATH"

reload the zshrc file

source ~/.zshrc

try running the following command to see if the binary exists

which dialectMorph

I should add this to the README.md file
Thank you for reporting this issue

I have added the information in the README.md file that should assist in fixing the error


Video not playing

[Enter feedback here]

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

ID: 83719909-241b-2902-5ff1-496934da24e3
Version Independent ID: d05e079d-f0d6-11ac-577c-f407cc49fcb7
Content: Add users and assign licenses - Microsoft 365 admin
Content Source: microsoft-365/admin/add-users/add-users.md
Service: o365-administration
GitHub Login: @cmcatee-MSFT
Microsoft Alias: cmcatee

@yogkumgit , video is playing fine on windows 11 edge browser v100 and video played on android chrome browser

@Azuredesk If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

Plays now. No idea what was going on. tried many times (also W11 Edge). Had a reboot in-between. Must have made a difference. Sorry for trouble.


Commonmark version

This allows to use markdown in config_version. I use this to make clickable links, e.g. if the config_version is:
[fix foo.wrk.lsn to hello.wrk.lsn](https://git.example.net/example/puppetmaster/commit/b4a9a6aaa606846ddkufk10e8ebc6feeb6358e55)

it will render it as a link with the commit message as text, and linking to the commit page.

Coverage decreased (-0.08%) to 26.845% when pulling 4b2a77c6b9124f56d88f3cd890eb9380573d5f4a on raphink:commonmark_version into 3fbd18245306b3abd415d234ba33145de2ac8cef on voxpupuli:master.

I like this.

This seems pretty cool 👍

Coverage increased (+0.07%) to 27.002% when pulling 74555a137517a5f520e13b0d60dca56a75d4668c on raphink:commonmark_version into 3fbd18245306b3abd415d234ba33145de2ac8cef on voxpupuli:master.

I'm testing this change and I'm running into a problem that seems unrelated though I want to make sure it's not.
Also, can you update setup.py, I'm not very familiar with CommonMark.  I would assume anything newer than 0.7.2?
install_requires=[
    "Flask >= 0.10.1",
    "Flask-WTF >= 0.12, <= 0.13",
    "WTForms >= 2.0, < 3.0",
    "pypuppetdb >= 0.3.0, < 0.4.0",

  "CommonMark >=0.7.2",

],

@mterzo added to setup.py

Coverage increased (+0.1%) to 27.074% when pulling 8772ee7154a26e8cdaef8be89a7b5cc0593fbf0e on raphink:commonmark_version into 3fbd18245306b3abd415d234ba33145de2ac8cef on voxpupuli:master.

Anyone sees a problem with this, or are you OK to merge?

I've forgot about this. I'll look at it in a couple days to make sure I didn't forget something.

Sorry, I think i'm missing this because my config_version isn't a URL:
        "code_id": null,
        "configuration_version": "1485939303",
        "corrective_change": null,
        "end_time": "2017-02-01T08:54:57.705Z"

Your configuration_version has a URL I take it?
Also, the code has been changed a bit since you submitted this, It will merge cleanly but is in the wrong function.

Yes I'm putting a markdown URL in my config version indeed.

@mterzo did you have the occasion to look into this?

It's going to merge wrong now. The functions have changed which is why I tagged it with a rebase.

ok, done @mterzo

Coverage decreased (-0.07%) to 73.568% when pulling d2b84fa784376226b41f6dbff299df4e426def51 on raphink:commonmark_version into e76fdb578c2f92787ecd788ac5693eb7e758ca0c on voxpupuli:master.

Yeah thank you!


Add safeHtml template function.

Fixes https://github.com/prometheus/alertmanager/issues/314

@brian-brazil Why is this called safeHtml, not safeHTML, in Prometheus actually? Because it's not a Go function and we apply a different style? Or accident?

I forget the reason, I was probably keeping everything camelCase.

:+1:

Ok.


Ocaml changes FFMul RFC for berkeley

This PR fixes the parameters needed in the repo to be compatible with the fixed FFMul gate from Kimchi, before hard fork. It includes:

Updated plonk_constraint_system with new layout and updated coefficients
Updated lookup pattern and number of lookups per row of ForeignFieldMul
Removed the lookups_per_row_2 feature flag since now there's none. We now have 4 and 3 only.
Updated the finalization test with the new functions (this cannot be tested until this uses the updated berkeley branch of proof-systems)

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!approved-for-mainnet

!ci-build-me

!ci-build-me

!ci-build-me

!approved-for-mainnet

!approved-for-mainnet


Tf14 dependency fix

what

Update S3 log storage dependency for 0.14 readiness.
workflows updated

why

Module is not 0.14 ready yet

supersedes and closes #33

/test all

/test all


Decouple Configuration Language

Overview
After getting our first pipeline to run in GitHub Actions (https://github.com/ALT-F4-LLC/vorpal-sdk/actions/runs/10126896725/job/28004044745 - yay) there was a moment of realization that if you are using a compiled language (Go, Rust, etc) that you will need to compile your Vorpal code to run Vorpal. This was a known limitation however, it was still included to allow the project to go as far as it could with that.
Now that we have hit kind of a hard wall, it may be valuable to decouple the language to configure packages in from the language we build Vorpal in. Because we use GRPC, we will still need to translate ?? -> GRPC schemas but we can use that middle man language as the configuration interface.
Requirements

Type System
2a. Modularity (remotely downloadable is a plus)
2b. Functional
Easily Expressible (flattening, currying, etc)

Embedded Languages
There is the possibility of using a embedded language that works naturally with Rust that we could then import into the language and parse. This would be nice because then we could just inject the file directly into Rust language and build.
Investigate

[ ] Cue
[ ] DHall
[ ] KCL
[ ] Lua
[x] Nickel

This is no longer relevant as the final solution was to go BYOL (bring your own language).


No Runtime Layer for 1.0 yet?

Description:
No Runtime Layer for 1.0 yet?
Apparently there is no matching runtime layer for Ballerina 1.0 available yet? At least it is not mentioned on the AWS Layers page: https://v1-0.ballerina.io/deployment/aws-lambda/
I can confirm that 1.0 code does not work with 0.99x layers.

Hi,
Yes, the layer was not created with v1.0.0 right away, this is just done in the v1.0.3 distribution. Please check with the latest release, and now the layer will be fixed, and is shown in the ballerina build command output itself.
Cheers,
Anjana.


Create a manager / notifier class.

manages a set of items
fires notifications when the set changes
has a notion of a 'selected' or active item

done


Aqara Smart Natural Gas Detector

Thanks for the test. You'll still need to re-base your branch to fix the conflict in the localization file, though.

The English name of this product is Aqara Smart Natural Gas Detector,not Aqara Smart  Gas Detector.Please change this differently in the main branch.Thank you.

Thanks for the test. You'll still need to re-base your branch to fix the conflict in the localization file, though.

The English name of this product is Aqara Smart Natural Gas Detector,not Aqara Smart  Gas Detector.Please change this differently in the main branch.Thank you.

Why don't you directly make changes in the PR? It should be your responsibility to maintain everything related to the devices you are integrating with.
I’m not sure if it’s because you can’t resolve code conflicts or for some other reason, but I believe this is a basic principle of community work.

In order to rebase, I'd follow these steps:
(make changes to localization file)
git commit -m "fixup"
git rebase -i HEAD~17 (change the word "pick" in front of all but your first commit to the letter "f")
git remote add upstream git@github.com:SmartThingsCommunity/SmartThingsEdgeDrivers.git
git fetch upstream main
git rebase upstream/main
git push --force

that should put your branch on the current changes and squash your commits into one


Cannot Connect to RT700

First of all, thank you for creating this integration! I am using it primarily because my Recteq app notifications have been unreliable.. Makes it difficult to relax while my grill does the work!
I am having an issue connecting my grill to Home Assistant though. I went with the method to grab the 1.abj file and ctrl+f found the gwid, then the local key, then the IP address. My Recteq IP address seems to be something along the lines of 73.37.xxx.xxx. I saw somewhere in your write-up (I think for the option to search with tuyapower) that the IP address should be 10.0.xxx.xxx. Is that a hard rule?
Anyways, I entered this information into the integration, but my grill has never been able to connect. I've tried this with Protocol 3.1 and 3.3. Am I doing something wrong? Is it possible I have the wrong IP address? Any other ideas?

I solved the issue. The IP address listed on the 1.abj file does not work. I had to scan for my device with the python tuyapower command. I scanned once, unplugged my grill, scanned again, and then was able to identify what the correct device was. I entered this IP address and it works like a charm!

Hi @mathys-lab. Glad you were able to make it work.  I was running mine today with a few port butts.  Yum!

Pork butt is hard to beat! I did some brats and burgers today.
Really appreciate you pulling this integration together. Please reach out if there is anything you need help with such as testing or putting together documentation. I'd be happy to help if I can.


Forcing HTTPS for POST

Maybe I'm not understanding something about how this should work.  But I recently used the great .config file located here:
https://github.com/awsdocs/elastic-beanstalk-samples/blob/master/configuration-files/aws-provided/resource-configuration/alb-http-to-https-redirection.config
To configure my Elastic Beanstalk instance to force all HTTP (port 80) traffic to HTTPS (port 443).  And, for the most part, it seems to be working great.
However, my app is a Node Express API, and I just noticed that this solution is not working for requests that are not GET.  Specifically, I create a POST request to http://api.permissionator.com/register in Postman.  The response I get from my API is that it Cannot GET /register.  When I look at the Postman console, it shows that a POST was received at http://api.permissionator.com/register and a 301 was returned.  Because I have "follow redirects" enabled, Postman then creates a second request to https://api.permissionator.com:443/register.  However, the second request is a GET.
Is this some kind of flaw with Postman??

Actually... I guess this might be "standard" or "expected" behavior, as explained here:
https://support.postman.com/hc/en-us/articles/211913929-I-sent-a-POST-request-but-Postman-seems-to-be-sending-a-GET-request-


fix --net none build

a test is failing because it is missing a testRequires(t, Network)
see https://jenkins.dockerproject.com/job/Docker Master (--net=none)/155/console
maybe @grubernaut wants this one :)

#dibs


Prevent rotation going into negative numbers

When I edit the rotation of street lights in ID with the arrows, the rotation degree turns into negative numbers, which then gets marked as an error by osmose. Maybe someone could fix this, so instead of negative numbers it'll start from 360 again.

Duplicate of #8206.


Specify aliases for classes to use in repository struct_namespace

struct_namespace allows users to control and customise their struct code, but so far repos don't allow  any control over which struct class is used for the returned results. Users may not want all of their struct behaviour kept in a small number of classes directly matching the relation names.
I mentioned this to @solnic and he suggested that something like this should exist in 4.0:

users.alias(:admins).select(:id, :email) would auto-map to Entities::Admin structs

Ping @flash-gordon – does that seem doable to you?

This sounds 💯 reasonable, I can confirm there are no obstacles to support this as described

There's one more thing I should mention - a lot of people asked for a way to mimic polymorphic assocs from AR because they are working with legacy schemas. So, in rom-4 something like this should be possible:
class Admins < Users
  dataset { where(type: 'Admin') }
end

Now, because this would be registered under :admins then Entities::Admin should be automatically inferred, and you can do Admin < User to share common behavior like in STI in AR.

@solnic I'm not sure if inheritance in relations is going to work well
On Tue, 13 Jun 2017 at 08:54, Piotr Solnica<EMAIL_ADDRESS>wrote:

There's one more thing I should mention - a lot of people asked for a way
to mimic polymorphic assocs from AR because they are working with legacy
schemas. So, in rom-4 something like this should be possible:
class Admins < Users
dataset { where(type: 'Admin') }end
Now, because this would be registered under :admins then Entities::Admin
should be automatically inferred, and you can do Admin < User to share
common behavior like in STI in AR.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/rom-rb/rom/issues/413#issuecomment-308014266, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAw-ttYC5yhvnHGqPLcFIkJopeAH8ofvks5sDiQHgaJpZM4N3wrX
.

@flash-gordon I'm aware of this, and I'd like to at least give it a shot (I know it won't work OOTB right now). Worst case people will have to define separate relations and configure schemas.

@flash-gordon I made inheritance work, but without schema inheritance as it's tricky as hell due to the fact schema is both get or set schema proc. Not sure how to solve this yet.

@solnic mb copying @schema_proc is enough

@flash-gordon not when you want to set a different relation alias :)

ahh, right, actually I tried to "fix" that inheritance thing but gave up quickly

if we separate schema reader from setter things should become simpler, we use instance schemas at runtime anyway so class-level schemas can be accessed using a different method


3S BMS single data frame in get_cell_voltages

Hello !
I did the experiment on the 3S BMS and I got the following error with the get_cell_voltages function:
TypeError: a bytes-like object is required, not 'int' (Line https://github.com/dreadnought/python-daly-bms/blob/cddafd09dbe1115f085d006ff46ad9ee21b97794/dalybms/daly_bms.py#L257)
response_data = b'\x01\x0e`\x0e\x9a\x00'

After looking at the get_temperatures function, I noticed that the response_data was a list instead of an array of bytes.
Thus, in BMS 3S, we only get one frame of data for the cell voltages. I have included the following fix:
    def get_cell_voltages(self, response_data=None):
        if not response_data:
            max_responses = self._calc_cell_voltage_responses()
            if not max_responses:
                return
            response_data = self._read_request("95", max_responses=max_responses)
        if not response_data:
            return False

        if not isinstance(response_data, list):
            response_data = [response_data, bytes([0] * len(response_data))]

        cell_voltages = self._split_frames(response_data=response_data, status_field="cells", structure=">b 3h x")

        for id in cell_voltages:
            cell_voltages[id] = cell_voltages[id] / 1000
        return cell_voltages

Is there another way around it?
Many thanks to you!

Please test my latest commit: https://github.com/dreadnought/python-daly-bms/commit/f3928a39586da72190ff6a41e2af6560464e4567
get_cell_voltages was handling it better than get_temperatures actually, but _read function had a bug. get_temperatures had max_responses=3 hard-coded, so it was always sending 3 requests and returned a list, even when there was only one sensor. Now it's the same in both functions and the bug should be fixed.

Thank you very much! It works perfectly.
I was curious if you don't mind me asking about how to get the n_cycles for the sinowealth if it is possible.

You're welcome. It seems to be possible, as I see the cycles field  in the Windows app. I've added it to --status now (https://github.com/dreadnought/python-daly-bms/commit/751b395834bf2f710eb0bef1b368263920dc163e), you can test it and report back if the returned value looks realistic.

Brilliant! It works really well :) Thank you very much.