Installation fails under Arch Linux

Hi guys,
Thanks for sharing your scripts!
I encountered a problem while running the following script
./scripts/esp32/generic-c3.sh
I am using an arch-based distribution and when running the script, the espidf toolchain is not installed.
The script fails with an output like this:
./scripts/esp32/esp32.sh: line 12: esp-idf/export.sh: No such file or directory
(The espidf toolchain is not installed at all, thats why the script is not found ^^)
I assume the problem lies in the install_espidf.sh file, because there some python packages are installed using apt.
I totally understand that you may not want to adapt your scripts for other package managers. Maybe you can add a disclaimer that the builder can only be used with distros using apt.
Cheers to you

I would actually be happy to add support for arch, so if you think that you can install the packages through pacman, then we could just branch off before the package manager is called. This could benefit others, too.


Detect lies on high entropy

This feature has moved to slow roll out.
Will watch

Available in workers


Translate test case from swift/test/Parse to SwiftParserTest

This translates the test cases from swift/test/Parse into XCTests that can be run in the swift-syntax repository.
All previously expected errors, warnings and notes are imported as TODOs, while the expected diagnostics are filled with those the parser currently produces.
In a first step, this performs a mechanical 1:1 translation.  Upcoming commits will need to address the TODOs by

removing them (e.g. because the diagnostics are semantic and should be reported by ASTGen in the new scheme)
matching them up with diagnostics that are already produced by the new parser
Adjusting the new parser to produce the previously expected diagnostics.

Powering through these TODOs will be quite a bit of effort but it’s something that I think we need to do…

@swift-ci Please test


Train only once and test it multiple times

Is it possible that I train the model only once and test the model on test data multiple times to get the score of the hit and MR?
I want to the test results from the model on different testing datasets. when I load the model using -ld dataset/custom_dataset/intermediate/transe  it starts the training from the beginning.
I want just to load the model and test it on test data and get the score of the hit.
Thanks

Hi, @mscsedu .Just found that it is possible to "train the model only once and test the model" with the same dataset:
  from pykg2vec.common import Importer, KGEArgParser
  from pykg2vec.utils.trainer import Trainer

  args = KGEArgParser().get_args(["-ld", "dataset/custom_dataset/intermediate/transe"])
  config_def, model_def = Importer().import_model_config(args.model_name.lower())
  config = config_def(args)
  model = model_def(**config.__dict__)
  trainer = Trainer(model, config)
  trainer.build_model()
  trainer.model.eval()
  trainer.evaluator.full_test(1)

I am not sure you can "test results from the model on different testing datasets". Within the testing process, the embedding will be extracted according to entity and relation IDs. Two datasets may have completely different sets of entities and relations or have entities and relations in common but with different assigned IDs so the model trained on one set may not have embeddings for another. Nonetheless, it works for the case such as fb15k (for training) and fb15k-237 (for testing).

Hi @baxtree I really appreciate your response. I have trained Rescal model on a custom dataset and model is saved in the intermediate directory. when I run your script, this gives an error about size mismatch for ent_embeddings.weight. Do you have any idea how to deal with it?
/content/drive/MyDrive/CIPL/pykg2vec-master/examples Traceback (most recent call last):   File "test.py", line 9, in <module>     trainer.build_model()   File "/usr/local/lib/python3.6/dist-packages/pykg2vec-0.0.52-py3.6.egg/pykg2vec/utils/trainer.py", line 106, in build_model     self.load_model(self.config.load_from_data)   File "/usr/local/lib/python3.6/dist-packages/pykg2vec-0.0.52-py3.6.egg/pykg2vec/utils/trainer.py", line 427, in load_model     self.model.load_state_dict(torch.load(str(model_path_file)))   File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 1052, in load_state_dict     self.__class__.__name__, "\n\t".join(error_msgs))) RuntimeError: Error(s) in loading state_dict for TransE: 	Missing key(s) in state_dict: "rel_embeddings.weight".  	Unexpected key(s) in state_dict: "rel_matrices.weight".  	size mismatch for ent_embeddings.weight: copying a param with shape torch.Size([23659, 50]) from checkpoint, the shape in current model is torch.Size([14951, 50]).

...RuntimeError: Error(s) in loading state_dict for TransE... Somehow it was hooking up to TransE. Thus, passing in the model name should get rid of that error:
args = KGEArgParser().get_args(["-mn", "Rescal", "-ld", "dataset/custom_dataset/intermediate/rescal"])
The user interface for adopting a pre-trained model is still far from perfect tbh. The model name could be inferred based on the config dump or the folder name and should not be default to TransE.

Thank @baxtree It is working now. I appreciate your efforts for this great repository. Do you have any plans to incorporate path queries in your pykg2vec library?
Guu, Kelvin, John Miller, and Percy Liang. "Traversing knowledge graphs in vector space." arXiv preprint arXiv:1506.01094 (2015).

Oh interesting... Will have a look. Attached their implementation in here for future reference.
Btw, https://github.com/Sujit-O/pykg2vec/pull/209 has improved the interface. E.g., you can run pykg2vec-test -ld dataset/custom_dataset/intermediate/rescal to do a full test without using the earlier code snippet.

great thank you


Homework21: Alexey Kozhan

Homework21 is done

I dont know whether report.htmp should be full filled in catigories or not. Tried everything, can't be full with info about tests. Just info that they past successfully

Why are you removing old files everytime? just create a folder for each HW
project/
hw1/
- file11.py
- file12.py
hw2/
- file21.py
- file22.py
....

Why are you removing old files everytime? just create a folder for each HW
project/
hw1/
- file11.py
- file12.py
hw2/
- file21.py
- file22.py
....

will take it into account


Start on boot not triggering addon

Have been finding that start on boot setting does not seem to start the addon up.
Mostly noted on upgrade restarts however I suspect that if there is a fault on the addon then watchdog is also not able to restart.

I also find that the start on boot doesn't work.

My suspicion with this is that home assistant is not ready for the calls to
curl -s -X POST -H "Authorization: Bearer $HA_LongLiveToken" -H "Content-Type: application/json" -d '{"attributes": {"unit_of_measurement": "Ah", "friendly_name": "Battery Capacity"}, "state": "'"$battery_capacity"'"}' $HTTP_Connect_Type://$Home_Assistant_IP:$Home_Assistant_PORT/api/states/sensor.solarsynk_"$inverter_serial"_battery_capacity $EntityLogOutput
to work and so the run.sh shutdown due to the api not being spooled up.
Might be adding some code to test the API state before pushing to it:
https://developers.home-assistant.io/docs/api/rest#actions
Looks like curl \   -H "Authorization: Bearer TOKEN" \   -H "Content-Type: application/json" http://localhost:8123/api/ might do the job to interrogate if the api is up, and if not put a wait on till it is.

The issue is that when ever there is an error response the script will stop. I.E if internet goes down and it can no longer reach the sunsync server it will crash. Same with when Homeassistant rebooted , its most probaly trying to access sunsynk whilst the network card has not yet been initialized or of the HA api is not ready.
Unfortunatly HA's watchdog does not keep on trying to start it as it may lead to other issues if it indefenitly tries to start tje scrip.
Cheap solution would be to put the entire script in an error trap.
Will take a look later in the week to see if there is a solution.

I corrected the problem. The addon should now automatically start if you reboot or when t here are errors due to the unavailability of the Sunsynk server.
"check for updates" refresh the page and then go into the addon you will see the update.
I also added the date and time at the start of the script to indicate the script's execution date/time so that you can see when last it was executed.
Thanks for reporting the issue.

I've updated and it seems to work.
Thanks for the quick fix.


docs: update quickfix section

Support custom code action menu shortcut on VSCode >= 1.71.0

We should remove that section entirely from readme and add to package.json bindings.

I agree! I'll close the issue.


feat(uefi): add post-boot-services allocator

This adds support for allocating on UEFI after exiting the boot services.

CC: @sarahspberrypi, @jounathaen


Log in not working

I am trying to use exampleFunctional.php that was working untill just few days ago, full output I get is:
PHP Notice:  Undefined index: signature in C:\php\snappy\src\snapchat.php on line 431

Notice: Undefined index: signature in C:\php\snappy\src\snapchat.php on line 431
PHP Notice:  Undefined index: error in C:\php\snappy\src\snapchat.php on line 438

Notice: Undefined index: error in C:\php\snappy\src\snapchat.php on line 438
My friends:

Seems like authentication is broken, please note that I can log in via phone with no problems at all, meaning my account is not banned.

@mzahlag it's working :) make sure you have all last commits and dependencies, also try a new fresh account because mine was having issues too (maybe it was blocked), but newer accounts works just fine
Regards

I re-downloaded php and latest version of SC-API and created new account but I still have the same problem.
It started after the "client token request uses SSL now" commit, are there any additional dependencies besides those on wiki, no idea what else could be problem ?


Transfer mesa-frames examples to mesa-examples

To test them in CI, you can take a similar approach to:

https://github.com/projectmesa/mesa-geo/pull/241

@adamamer20 Can I help you with this?

@adamamer20 Can I help you with this?

I wanted to close projectmesa/mesa-frames#91 first, I am almost done, ironing out a couple of issues.


added ddoc for #4619

description for the predefined version D_Warnings, needed with https://github.com/D-Programming-Language/dmd/pull/4619.

noice


fix: build error on the latest nightly

qemu-exit crate also must be updated. I sent a PR: https://github.com/andre-richter/qemu-exit/pull/20

Thanks! I've pushed another commit to hopefully fix the remaining CI issues.


question: are async calls into the vm Send?

I'm using mlua quite heavily in a couple of applications.
One pain point that I have in one of them is that that futures that result from async calls into the VM are !Send, making it rather awkward to integrate in the regular multi threaded tokio runtime.
Is piccolo different?
Also: one thing I love about mlua is how easy it is to define custom embedded modules and types and map them into lua.
How's that look in piccolo? I'm happy to read code examples, but I didn't spot anything obviously like that on a very very quick glance.  Can you point me to stuff to look at?
Thanks! This project sounds very interesting to me!

Just to note, next mlua version will have send feature flag replaced with sync to easily work with multithreaded apps. Under the hood it will use ReentrantMutex to support multi lock within a single thread.

Also: one thing I love about mlua is how easy it is to define custom embedded modules and types and map them into lua.
How's that look in piccolo? I'm happy to read code examples, but I didn't spot anything obviously like that on a very very quick glance. Can you point me to stuff to look at?

There's not much to look at, this project is still in its early stages. Usually most things work but they're not easy. You can check out the util crate and the [Static]UserMethods helpers: https://github.com/kyren/piccolo/blob/master/util/src/user_methods.rs if you want to see an example.

This issue made me think about it again, and I'm going to look with fresh eyes on a way to make gc-arena conditionally Send in a different way than https://github.com/kyren/gc-arena/pull/61, because being able to make Lua Send is also very important to me.

I believe there is a path forward with gc-arena towards safe "send jails" that can reasonably make the piccolo VM send.
I'm going to close this issue though because the discussion of mlua is unrelated.


⚠ PrivateHD has degraded performance

In be81b2c, PrivateHD ($PHD) experienced degraded performance:

HTTP code: 200
Response time: 21379 ms

Resolved: PrivateHD performance has improved in fe09e9b.


Apply noexcept all the things rule to posh, hoofs and binding_c

Pre-Review Checklist for the PR Author

[x] Code follows the coding style of CONTRIBUTING.md
[x] Tests follow the best practice for testing
[x] Changelog updated in the unreleased section including API breaking changes
[x] Branch follows the naming format (iox-#123-this-is-a-branch)
[x] Commits messages are according to this guideline

[x] Commit messages have the issue ID (iox-#123 commit text)
[x] Commit messages are signed (git commit -s)
[x] Commit author matches Eclipse Contributor Agreement (and ECA is signed)

[x] Update the PR title

Follow the same conventions as for commit messages
Link to the relevant issue

[x] Relevant issues are linked
[x] Add sensible notes for the reviewer
[x] All checks have passed (except task-list-completed)
[x] Assign PR to reviewer

Notes for Reviewer

Add noexcept to all C++ methods

See here for more details and current limitations

Checklist for the PR Reviewer

[ ] Commits are properly organized and messages are according to the guideline
[ ] Code according to our coding style and naming conventions
[ ] Unit tests have been written for new behavior
[ ] Public API changes are documented via doxygen
[ ] Copyright owner are updated in the changed files
[ ] PR title describes the changes

Post-review Checklist for the PR Author

[ ] All open points are addressed and tracked via issues

References

Closes partly #902

@mossmaurice one minor thing you checked: Update the PR title Follow the same conventions as for commit messages. Wouldn't that mean that the PR title has to be iox-#123 Apply noexcept ...?


use Enum for rv type

use Enum on py3.4+ and the backported enum34 package on all others.
at the moment this would be:
class RV_mode(Enum):
names = 0
indices = 1
and each dist would grow a type which is one of these enums. Information measures would look at this property to know how to do things.

Addressed in #71.

And also in bffa2c6f8274d7ea6ba3f001f413cdc93434a826 from a while back.


Teletraan load balancer

Reviewers:
@jinruh

Can you also provide a screenshot?

r+ looks good.


Explicitly allow C++ in tests

Introduction
Writing good tests is difficult enough and making sure that there are good common utilities is paramount. With the addition of the gtest twister harness we've enabled the use of it in Twister. Pigweed (yes, I know, that word again) provides a port of gTest that can run in an embedded space. This can drastically and quickly improve our ability to test and is the current plan for our tests in downstream Chrome OS.
The ask
I would like us to update https://docs.zephyrproject.org/latest/develop/languages/cpp/index.html#enabling-c-support to explicitly say that we can use C++ in the tests/ directory.

Pigweed

But pigweed was flat out rejected? https://github.com/zephyrproject-rtos/zephyr/pull/53760

Pigweed

But pigweed was flat out rejected? https://github.com/zephyrproject-rtos/zephyr/pull/53760

A) it was rejected on the premises that we didn't have an in tree use. Their port of gTest was very useful to our downstream project and we want to upstream the tests for all the drivers.
B) I'm not asking to add Pigweed. The issue is just saying "allow C++ in tests"

Also, the latest discussion about Pigweed left it open to beeping added as an optional module in https://github.com/zephyrproject-rtos/zephyr/issues/53851. I haven't gotten around to cleaning up that proposal since we changed how modules are loaded

Something I really dislike about this idea is it vastly limits devices that can run these tests. Sure native_sim and qemu would be fine, but we have micros with minute amounts of RAM, and some boards/compilers do not even support C++ mode out of the box

@thedjnK is the alternative to just not write them? The way I'm looking at it is this. I have a lot of tests to write; using templates, classes, and lambdas drastically speeds things up and makes it easier to debug. I can either:
A) write the tests in the chromium repo and they'll run to make sure that upstream changes don't break our projects
B) write them in Zephyr and everyone can benefit
Considering that the only tests for sensors in Zephyr were written by Google (AFAICT), I think it's safe to say that others either don't care (or use sensors) or don't have the headcount for it. I don't see why block the option of using C++. I'm not saying all tests should use it. Just that we allow it.

If you want to test downstream in C++ then you can do as you like.

If you want to test downstream in C++ then you can do as you like but you're trying to hold a proverbial gun to zephyr by demanding "use C++ for tests or we won't bother having any", without paying due care to what zephyr caters for
Look, if that's how you want to take it I can't stop you. I'm just saying that this isn't the top priority for me. I'm going to write tests in a way that's fast and efficient. For me that's using C++ ideally using Pigweed + gTest. If Zephyr doesn't want those tests that's fine. I'm not making any threats nor do I mean to. These are the options I'm seeing, I can either put the code upstream and have it benefit everyone or downstream. Not a threat.

Considering that the only tests for sensors in Zephyr were written by Google (AFAICT),

Unrelated to the topic really buy having a look, false. Looks like intel users did most of the contributions

I'm not sure I'm seeing the same git history as you. There are currently 6 emulated sensors only in the Zephyr drivers tree. BMI160, F75303, ICM42688, ADLTC2990, AKM09918C, and AMD_SB_TSI.
Google wrote the emulators for BMI160, F75303, ICM42688, AKM09918C, and AMD_SB_TSI
Zeiss Meditec AG wrote the emulators for ADLTC2990
It looks like a few emulators were written directly into the tests/ directory which makes them impossible to use in downstream testing, but those were for the ina230 and ina237 written by North River Systems Ltd.
Non emulated tests are provided for the ina230 and ina237

My concern with introducing an extra language in the code base (beyond the test/samples related to the language support itself) is potential maintainability implication, that is: difficulties for contributors to do changes and reviewer to review changes properly. It's no big deal for a case or two but imagine having the test/sample code base split in half between C and C++. The current expectation is that all contributors and reviewers can write/review some half decent C, I think by adding the language we are raising the bar and potentially lowering the quality considering that the current set of contributors are probably focused on good C practices - though I may be wrong about that, but that's my feeling anyway.

Yeah I think it makes sense to have C++ specific tests and samples if it's for increased coverage or has good demonstration value, what I think it's not ideal is mixing up languages based on the original author preference.

@yperess no problem with writing tests in any language as long as we end up with improved coverage and as long as this becomes part of the test framework of Zephyr, i.e. it is not some random person picking some other language based on preferences, but it is a documented and integrated way of writing tests However, it sounds like you want to use an external dependency (pigweed) to implement that? Did I get this right?

Not really, I'm writing the tests with ztest. There are some extra benefits that could be added via Pigweed, but that's not needed and is really a separate discussion. I wanted to add that bit of info in this issue just so people can see it. If we want to get into it. C++ gets us 90% of the way. gTest (via Pigweed or whatever other means) basically just gives us class inheritance for test fixtures. It's nice, but not the end of the world if we don't have.

I'm happy to remove the reference to Pigweed from the issue, but I specifically had a very clear 1 line section for what I'm asking. Just that we OK the use of C++ in tests/.

@yperess , one qeustion, how do we identy the testcases name form twister? will the c++ test report consist with our current twister C report?

I'm happy to remove the reference to Pigweed from the issue, but I specifically had a very clear 1 line section for what I'm asking. Just that we OK the use of C++ in tests/.

It could be up to the maintainer of the specific area if they prefer tests in C or C++ (and it would be good for maintainers to be clear / up front about their preference), but C should always be acceptable.

@yperess no problem with writing tests in any language as long as we end up with improved coverage and as long as this becomes part of the test framework of Zephyr, i.e. it is not some random person picking some other language based on preferences, but it is a documented and integrated way of writing tests...

Is it not the case here, in particular "some other language based on preferences"?

@yperess , one qeustion, how do we identy the testcases name form twister? will the c++ test report consist with our current twister C report?

I'm currently still using ztest. So nothing changes there.

@yperess no problem with writing tests in any language as long as we end up with improved coverage and as long as this becomes part of the test framework of Zephyr, i.e. it is not some random person picking some other language based on preferences, but it is a documented and integrated way of writing tests...

Is it not the case here, in particular "some other language based on preferences"?

I agree that just "preference" is not enough. But C++ offers inheritance, lambdas, constexpr, and templates. All which are very useful tools when building generic tests.

https://docs.zephyrproject.org/latest/develop/languages/cpp/index.html

The oldest standard supported and tested in Zephyr is C++98

So if lambdas are C++11 then this would suggest they would not be allowed

https://docs.zephyrproject.org/latest/develop/languages/cpp/index.html

The oldest standard supported and tested in Zephyr is C++98

So if lambdas are C++11 then this would suggest they would not be allowed

Actually, the default level of conformance is C++11. That implies, if someone chooses to use C++98 for their testsuite, they must not use features of C++ versions >= 98, which is more or less a given.
choice STD_CPP
	prompt "C++ Standard"
	default STD_CPP11
	help
	  C++ Standards.

I'm currently still using ztest. So nothing changes there.

@yperess , I mean if the C++ cases is added, will this still be applicaible by current twister code scan?

Architecture WG meeting 2023-12-05:

From the discussion it is clear, that many participant have personal opinions on the use of C++.
Dominating opinions seems to be:

It is better to have tests that no tests, regardless of the implementation language for the test suite
Opening up for writing tests for any subsystem/driver class/... in C++ comes with the consequence of maintainers and other developers to maintain/debug/review C++ code, which not everybody may be comfortable with.'
Further discussion is needed.

one more drawback of using c++ for test is the fact that we lack good samples and users look at tests for reference, if the reference code is in another language, that is is a problem.

one more drawback of using c++ for test is the fact that we lack good samples and users look at tests for reference, if the reference code is in another language, that is is a problem.

Not always, but I have often looked in the test directory for examples.
Also, there are many hardware tests that a user would obviously like to run on his own hardware, but would probably need to install/bootstrap another compiler (compiler version).
What happens if the maintainer + contributors leave the project due to personal reasons or company preferences change? (not that it has not happened so far) Different language is an additional hurdle to find a new maintainer/collaborator or to get a quick fix in time if CI fails. In general, the project tree should have fewer dependencies to be more fail-safe and robust. But maybe there can be optional tests as modules, where the tests are written in language like C++, Rust, or APL.

Is it not the case here, in particular "some other language based on preferences"?

I agree that just "preference" is not enough. But C++ offers inheritance, lambdas, constexpr, and templates. All which are very useful tools when building generic tests.

Also, C++ compatibility with C obviously shines compared to other languages.
On other other hand, C++ is not really a single language. Ask what "modern C++" is and everyone will have a slightly different and evolving answer. Most answers will include "Don't write C code in C++" which will be a challenge in a C project.
Bjarne Stroustrup is proposing mechanically enforced "profiles" to finally draw some lines in the sand https://lwn.net/Articles/949269/
But Profiles seem to be just an idea for now and again it's not clear whether these lines could apply to a hybrid C/C++ project. Stroustrup's "profiles" are currently aimed at mechanically enforced safety which is not possible in C (if it were possible then Coverity #64591 would be a solved problem)
tl;dr: which particular subset of C++ is allowed should be well specified and maintained by Zephyr and that's not just a version like C++98. Not sure whether it could be enforced.

What happens if the maintainer + contributors leave the project due to personal reasons or company preferences change? (not that it has not happened so far) Different language is an additional hurdle to find a new maintainer/collaborator or to get a quick fix in time if CI fails.

Pinging @andyross as it was him that added the commit

Oooph.  I'm really not the person to ask about policy decisions.  That was just a practical patch, we had features being used that didn't work on xt-xcc and the kconfig that was supposed to guard them wasn't.
But on policy, and again just arguing practically: the overwhelming majority of Zephyr platforms have current compilers with C++20 features.  And test code is just test code.  If a platform isn't appropriate to a particular subsystem (e.g. we don't bother with networking tests on audio DSPs) then I don't see why tests of that subsystem need to be bound by its requirements (i.e. sure, write a network framework test in C++ because it'll never have to be built with xcc).  Let's not go nuts, but I don't see why we can't be flexible.
That said, the converse point is that tests aimed at general functionality for all platforms need to be really conservative about language choice, and for the same reason (e.g. absolutely no C++ in tests/kernel/threads/thread_apis under any circumstances).

I'm going to write tests in a way that's fast and efficient. For me that's using C++ ideally using Pigweed + gTest. If Zephyr doesn't want those tests that's fine.
[...]
A) write the tests in the chromium repo and they'll run to make sure that upstream changes don't break our projects
B) write them in [upstream] Zephyr and everyone can benefit

This "upstream vs downstream" split sounds too binary / simplistic.
The Linux kernel hates "out-of-tree" code, so you're either in or out. It tends to be quite binary like that. Many Linux people don't even care whether your out of tree code is open-source or not. But Zephyr is very different.
Firstly, you could obviously open-source a git branch with your tests first; before this discussion converges. You said you're going to write these tests anyway. Unlike Linux, Zephyr makes an effort not to break APIs. So everyone could try your tests and there's a good chance they would just work or with minimal porting effort.
Maybe even better: would it be technically possible to isolate these new tests in a separate git repo? At least initially. It would then be both 1) easier for users to download them with west and try (no git merge!), and: 2) easier for you to manage non-backwards compatible API changes.
Tests popular, in active use and with a record of finding bugs would make a much more compelling argument than code that does not exist yet. They would also make discussions about C++ standards and variants much better informed.

That is not how I read it, I read it as the code in the whole zephyr code base including base/core core, subsystem, module, test is all (the C++ parts) C++98 compliant

It would be technically quite backwards to require all C++ code in Zephyr to only use C++98 features.
What would even be the point them of supporting newer features?
I think the better polity would be to maybe guarantee that a certain subset of the core C API (headers) must compile even with a C++98 compiler.
But explicitly disallowing newer C++ features would be...  a huge mistake. Imagine forcing everyone to have their own semi-functional workaround implementation of lambdas? That would really just weaken the project and wouldn't serve anyone.
Plus, when there is an active Kconfig choice made, i.e. yes, I would like to enable this non-minimal feature or run this particular testsuite that requires these Kconfig options / C++ standard, there is an implicit contract made anyway.

The way this conversation is drifting from "let's do C++" to "what C++ should we do" is interesting, and I'd imagine part of the reason some people prefer to dodge the subject entirely and prefer sticking with plain C. (or, some variation of plain C :-))

one more drawback of using c++ for test is the fact that we lack good samples and users look at tests for reference, if the reference code is in another language, that is is a problem.

The more I think of this, the more important I find this argument. Zephyr tests and samples are often the only way for a user to see good examples of how to use a given Zephyr API. As most users tend to write Zephyr applications in C, it would counter-intuitive to have the best API usage examples be in a different language.
The other point - which was brought forward at the Arch WG meeting on 2023-12-05 - "Opening up for writing tests for any subsystem/driver class/... in C++ comes with the consequence of maintainers and other developers to maintain/debug/review C++ code, which not everybody may be comfortable with" is also very relevant to me. Zephyr is a C-based project, which allows users to write applications in C or C++, but the core of the project is C. I personally believe this to be one of the deciding factors for users choosing to use and contribute to Zephyr, and I would not want this to start sliding towards Zephyr being a multi-language project at its core.
Opening up for writing tests in C++ for select subsystems will create confusion and likely discussions on why the maintainer of subsystem/driver class A accepts C++ test PRs, while the maintainer of subsystem/driver class B doesn't. It also raises the bar for whoever is to take over maintaining a giving area at a later point in time, if the previous maintainer accepted C++ tests, but the person interested in taking over doesn't feel comfortable with C++.
My vote is no to accept C++ in Zephyr tests other than those explicitly testing C++ compatibility.

One of the factors for tests is the ability for them to be maintainable (I don't think anyone is disagreeing with this). With the addition of the emulator backend API we're able to write a test once and ensure that all the drivers of the same class pass, here's a pseudo code example:
TEST(Sample, TestReadingData) {
  const struct device *dev = DEVICE_DT_GET(DT_NODELABEL(thing));
  const struct emul *emulator = DEVICE_DT_GET(DT_NODELABEL(thing));

  const uint8_t expected[] = {0, 1, 2, 3, 4};
  special_buffer_backend_set_data(emulator, expected, ARRAY_SIZE(expected));

  uint8_t result[ARRAY_SIZE(expected)];
  ASSERT_OK(special_buffer_read(dev, result, ARRAY_SIZE(expected)));
  ASSERT_MEM_EQ(expected, result);
}

The above test works for a DT node thing, but should work exactly the same for any other node implementing the special_buffer API. So we could extract that logic using gTest:
TEST_P(Sample, TestReadingData) {
  const struct device *dev = GetParam().first;
  const struct emul *emulator = GetParam().second;
  ...
}

INSTANTIATE_TEST_SUITE_P(
  MySampleInstance, Sample,
  testing::Values(
      std::make_pair(DEVICE_DT_GET(DT_NODELABEL(thing1)), DEVICE_DT_GET(DT_NODELABEL(thing1)),
      std::make_pair(DEVICE_DT_GET(DT_NODELABEL(thing2)), DEVICE_DT_GET(DT_NODELABEL(thing2))
  )
);

Now the same test will run for thing1 and thing2.
Let's look at another aspect, constexpr. Here's a simple C++ function:
constexpr int64_t Sum(std::vector<int> list) {
  int64_t sum = 0;
  for (auto &it : list) {
    sum += it;
  }
  return sum;
}

Now, your application doesn't even need to actually compile in std::vector, since the function is a constexpr it's evaluated similarly-ish to the preprocessor, any memory allocations are destroyed by the time the application is compiled. The up sides here are that you can (1) use std::vector with no concerns, (2) actually debug it by setting a break point at sum += it;, and (3) it's much easier to read than a macro.
I could keep going, but the final maintainability of a C++ test that's intended to be written once and run on N pairs of device / emul pointers is beyond what we can do in C.

One of the factors for tests is the ability for them to be maintainable (I don't think anyone is disagreeing with this). With the addition of the emulator backend API we're able to write a test once and ensure that all the drivers of the same class pass, here's a pseudo code example:
TEST(Sample, TestReadingData) {
  const struct device *dev = DEVICE_DT_GET(DT_NODELABEL(thing));
  const struct emul *emulator = DEVICE_DT_GET(DT_NODELABEL(thing));

  const uint8_t expected[] = {0, 1, 2, 3, 4};
  special_buffer_backend_set_data(emulator, expected, ARRAY_SIZE(expected));

  uint8_t result[ARRAY_SIZE(expected)];
  ASSERT_OK(special_buffer_read(dev, result, ARRAY_SIZE(expected)));
  ASSERT_MEM_EQ(expected, result);
}

The above test works for a DT node thing, but should work exactly the same for any other node implementing the special_buffer API. So we could extract that logic using gTest:
TEST_P(Sample, TestReadingData) {
  const struct device *dev = GetParam().first;
  const struct emul *emulator = GetParam().second;
  ...
}

INSTANTIATE_TEST_SUITE_P(
  MySampleInstance, Sample,
  testing::Values(
      std::make_pair(DEVICE_DT_GET(DT_NODELABEL(thing1)), DEVICE_DT_GET(DT_NODELABEL(thing1)),
      std::make_pair(DEVICE_DT_GET(DT_NODELABEL(thing2)), DEVICE_DT_GET(DT_NODELABEL(thing2))
  )
);

Now the same test will run for thing1 and thing2. Yes, we could in this simple example just extract the test logic to a function and have arguments pass device and emul, but this is a very simple example. Additional things you can do here can be seen in the gTest documentation, but as an example you can also use testing::Combine to shuffle two lists of testing::Values. There are a lot of ways in which parameterising the tests can give many benefits.
Let's look at another aspect, constexpr. Here's a simple C++ function:
constexpr int64_t Sum(std::vector<int> list) {
  int64_t sum = 0;
  for (auto &it : list) {
    sum += it;
  }
  return sum;
}

Now, your application doesn't even need to actually compile in std::vector, since the function is a constexpr it's evaluated similarly-ish to the preprocessor, any memory allocations are destroyed by the time the application is compiled. The up sides here are that you can (1) use std::vector with no concerns, (2) actually debug it by setting a break point at sum += it;, and (3) it's much easier to read than a macro.
I could keep going, but the final maintainability of a C++ test that's intended to be written once and run on N pairs of device / emul pointers is beyond what we can do in C.

pure buffer testing is not a good example here, can we have an effective example for RTOS context and driver context, this is what we focus most.?

closing as this was resolved by the TSC.

On other other hand, C++ is not really a single language

While working on #69411, I discovered that g++ -std=c++17 (and lower) is more lenient than g++ -std=c++20 (and higher) with designated initializers which... did NOT exist at all in the C++ standard before C++20!
(same g++ version from the Zephyr SDK, only the -std= flag differs)

closing as this was resolved by the TSC.

For competeness. from the list (https://lists.zephyrproject.org/g/tsc/message/1870):
Vote results: Motion: Allow C++ in tests [...] – Motion was APPROVED


Refactor local storage code

Pulled out the local storage code to a base class which handles the save
and restore. During a previous refactor two similar tools ended up
sharing the same storage slot. Hopefully this helps prevent that in the
future.
Also fixed a couple of bugs

I'm still debugging a few things when I go to deploy to my server, so don't land this yet.

Closing this for now while I investigate further.

Sigh, I understand what the issue is now and I'll need to investigate further.  The hack for getting the component name doesn't work when the code is minified.  I'll have to see if I can find another way, otherwise I'll need to require the string as a parameter.


Bumped version to 2.3.1.

Signed-off-by: AWSHurneyt<EMAIL_ADDRESS>Description
Bumped version to 2.3.1.
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

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.

Closing in favor of https://github.com/opensearch-project/alerting-dashboards-plugin/pull/346. Bumping main and 2.x directly to 2.4 to align with the backend plugin.


Proposal: use valibot instead of zod for schema validation

Not sure if zod is being used here for a specific reason of for the fact it’s the most popular schema validation lib out there today, but I can feel a massive flock towards valibot for its architecture, bundle size and speed
Zod: 12.37 KB Gzipped
Valibot: 1.72 KB Gzipped
It may not be a big difference server-side, but as soon as the first client-side validation is needed (e.g.: conform is used), the whole of zod will be shipped to the client too; valibot starts at under 1kB if you don’t use all the features, as it’s architected in a tree-shakeable way.

Hey 👋
Zod is an optional peerDependency that comes from remix-hono for typedEnv (https://github.com/sergiodxa/remix-hono/blob/main/src/typed-env.ts).
It is also a dev dep of this package but just used as type.
I may be wrong but it should not be brought by remix-hono or react-router-hono-server?


BrowserslistError: Unknown browser query android all

I've cloned orbit web repo inside Amazon EC2 Ubuntu 18 instance. Did a npm install and after i did npm run build i've got:
BrowserslistError: Unknown browser query android all
What's the issue with this?

This is most probably related to https://github.com/ben-eb/caniuse-lite/issues/27. Please try to run npm install agaIn, it should work now.

Closing as this seems fixed in latest version.


migrate to indy plugins api plugin

refer #1337
Hi @SylvainJuge
please review this PR

:grey_exclamation: Build Aborted

The PR is not allowed to run in the CI yet

Expand to view the summary

Build stats

Build Cause: [Pull request #1411 opened]

Reason: The PR is not allowed to run in the CI yet

Start Time: 2020-09-18T19:28:15.789+0000

Duration: 3 min 45 sec

Commit: 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7

Steps errors
Expand to view the steps failures

Name: Error signal

Description: githubPrCheckApproved: The PR is not allowed to run in the CI yet. (Only users with write permission

Duration: 0 min 0 sec

Start Time: 2020-09-18T19:30:56.417+0000

log

Log output
Expand to view the last 100 lines of log output

[2020-09-18T19:30:32.078Z] Using shallow fetch with depth 3
[2020-09-18T19:30:32.078Z] Pruning obsolete local branches
[2020-09-18T19:30:32.762Z] Merging remotes/origin/master commit 86fb00ec0707cf8cb0126dbb6c1da67a5ea93b26 into PR head commit 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7
[2020-09-18T19:30:33.073Z] Merge succeeded, producing 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7
[2020-09-18T19:30:33.073Z] Checking out Revision 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7 (PR-1411)
[2020-09-18T19:30:31.973Z]  > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
[2020-09-18T19:30:31.995Z]  > git config remote.origin.url git@github.com:elastic/apm-agent-java.git # timeout=10
[2020-09-18T19:30:32.036Z]  > git rev-parse --verify HEAD # timeout=10
[2020-09-18T19:30:32.045Z] No valid HEAD. Skipping the resetting
[2020-09-18T19:30:32.045Z]  > git clean -fdx # timeout=10
[2020-09-18T19:30:32.084Z] Fetching upstream changes from git@github.com:elastic/apm-agent-java.git
[2020-09-18T19:30:32.084Z] using GIT_SSH to set credentials GitHub user @elasticmachine SSH key
[2020-09-18T19:30:32.098Z]  > git fetch --no-tags --progress --prune -- git@github.com:elastic/apm-agent-java.git +refs/pull/1411/head:refs/remotes/origin/PR-1411 +refs/heads/master:refs/remotes/origin/master # timeout=15
[2020-09-18T19:30:32.769Z]  > git config core.sparsecheckout # timeout=10
[2020-09-18T19:30:32.773Z]  > git checkout -f 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7 # timeout=15
[2020-09-18T19:30:33.031Z]  > git remote # timeout=10
[2020-09-18T19:30:33.039Z]  > git config --get remote.origin.url # timeout=10
[2020-09-18T19:30:33.046Z] using GIT_SSH to set credentials GitHub user @elasticmachine SSH key
[2020-09-18T19:30:33.050Z]  > git merge 86fb00ec0707cf8cb0126dbb6c1da67a5ea93b26 # timeout=10
[2020-09-18T19:30:33.062Z]  > git rev-parse HEAD^{commit} # timeout=10
[2020-09-18T19:30:33.075Z]  > git config core.sparsecheckout # timeout=10
[2020-09-18T19:30:33.080Z]  > git checkout -f 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7 # timeout=15
[2020-09-18T19:30:36.707Z] Commit message: "migrate to indy plugins api plugin"
[2020-09-18T19:30:36.707Z] First time build. Skipping changelog.
[2020-09-18T19:30:36.707Z] Cleaning workspace
[2020-09-18T19:30:36.787Z]  > git --version # timeout=10
[2020-09-18T19:30:36.793Z]  > git --version # 'git version 2.17.1'
[2020-09-18T19:30:36.799Z] fatal: bad object 272f893943cc7ace61d828c8c8fb9914a55569e4
[2020-09-18T19:30:36.708Z]  > git rev-parse --verify HEAD # timeout=10
[2020-09-18T19:30:36.712Z] Resetting working tree
[2020-09-18T19:30:36.713Z]  > git reset --hard # timeout=10
[2020-09-18T19:30:36.733Z]  > git clean -fdx # timeout=10
[2020-09-18T19:30:37.688Z] Masking supported pattern matches of $JOB_GCS_BUCKET or $NOTIFY_TO
[2020-09-18T19:30:37.764Z] Timeout set to expire in 1 hr 0 min
[2020-09-18T19:30:37.794Z] The timestamps step is unnecessary when timestamps are enabled for all Pipeline builds.
[2020-09-18T19:30:38.190Z] [INFO] Number of builds to be searched 10
[2020-09-18T19:30:38.444Z] [INFO] 'shallow' is forced to be disabled when running on PullRequests
[2020-09-18T19:30:38.470Z] Running in /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1411/src/github.com/elastic/apm-agent-java
[2020-09-18T19:30:38.515Z] [INFO] gitCheckout: Checkout SCM PR-1411 with some customisation.
[2020-09-18T19:30:38.552Z] [INFO] Override default checkout
[2020-09-18T19:30:38.621Z] Sleeping for 10 sec
[2020-09-18T19:30:48.770Z] using credential f6c7695a-671e-4f4f-a331-acdce44ff9ba
[2020-09-18T19:30:48.818Z] Cloning the remote Git repository
[2020-09-18T19:30:48.834Z] Cloning repository git@github.com:elastic/apm-agent-java.git
[2020-09-18T19:30:49.056Z]  > git init /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1411/src/github.com/elastic/apm-agent-java # timeout=10
[2020-09-18T19:30:49.070Z] Using reference repository: /var/lib/jenkins/.git-references/apm-agent-java.git
[2020-09-18T19:30:49.071Z] Fetching upstream changes from git@github.com:elastic/apm-agent-java.git
[2020-09-18T19:30:49.071Z]  > git --version # timeout=10
[2020-09-18T19:30:49.091Z]  > git --version # 'git version 2.17.1'
[2020-09-18T19:30:49.091Z] using GIT_SSH to set credentials GitHub user @elasticmachine SSH key
[2020-09-18T19:30:49.096Z]  > git fetch --tags --progress -- git@github.com:elastic/apm-agent-java.git +refs/heads/*:refs/remotes/origin/* # timeout=10
[2020-09-18T19:30:49.904Z]  > git config remote.origin.url git@github.com:elastic/apm-agent-java.git # timeout=10
[2020-09-18T19:30:49.907Z]  > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
[2020-09-18T19:30:49.917Z]  > git config remote.origin.url git@github.com:elastic/apm-agent-java.git # timeout=10
[2020-09-18T19:30:49.930Z] Fetching upstream changes from git@github.com:elastic/apm-agent-java.git
[2020-09-18T19:30:49.930Z] using GIT_SSH to set credentials GitHub user @elasticmachine SSH key
[2020-09-18T19:30:49.935Z]  > git fetch --tags --progress -- git@github.com:elastic/apm-agent-java.git +refs/pull/1411/head:refs/remotes/origin/PR-1411 +refs/heads/master:refs/remotes/origin/master # timeout=10
[2020-09-18T19:30:50.703Z] Checking out Revision 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7 (origin/PR-1411)
[2020-09-18T19:30:50.885Z] Commit message: "migrate to indy plugins api plugin"
[2020-09-18T19:30:50.901Z]  > git --version # timeout=10
[2020-09-18T19:30:50.905Z]  > git --version # 'git version 2.17.1'
[2020-09-18T19:30:50.908Z] fatal: bad object 272f893943cc7ace61d828c8c8fb9914a55569e4
[2020-09-18T19:30:50.696Z]  > git rev-parse origin/PR-1411^{commit} # timeout=10
[2020-09-18T19:30:50.704Z]  > git config core.sparsecheckout # timeout=10
[2020-09-18T19:30:50.709Z]  > git checkout -f 6b44c5c6c1e8b535e7f67cc4c581f7ff2d4b8ad7 # timeout=10
[2020-09-18T19:30:51.805Z] Masking supported pattern matches of $GIT_USERNAME or $GIT_PASSWORD
[2020-09-18T19:30:52.412Z] + git fetch<EMAIL_ADDRESS>+refs/pull/*/head:refs/remotes/origin/pr/*
[2020-09-18T19:30:53.412Z] Archiving artifacts
[2020-09-18T19:30:54.099Z] + git rev-parse HEAD
[2020-09-18T19:30:54.471Z] + git rev-parse HEAD
[2020-09-18T19:30:54.787Z] + git rev-parse origin/pr/1411
[2020-09-18T19:30:54.842Z] [INFO] githubEnv: Found Git Build Cause: pr
[2020-09-18T19:30:55.087Z] Masking supported pattern matches of $GITHUB_TOKEN
[2020-09-18T19:30:55.978Z] [WARN] githubApiCall: The REST API call https://api.github.com/repos/elastic/apm-agent-java/pulls/1411/reviews return 0 elements
[2020-09-18T19:30:56.047Z] [INFO] githubPrCheckApproved: Title: migrate to indy plugins api plugin - User: kananindzya - Author Association: CONTRIBUTOR
[2020-09-18T19:30:56.435Z] ERROR: githubPrCheckApproved: The PR is not allowed to run in the CI yet
[2020-09-18T19:30:56.435Z] ERROR: githubPrCheckApproved: The PR is not allowed to run in the CI yet. (Only users with write permissions can do so.)
[2020-09-18T19:30:56.526Z] [INFO] Let's stop build #1. The PR is not allowed to run in the CI yet
[2020-09-18T19:30:56.552Z] Sleeping for 5 sec
[2020-09-18T19:30:57.670Z] Stage "Build" skipped due to earlier failure(s)
[2020-09-18T19:30:57.862Z] Stage "Tests" skipped due to earlier failure(s)
[2020-09-18T19:30:58.043Z] Stage "Unit Tests" skipped due to earlier failure(s)
[2020-09-18T19:30:58.055Z] Stage "Smoke Tests 01" skipped due to earlier failure(s)
[2020-09-18T19:30:58.067Z] Stage "Smoke Tests 02" skipped due to earlier failure(s)
[2020-09-18T19:30:58.078Z] Stage "Benchmarks" skipped due to earlier failure(s)
[2020-09-18T19:30:58.088Z] Stage "Javadoc" skipped due to earlier failure(s)
[2020-09-18T19:30:58.247Z] Failed in branch Unit Tests
[2020-09-18T19:30:58.255Z] Failed in branch Smoke Tests 01
[2020-09-18T19:30:58.263Z] Failed in branch Smoke Tests 02
[2020-09-18T19:30:58.271Z] Failed in branch Benchmarks
[2020-09-18T19:30:58.279Z] Failed in branch Javadoc
[2020-09-18T19:30:58.517Z] Stage "Integration Tests" skipped due to earlier failure(s)
[2020-09-18T19:30:58.605Z] Stage "AfterRelease" skipped due to earlier failure(s)
[2020-09-18T19:30:58.645Z] Stage "AfterRelease" skipped due to earlier failure(s)
[2020-09-18T19:30:59.274Z] Running on Jenkins in /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1411
[2020-09-18T19:30:59.590Z] [INFO] getVaultSecret: Getting secrets
[2020-09-18T19:30:59.715Z] Masking supported pattern matches of $VAULT_ADDR or $VAULT_ROLE_ID or $VAULT_SECRET_ID
[2020-09-18T19:31:00.601Z] + chmod 755 generate-build-data.sh
[2020-09-18T19:31:00.601Z] + ./generate-build-data.sh https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1411/ https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1411/runs/1 ABORTED 164543
[2020-09-18T19:31:01.152Z] INFO: curl https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1411/runs/1/steps/?limit=10000 -o steps-info.json


steam: fixed "/etc/NIXOS" bind failing

Description of changes
Closes https://github.com/NixOS/nixpkgs/issues/342090

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

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

This should be fixed by https://github.com/NixOS/nixpkgs/pull/341219


TextArgument backed ListArgument

Description
Currently, the ListArgument uses GreedyStringArgument as the backbone, and while it has the advantage of not needing quotes for anything not alphanumeric_, it limits commands to a maximum of 1 list arguments.
It would be nice to also have a TextArgument backed version, that would allow multiple lists, with the cost of quotes, unless they use _ as the delimiter.
Expected code
The simplest would probably be changing the .build() to .buildGreedy() an  .buildText(), with .build() being an alias to the greedy one to keep compatibility
Extra details
No response

Implemented for 8.6.0's release.

Implemented in release 8.6.0.


error while start with yarn start @babel/runtime/helpers/extends

[x] I'm sure this does not appear in the issue list of the repository

Basic Info

Package Name And Version<EMAIL_ADDRESS>
Steps to reproduce
yarn start after install

resolved by install babel/runtime.

<EMAIL_ADDRESS>已修复


Where are the other pages?

do we have to code them ourselves? cause if yes then thats fine i just needed a template. But i do not see why you would make buttons for seperate pages of the site without programming them

It's an opensource project! Do a PR and let us have those pages as well.
P.S - I think the maintainer left it purposely


/usr/bin/ros docker-init fails silently if it doesn't find bash [BUG]

RancherOS Version: 1.0.2
Where are you running RancherOS? openstack
EDIT: See third comment.
While trying to use custom storage context for User Docker 1.10.3 in RancherOS v1.0.2 (which on v0.4.3 worked perfectly) and not being able to make it work, I've isolated the problem to ros docker-init daemon ... returning 0 while crashing on storage container. No errors shown and no log available.
I suspect that there is some needed binary missing (docker and ros binaries are on path), but after some blind trials, I'm out of ideas. If I manually execute docker daemon in storage container, it works, but that's not a proper solution.
Could you please help me?
Thank you very much,
Albert

(gdb) r
Starting program: /usr/bin/ros docker-init daemon --storage-driver devicemapper --log-opt max-size=25m --log-opt max-file=2 --debug --group docker --host unix:///var/run/docker.sock --storage-opt dm.datadev=/dev/vg-docker/data --storage-opt dm.metadatadev=/dev/vg-docker/metadata --storage-opt dm.basesize=5G --icc=false
[New LWP 26506]
[New LWP 26507]
[New LWP 26508]
[New LWP 26509]
[New LWP 26510]
[LWP 26510 exited]
[LWP 26509 exited]
[LWP 26508 exited]
[LWP 26507 exited]
[LWP 26506 exited]
[Inferior 1 (process 26502) exited normally]

This seems to be related to the storage container base image being Alpine.

The problem happens to be that bash is not installed by default in Alpine and ros docker-init depends on it (really??), failing silently if it doesn't find it.

I'm wondering if the problem is that the way you're customising docker is the "old" way, and now should be done differently - see http://docs.rancher.com/os/configuration/docker/
I also don't use devicemapper much, so it's a little bit of an uphill

@SvenDowideit I had to adapt the cloud-config, but that wasn't the problem. After installing bash in storage container everything worked (that's why I changed issue title). Now I'm stuck due to #1899, but that's another matter.


Remove veto tagging plugins from straxen

Before you submit this PR: make sure to put all operations-related information in a wiki-note, a PR should be about code and is publicly accessible
What does the code in this PR do / what does it improve?
Removes veto veto plugins from straxen as they are refactored and moved to cutax. In addition clean context and tests.
I moved create_unique_intervals to test_utils.py as it might be also helpful for other tests.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 13 (15.38%)  changed or added relevant lines in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.2%) to 90.921%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

straxen/test_utils.py
2
13
15.38%

Files with Coverage Reduction
New Missed Lines
%

straxen/plugins/position_reconstruction.py
1
99.22%

Totals

Change from base Build<PHONE_NUMBER>:
-0.2%

Covered Lines:
6389

Relevant Lines:
7027

💛  - Coveralls


Hiding/Showing array with multiple items gets out of sync with ng reactive form

I'm submitting a ...  (check one with "x")
[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request

Current behavior

I pre-load data into an array upon view load.
Next, I add another array item via the UI.
There are now two array items in both the model and the angular reactive form, which is correct.
Separately, I have another control that, based on its value, will either hide or show the array (at this point, the array is displayed)
I then update the other control such that it hides the form array
I then update the other control such that it displays the form array again

Depending on where I place the form array's hideExpression, different, non-desirable behavior occurs, which I've documented in the stackblitz example.
The gist is that the model data is always correct, but the reactive form gets out of sync, which means overall form validation breaks for required fields
Expected behavior
Hiding and showing a form array with multiple elements should always maintain proper state for both the formly model and the angular reactive form controls
Minimal reproduction of the problem with instructions
https://stackblitz.com/edit/angular-w3cyfp-w1mg4v
I've outlined 3 scenarios via comments in the app.component.ts file.
Note: I've only tested w/ Chrome on macOS Mojave

some issues related to repeat field has been resolved in V5 so here is a summary of the 3 cases:
3 scenarios

solved in  5.0.0-rc.8, form data is correct
the remove buttons should be hidden and can be solved by using ngIf (we should update the demo example):

<div *ngIf="!field.hide" class="col-sm-2 d-flex align-items-center">
  <button class="btn btn-danger" type="button" (click)="remove(i)">Remove</button>
</div>

but for Add Another Investment buttons I'd expect that button to be visible and it should be controlled by parent field (scenario1)

for remove buttons: it should be controlled by parent field (scenario2)
for  Add Another Investment: the same as scenario2

here is a working example: https://stackblitz.com/edit/angular-w3cyfp-xwkrhg

first and foremost, thanks for this project!
it's remarkable what we get out of the box with it (I'm evaluating it as a replacement for ng-dynamic-forms, which I had to customize heavily.  so far, no customizations required w/ our POC using this library)
also, your response times and detailed explanations to any and all submitted issues is amazing.  thank you!
I switched over to 5.0.0-rc.8 last night before I submitted the issue and still had the same behavior.  Later, I figured out how I could leverage ngIf to get the behavior I need.  However, my ideal scenario is #1 b/c I can just declare a hideExpression for the array and I don't have to worry about any ngIfs in my template.
Scenario #1 does not work for me, even using your stackblitz example.  I've tested it on MacOS Safari, Chrome, and Firefox.  The data displayed in the view is correct and the model data is correct.  however, the Angular Form Control data is out of sync.
I took your stackblitz example and added some more steps outlining exactly how to reproduce the issue (and how to confirm if it's working or not).  If it works for you, then there must be some environmental issue at play.
https://stackblitz.com/edit/angular-w3cyfp-pygic6

it's remarkable what we get out of the box with it (I'm evaluating it as a replacement for ng-dynamic-forms, which I had to customize heavily. so far, no customizations required w/ our POC using this library)

glad to hear that :+1:

Scenario #1 does not work for me

got it, it's a bug which should be fixed soon!

fixed in 5.0.0-rc.9
Note: it safe to go with the rc, the stable version (V5) should be released within 1 or 2 weeks.


generated build.hxml file no longer contains target information

Error:
/usr/local/lib/haxe/std/sys/thread/Thread.hx:26: characters 8-52 : This class is not available on this target

Adding a line at the end of the build.hxml that is either --interp or -hl run.hl fixes the issue.

Problem example...
elliott@Elliotts-MacBook-Pro15-2 go2hx_june22 % haxelib run go2hx --interp<EMAIL_ADDRESS>listening on local port: 6311
Generated: golibs//Hello_world.hx - 0.282kb
haxe -lib go2hx -cp golibs  -m Hello_world
Error: Could not process argument
Could not process argument
Package name must not be empty
/usr/local/lib/haxe/std/sys/thread/Thread.hx:26: characters 8-52 : This class is not available on this target


feature:add-merkle-proof-circuit-and-tests

Added the merkle tree proof of inclusion circuit and prover along with tests.

STANDARD_CONFIG can set zk to false; only last layer can use true


feature: implementation of the create wallet method

Implementation of the create wallet method.
//TODO vanity wallets
idea: with flexible fees in v2 it might be possible to send a 0-fee 0 ARK transaction from the new address to itself and make it known to the network that way.

I'm not sure if it's stated anywhere but the lowest possible fee will be 1 arktoshi.
Also, some people intentionally want cold wallets with no outgoing transactions

Fees of 0 would enable to spam the network with transactions which could be abused.

understood, so maybe the node could then reply with a valid response for an address that is unknown but valid


Transferred content has quotation-marks and apostrophes removed.

Hi.
I just updated kindle2notion from 0.1.2 to 0.1.7.
I took a backup of all my Clippings in Notion, deleted the original pages and transferred the content from 'My Clippings.txt' to a fresh Notion database.
Now all quotation-marks and apostrophes are missing when displayed in Notion. Now all the lines just kind of blend in with another, I am not able to separate what is thought, description or quotes.
The quotation-marks and apostrophes are still present in 'My Clippings.txt' and even in my backup Clippings Notion Database (used kindle2notion 0.1.2, so I know that this was working before).

That's odd, hadn't noticed that before. My Clippings file doesn't contain quotation marks between each clipping. Will add em manually for each highlight and ignore for notes in the next commit.

It was a new issue for me when updating to 0.1.7, previously I have not experienced this.
The comment/note/highlights should look like this:
“I’m no highspren,” the captain spat. “I can see that the variety of humankind is what gives you strength. Your ability to change your minds, to go against what you once thought, can be a great advantage. But your bond is dangerous, without Honor. There will not be enough checks upon your power—you risk disaster.”
But when the transfer to Notion is complete the same comment/note/highlight looks like this:
Im no highspren, the captain spat. I can see that the variety of humankind is what gives you strength. Your ability to change your minds, to go against what you once thought, can be a great advantage. But your bond is dangerous, without Honor. There will not be enough checks upon your poweryou risk disaster.
This can be an issue when trying to decipher if it's a quote from a person or just commentary.

For now I have reverted back to version 0.1.2 as the quotes and apostrophes are untouched in this version.

Hi @Bergene! This issue is addressed in the latest release aka kindle2notion 0.1.8.
Thank you for your patience and hope this clears this particular problem up.

Thank you. I will test ut asap.

Hi @paperboi.
The issue is unfortunately not fixed in 0.1.8. I just tested it and all the quotation marks and apostrophes are removed from the transferred text.
I love the additions of highlighting the notes and such though in the new version.

I confirm this issue persists in 0.1.8, Will investigate further during the weekend.

Hi, fixed this in the latest release, please update :)


unicore-0.0.1+cu118torch2.0.0-cp310-cp310-linux_x86_64.whl is not a supported wheel on this platform.

Hi, I tried installing Unicore using 'pip install https://github.com/dptech-corp/Uni-Core/releases/download/0.0.3/unicore-0.0.1+cu118torch2.0.0-cp310-cp310-linux_x86_64.whl'.. However, I get the following error:
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
ERROR: unicore-0.0.1+cu118torch2.0.0-cp310-cp310-linux_x86_64.whl is not a supported wheel on this platform.
Python version is 3.10.12. I also installed pytorch (2.0.0) and cuda-toolkit (11.8.0), nvidia-pyindex.
Please let me know if you have a solution for this. Thank you!

which Linux distribution are you using? Can you provide more details?
Or you can also use the pip installation from the source by using the command.
pip install git+https://github.com/dptech-corp/Uni-Core.git


Catalan Number Dynamic Programming

I can provide you clean and well-commented code in Java so that it gives readability to all users. As a Gssoc'21 participant please assign me this issue.

Hey @rudrakshi99
I am a GSSoC'21 participant.  I would like to do this problem in cpp.
Can you assign me this issue

Hey @rudrakshi99
I am a GSSOC'21 participant.
I would like to implement this problem in PYTHON with proper comment, indentation and time-complexity.
Please assign this issue to me.

Hey @rudrakshi99
I am a GSSoC'21 participant.
I would like to do this problem in CPP.
you can assign this issue to me.

I would like to implement it in PHP. Please assign this to me.

Hey, I'm a GSSOC'21 participant. I would like to work on this issue in C++, please assign it to me.

Hey, I'm a GSSOC'21 participant. I would like to work on this issue in C++, please assign it to me.

I would like to contribute to the above problem in java as I am a participant of GSSOC'21. Kindly assign this to me.
@rudrakshi99


Fix typo

Issue #, if available: N/A
Description of changes: It looks like apiVersion should be a date, and the SDK documentation seems to agree [1]
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks, Michele. Good catch!


Dev containerservice microsoft.container service 2019 02 01

Merge Agent pool API from dev branch to master
The change is already approved in this PR:
https://github.com/Azure/azure-rest-api-specs/pull/5352
Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[x] The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

[x] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
adding/removing APIs.
adding/removing properties.
adding/removing API-version.
adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

[x] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Please follow the link to find more details on API review process.

Automation for azure-sdk-for-js

Automation for azure-sdk-for-python

Automation for azure-sdk-for-ruby

Can one of the admins verify this patch?

Automation for azure-sdk-for-node

Automation for azure-sdk-for-java

Automation for azure-sdk-for-go

@praries880, please let me know the correct process to solve the merge conflict. I don't have write permission to Azure: dev-containerservice-Microsoft.ContainerService-2019-02-01 branch so not sure how to solve the conflict.
So I did the merge and solved the conflict in my private repo xizhamsft: dev-containerservice-Microsoft.ContainerService-2019-02-01 and then sent out a new PR to merge xizhamsft: dev-containerservice-Microsoft.ContainerService-2019-02-01 ->Azure: dev-containerservice-Microsoft.ContainerService-2019-02-01 in PR:https://github.com/Azure/azure-rest-api-specs/pull/5402
Hopefully once 5402 is merged, 5399 will be updated automatically without the merge conflict
Please let me know if I am doing this the correct way, we need this merged ASAP

will try again.


can't install haskellPackages.keter

I'm new to nix and I don't know if this is the right place to report  this issue.
Describe the bug
I was installing the haskell package 'keter' but it failed to build with the error:
# nix-env -f "<nixpkgs>" -iA haskellPackages.keter
installing 'keter-<IP_ADDRESS>'
these derivations will be built:
  /nix/store/iy984y3f3jwfji9xs1p99w6i5x99wx84-keter-<IP_ADDRESS>.drv
building '/nix/store/iy984y3f3jwfji9xs1p99w6i5x99wx84-keter-<IP_ADDRESS>.drv'...
setupCompilerEnvironmentPhase
Build with /nix/store/n5i1zdpmk2b1s3z96649xh8f9kr3g96s-ghc-8.4.3.
ignoring (possibly broken) abi-depends field for packages
ignoring (possibly broken) abi-depends field for packages
unpacking sources
unpacking source archive /nix/store/d5s2j2vwfrb7w9wqpzd9rgm0x5lzh2hd-keter-<IP_ADDRESS>.tar.gz
source root is keter-<IP_ADDRESS>
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file keter-<IP_ADDRESS>/README.md
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/build/setup-package.conf.d -j8 -threaded
[1 of 1] Compiling Main             ( Setup.hs, /build/Main.o )
Linking Setup ...
configuring
configureFlags: --verbose --prefix=/nix/store/5v6g7jj1b16qw0ndapnq27z2hlc3qkhz-keter-<IP_ADDRESS> --libdir=$prefix/lib/$compiler --libsubdir=$abi/$libname --docdir=/nix/store/jdj2xr14n3vbd9n4azx5y8s8ikpxaqsf-keter-<IP_ADDRESS>-doc/share/doc/keter-<IP_ADDRESS> --with-gcc=gcc --package-db=/build/package.conf.d --ghc-option=-j8 --disable-split-objs --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --enable-library-vanilla --enable-library-for-ghci --ghc-option=-split-sections --extra-lib-dirs=/nix/store/s2n99784krxl91mfw3cnn9ylbb5fjvkx-ncurses-6.1/lib --extra-lib-dirs=/nix/store/rxaclc3vhxbzgfllv7601i85z854h48a-gmp-6.1.2/lib
Using Parsec parser
Configuring keter-<IP_ADDRESS>...
CallStack (from HasCallStack):
  die', called at libraries/Cabal/Cabal/Distribution/Simple/Configure.hs:958:20 in Cabal-<IP_ADDRESS>:Distribution.Simple.Configure
  configureFinalizedPackage, called at libraries/Cabal/Cabal/Distribution/Simple/Configure.hs:462:12 in Cabal-<IP_ADDRESS>:Distribution.Simple.Configure
  configure, called at libraries/Cabal/Cabal/Distribution/Simple.hs:596:20 in Cabal-<IP_ADDRESS>:Distribution.Simple
  confHook, called at libraries/Cabal/Cabal/Distribution/Simple/UserHooks.hs:67:5 in Cabal-<IP_ADDRESS>:Distribution.Simple.UserHooks
  configureAction, called at libraries/Cabal/Cabal/Distribution/Simple.hs:178:19 in Cabal-<IP_ADDRESS>:Distribution.Simple
  defaultMainHelper, called at libraries/Cabal/Cabal/Distribution/Simple.hs:115:27 in Cabal-<IP_ADDRESS>:Distribution.Simple
  defaultMain, called at Setup.hs:2:8 in main:Main
Setup: Encountered missing dependencies:
http-reverse-proxy >=0.4.2 && <0.5, unix-compat >=0.3 && <0.5

builder for '/nix/store/iy984y3f3jwfji9xs1p99w6i5x99wx84-keter-<IP_ADDRESS>.drv' failed with exit code 1
error: build of '/nix/store/iy984y3f3jwfji9xs1p99w6i5x99wx84-keter-<IP_ADDRESS>.drv' failed

To Reproduce
Run this nix-env -f "<nixpkgs>" -iA haskellPackages.keter
Expected behavior
Package keter is compiled and installed.
Additional context
# nix-channel --list
nixos-16.03 https://nixos.org/channels/nixos-16.03
nixos-17.09 https://nixos.org/channels/nixos-17.09
nixpkgs https://releases.nixos.org/nixos/18.09/nixos-18.09beta609.3768913cc9e

Metadata
Please run nix run nixpkgs.nix-info -c nix-info -m and paste the result.
 - system: `"x86_64-linux"`
 - host os: `Linux 5.0.0-27-generic, Ubuntu, 18.04.3 LTS (Bionic Beaver)`
 - multi-user?: `no`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.2.1`
 - channels(joao): `"nixpkgs-18.09beta609.3768913cc9e"`
 - nixpkgs: `/home/joao/.nix-defexpr/channels/nixpkgs`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
-  haskellPackages.keter
# a list of nixos modules affected by the problem
module:

This issue should have the haskell label.

@jafonsor I think the problem with keter is that it is old and it hasn't been updated for recent versions of GHC and its dependent Haskell packages.
If you want to build keter from nixpkgs, I'd recommend using an old version of nixpkgs where keter was able to be built successfully.
You can find versions of nixpkgs where keter was able to be successfully built on hydra:
https://hydra.nixos.org/job/nixpkgs/trunk/haskellPackages.keter.x86_64-linux
The last success was the following:
https://hydra.nixos.org/build/66233766#tabs-summary

Your other option is to jailbreak keter and then try to override packages until you find some combination of packages that work.
However, I tried to do this locally and you ended up needing an old version of process, which is a GHC core library.
GHC core libraries are somewhat annoying to override.  I wasn't sure of the best way to do this, so I created a thread on discourse: https://discourse.nixos.org/t/how-to-override-ghc-core-library-in-haskell-package/4035

No activity on this for a few years, I'll go ahead and close.  If you are still waiting on this, feel free to send a PR to haskell-updates unbreaking this package.


[Event Request] report 99001020 "Carry Out Action Msg. - Plan."

Describe the request
Current situation:
procedure CarryOutActions(SourceType: Enum "Planning Create Source Type"; Choice: Option; WkshTempl: Code[10]; WkshName: Code[10])
begin
        if NoPlanningResiliency then begin
            CarryOutAction.SetParameters(SourceType, Choice, WkshTempl, WkshName);
            CarryOutAction.Run("Requisition Line");
        end else
            if not CarryOutAction.TryCarryOutAction(SourceType, "Requisition Line", Choice, WkshTempl, WkshName) then
                CounterFailed := CounterFailed + 1;
    end;

new event in function:
    procedure CarryOutActions(SourceType: Enum "Planning Create Source Type"; Choice: Option; WkshTempl: Code[10]; WkshName: Code[10])
    begin
        if NoPlanningResiliency then begin
            CarryOutAction.SetParameters(SourceType, Choice, WkshTempl, WkshName);
            CarryOutAction.Run("Requisition Line");
        end else
            if not CarryOutAction.TryCarryOutAction(SourceType, "Requisition Line", Choice, WkshTempl, WkshName) then begin
                CounterFailed := CounterFailed + 1;
                OnAfterCarryOutActions( "Requisition Line", WkshTempl, WkshName)
            end;
    end;

with signature:
    [IntegrationEvent(false, false)]
    local procedure OnAfterCarryOutActions(var RequisitionLine: Record "Requisition Line"; WkshTempl: Code[10]; WkshName: Code[10] )
    begin
    end;

Additional context
In the CarryOutActions function we need a new event.
If the return value of the TryCarryOutAction function is false, we need a new event with these parameter OnAfterTryCarryOutAction("Requisition Line", WkshTempl, WkshName), because we want to log the error.
Internal work item: AB#502865

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 16827.


How to correctly apply filters to getItems

Hi @jamesbirkett !
Thanks for this library, I've been using it for a project and it's been a huge help.
Just a quick question - can you please give an example of how to pass a filter to getItems (https://github.com/jamesbirkett/node-axosoft/blob/master/lib/items.js)? The docs say filters should be an object - I tried passing it in a few different ways but nothing I tried seems to have an effect.

Never mind, getItems({ assigned_to_id: userId }, ...) is working for me now.  I could have sworn I tried this before with no effect, I guess I was wrong :-)

Hi Stjepan,
Sorry for the slow reply, I've been on holiday.
Do these API docs help at all?
http://developer.axosoft.com/api#!/items/_item_type_GET_get
e.g. var filters = {page: 1, pages: 2, customer_id: 456};
James
James Birkett
Developer
www.footworksolutions.co.uk
Contact Number: 0845 8628811
DISCLAIMER......
This document is intended for, and should only be read by, those persons to
whom it is addressed. Its contents are confidential and if you have
received this message in error, please notify us immediately by telephone
and delete all records of the message from your computer. Any form of
reproduction, dissemination, copying, disclosure, modification,
distribution and / or publication of this message without our prior written
consent is strictly prohibited. Neither the author or their employers
accept legal responsibility for the contents of the message. Any views or
opinions presented are solely those of the author. Footwork Solutions Ltd.
On 29 March 2016 at 06:20, Stjepan Rajko<EMAIL_ADDRESS>wrote:

Hi @jamesbirkett https://github.com/jamesbirkett !
Thanks for this library, I've been using it for a project and it's been a
huge help.
Just a quick question - can you please give an example of how to pass a
filter to getItems (
https://github.com/jamesbirkett/node-axosoft/blob/master/lib/items.js)?
The docs say filters should be an object - I tried passing it in a few
different ways but nothing I tried seems to have an effect.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/jamesbirkett/node-axosoft/issues/107

Ah, I've just found this. I see you sorted it.


🚀 Show the points rewarded for presenting in the excercise

Is your feature request related to a problem?
It would be a nice add-on to show the points awarded for presenting in the excercise on Artemis as well. Thereby, it would be easier to see as a studeent whether the points are correctly tracked and how they contribute to the overall points.
Describe the solution you'd like
This could be shown in the Statistics Tab or as a task every week which gives x points if presented or as add on points for each task.

Just realized that this feature already exists.


New volumeMode and volumeDevices API enablement for block volume support

Currently new volumeMode and volumeDevices API enablement for block volume support is ongoing toward Kubernetes v1.9. Once this feature will land, external-provisioner needs to handle these parameters to provision block volume.
I would appreciate any guidance to support these APIs.

Block volume support
https://github.com/kubernetes/features/issues/351
https://github.com/kubernetes/community/pull/1265

Similar issues
https://github.com/kubernetes-incubator/external-storage/issues/418
https://github.com/kubernetes-incubator/external-storage/issues/423

@wongma7  @rootfs @raffaelespazzoli

/cc @wongma7

@jsafrane

/close


git ignore patterns for object files

Drat, it looks like the latest versions of llvm-sra, llvm-sage, and llvm-python do not actually all work together. I think I was over-ambitious in trying to update each of these to use the latest version of the others. I'm going to just back up to what I knew was working, and maybe try to submit the .gitignore patterns separately. Again, sorry for creating these pull requests only to withdraw them soon after!


django-compressor doesn't always work on Windows

It uses rcssmin which uses C extensions in order to optimize minification. This can break for Windows users.
Options:

Leave django-compressor in, but filter out windows users (makes me not happy)
Find a non-C extension version of django-compressor (not likely)
Make it possible to use django-compressor without a C compiler
Get the maintainers to upload a wheel, which might resolve the problem

We should find a solution here as the current build is broken on docker and linux, see #748, #743.
Suggestion:

Make --install-option="--without-c-extensions"  for windows users only (for now).
Check options 2+3 and go on from there.

I made --install-option="--without-c-extensions" be for Windows users only.

@jayfk

Make --install-option="--without-c-extensions" for windows users only (for now).

This solve the problems to linux/mac users, but not completely solve to windows users.
I think --install-option="--without-c-extensions" will also break on windows, because the problem is pip.
Apparently --install-option =" - without-c-extensions " is applied to all next packages to be installed and not only  rcssmin.


Create a plugin-like mechanism for sinks

At this moment we have a bunch of sinks contributed by the community. I guess none of the core Heapster developers will have time to actively test all of the fancy sinks with the newest release of Kafka, Riemann, Bosun, or some yet another shiny time series database.
I think we have to draw a line between what is fully supported/tested, what is bundled with the default release and what is a best effort add-on/plugin.
cc: @piosz @vishh @jszczepkowski @fgrzadkowski

cc @bgrant0607 @davidopp

related to: #665

Yeah. The best we can do for now is document what we test against.
Setting up integration tests for some of the sinks like kafka and riemann isn't that difficult. We can create a heapster pod with these sinks, re-configure heapster sinks from e2e tests, and then run the necessary sink validation logic.
We can also encourage the community to add e2e tests for those sinks, if they happen to use those sinks in production.

Postponed until after 1.2

closing as obsolete


Maintain order of original deps

I saw in a project that the deps order is shuffled (deps.edn vs project.clj). Do you agree it make sense to maintain the order?
I understand the generated deps.edn file is a compile artifact and should not be used as reference, but it is nice if you open it and the order somewhat makes sense. Also better if you want to migrate from lein to deps.edn at some point. Another argument would be smaller git diffs.
I think introducing an ordered hash-map instead of a normal hash-map should fix this, but I can experiment with this if you agree you want this change.

This library is used by people in babashka, so we have to ensure that it keeps running that way.
We could use flatland.ordered which is available in babashka.
$ bb -e '(flatland.ordered.map/ordered-map {:a 1})'
#ordered/map ([:a 1])

Another approach could be to use rewrite-edn:
https://github.com/borkdude/rewrite-edn
and insert the key-values in the original order.

A good to know. I'll try with flatland.ordered.map first.
I can imagine the rewrite-edn option is especially useful if at some point you want to prevent the maps to change in the #mvn{:version ...} form and keep a normal map.


V0.18.0 -- dbt_macro__sqlserver__get_catalog' takes not more than 1 argument(s)

Running dbt_docs_generate gives the following non-breaking error message. The generated catalog.jsonstill is able to be served and looks okay.
Encountered an error while generating catalog: Compilation Error in macro sqlserver__get_catalog (macros/catalog.sql)
  macro 'dbt_macro__sqlserver__get_catalog' takes not more than 1 argument(s)

  > in macro get_catalog (macros/adapters/common.sql)
  > called by macro sqlserver__get_catalog (macros/catalog.sql)
dbt encountered 1 failure while writing the catalog

All the other get_catalog() for core adapters have the following function signature. Changing sqlserver's resolved the error message, but:

sqlserver__get_catalog() doen't use any arguments anyway (should it, @mikaelene?), and
I'm leery of what other issue it might introduce...

{% macro **__get_catalog(information_schema, schemas) -%}

resolved by #48


Fail to Node.start/1 due to execute it before launch_epmd/2

Branch issue/111
remote:
remote: Create a pull request for 'issue/111' on GitHub by visiting:
remote:      https://github.com/zeam-vm/pelemay_backend/pull/new/issue/111
remote:


Update e2e_benchmarking.md doc

An external user reported that e2d_benchmarking.md doc is not up-to-date. For example, in section 1, application_test.py is no longer in our repo. It would be great if someone could take a look.

Looks like the TensorFlow bits of that document have been stale for a while, particularly with https://github.com/google/iree/pull/8078.
These docs are more up to date:

https://github.com/google/iree/blob/main/docs/developers/debugging/tf_integrations_test_repro.md
https://github.com/google/iree/tree/main/benchmarks#iree-benchmarks

I think I deleted the most out-of-date benchmarking doc.
These pages are somewhat up-to-date:

https://iree.dev/developers/performance/benchmarking/
https://iree.dev/developers/performance/benchmark-suites/


Product Instrumentation Pilot Tests

Implements three pilot instrumentations for NPSP:

When new Enhanced or Legacy Recurring Donations are created
When new Engagement Plans are created
When new Gifts are created through the Gift Entry UI - either as a single gift or as a batch of gifts

Work Item: W-10398341
Critical Changes
Changes
Issues Closed
Community Ideas Delivered
Features Intended for Future Release
Features for Elevate Customers
New Metadata
Deleted Metadata

Thank you both for the reviews. After QA is complete, we can consider merging this into the parent branch since it'll be the parent that ultimately needs to merge into main.


Test/186502/unit tests

Recreated react app using vite
inc Typescript
Jest unit tests

Please could we review and clean-up the folder structure with the front-end-components dir.
We seem to have front-end & frontend, several src, etc.


[WIP] Make StormMetricsRegistry a regular class rather than a static utility

I'd like to put this up for discussion before spending more time on it, in case this solution is a no go.
As mentioned on https://github.com/apache/storm/pull/2714, I think we can solve the issue with unintended metrics registration by making StormMetricsRegistry a regular class rather than a static utility. We can probably do something similar with StormMetricRegistry (the worker metrics registry) if this makes sense.
The basic idea here is to initialize the metrics registry in each daemon's main method, and pass it around to the classes using it from there, rather than having the registry be a statically available tool. Metrics registration is moved from static initializers to regular instance fields. I also bumped the Metrics library version, since they've added the ability to get or add metrics, so we don't have to handle duplicate registrations by hand anymore.
I've based this on the Java migration of Storm UI to avoid some likely conflicts, so please ignore everything except the last commit.
@zd-project If you have a chance, I'd appreciate your input on this since you've been working a lot with the metrics system recently.

Just to make clear, this shouldn't be merged. If we decide to solve the unintended registration issue like this, I'll make a PR into https://github.com/apache/storm/pull/2714.

I like this.

The test failure is unrelated, caused by https://issues.apache.org/jira/browse/STORM-3166

I love all the approaches to switch static to non-static if it doesn't require any hack or long parameters to inject, and this looks great. +1 to move on.

Extensibility and Centralized management would be my concerns. I think this PR has improved on the centralized management of metrics. For example I think the slotMetrics class is a great example of this (it's actually a very similar idea to the MetricSet I've put in). It's easier to tell this way what we have been tracking for a certain daemon and how we're tracking it.
But I'm not quite sure about the extensibility part, i.e., what I should do if I want to have metrics in a new component or one that hasn't been injected a registry yet. For example, in my PR I added a few metrics in Container, but I don't think I see a way to add them here since Container doesn't have access to StormMetricsRegistry. We might need to do some refactoring before we can actually add in metrics.

@zd-project You are right that if someone wants to add metrics to a component, they will have to figure out how to get the registry injected. I can't say up front how hard that will be, except to note that it wasn't too bad to make these changes.
For the specific case of the Container, I put the metrics in the ContainerMemoryTracker next to the fields they're gauges for. This is primarily because Container gets created a lot of times, and I didn't want to call the gauge method every time the constructor is invoked. In this case I chose to move the gauges to a different class with a different lifecycle from Container, but since the gauge method uses getOrAdd there probably wouldn't be anything wrong with registering the metrics every time a Container is created instead.
If I were adding new metrics to Container, I would either make a metrics container object like SlotMetrics that is common to all Containers and pass that in, or pass in the registry and just invoke the registration every time the constructor is invoked. Unless there's a big performance penalty to using getOrAdd, I would think that there wouldn't be much difference.

Additionally, it still seems to be not ideal that if we want to measure things inside a static method, we'd have to pass the metric in as a parameter.

I think it depends a lot on what kind of static method we're talking about. If the method is internal we can just change it and inject the metric, or even better make the method not static and inject the metrics or other dependencies via the constructor. This is sort of what happened with the memory tracking in Container.
I see your point for publically accessible static methods though. I'm not sure we can do anything to work around it there.

Rebased to master now that the UI work has been merged.
@zd-project How would you like to proceed? If you feel that making this change is risky, we could maybe try to port some of your PRs that add new metrics to be based on this branch, to see if having the registry be non-static adds a lot of difficulty?

I can port changes on top of this and open another PR, but I hope existing PRs can be merged in first, as they provide actual metrics that are straight useful to system administrators and developers. While this is more of a improvement to internals. Additionally, my internship ends this week and I will go back to school by the end of August, so though best I try, I can't guarantee to contribute regularly thereafter. We should plan this accordingly.

@zd-project Alright, maybe the best option is that we postpone looking at this until the added metrics have been merged.

I'll close this in the meantime.

I'm really sorry about the timing. I'll try to take a look at it once the merge is done.

Thanks


Swap to diskless upload, introduce 3dgrids

Refactor to allow for both tables and cpgrid with cpgrid_properties
Change to diskless upload

Solving issue #48 and #47

Suggest we do a demo/review of this, it is a huge PR. I didn't quite understand what is going on...

Tests are failing because they all use the same case_uuid.
Had no issues when either running for a single python version: https://github.com/equinor/fmu-sumo-sim2sumo/pull/53/commits/c55ad0713f3a225c8a46d3db801ec48be99dde93
Or if setting max-parallel: 1: https://github.com/equinor/fmu-sumo-sim2sumo/pull/53/commits/b20ec7644d6fd4eacd5b97e98eac74dde062af75
There was a similar issue with the uploader tests. Fixed by creating a new uuid at runtime: https://github.com/equinor/fmu-sumo-uploader/commit/b422bc04a738ef434b965369f29e395d32060e92


mungegithub: Fix PR List options

Sort: desc
Is not valid according to
https://godoc.org/github.com/google/go-github/github#PullRequestListOptions
So we have been sorting ascending. Continue to do that, but at least
make the options correct/obvious. If we want descending that's fine, but
this PR has NO actual change to the operation of the code

@brendandburns since you put that line in there.


README updates for macOS

I don't have hardware yet but I thought I'd run the install and poke around.
For macOS I had to run python3 setup.py develop instead of python setup.py develop
It's possible that stock Macs ship with python3 as the default but I installed (the OS) via migration.
It might be worth adding a note to the README as the error message is not especially helpful:
running develop
error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

    [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/test-easy-install-87242.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /Library/Python/2.7/site-packages/

Perhaps your account does not have write access to this directory?  If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account.  If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.

For information on other options, you may wish to consult the
documentation at:

  https://setuptools.readthedocs.io/en/latest/easy_install.html

Please make the appropriate changes for your system and try again.

Installing on Linux Mint was fine after installing icestorm which was not initially obvious.

Python 2.7 isn't supported, but I agree, it might be sensible to mention python3 instead of python - are you willing to make a PR for this?
The error message is indeed not very helpful - this would likely be resolved by using a virtual environment (venv / virtualenv), which I'd suggest is the preferred way to work with Glasgow, and I'd suggest that should be included in the docs too.
Re installing icestorm, did you see and follow this bit in the setup guide?

You will also need Yosys and nextpnr-ice40, both from the master branch. Follow the setup instructions for Yosys and nextpnr.

OK great, thanks. I'll make a PR. My concern was that there may be cases where python points to Python 3.x and a python3 alias is missing, but from reading around, most people wouldn't have their path and aliases set up that way, so it seems reasonable.
And yes, now I see the note to install IceStorm in the nextpnr README. I must have glossed over that part. Oops!
As for the virtual environment, I'm not familiar enough to write a guide but I'd be more than happy to run it though its paces on a few systems if someone adds that to the readme.