Permit easily purging unmanaged repos

Pull Request (PR) description
With the support for defining repos, it is helpful to have an easy way to purge unmanaged repos.
This Pull Request (PR) fixes the following issues
N/A

Can you release a new forge version with the last batch of changes?

@jcpunk does this actually work? If I just create a purge file resource for the directory, the module creates the repos and the purges them again each run. Apparently the modules creates files without using the file resources.

Jul  4 13:46:10 puppettest-linux-centos-7-64bit puppet-agent[11376]: (/Stage[main]/Yum/Yumrepo[extras]/ensure) created (corrective)
...
Jul  4 13:46:18 puppettest-linux-centos-7-64bit puppet-agent[11376]: (/Stage[main]/Yum/File[/etc/yum.repos.d/extras.repo]/ensure) removed (corrective)

That is from one run.

I'm a bit surprised that the yumrepo type doesn't provide the file resources....
My target use case is paired with https://github.com/voxpupuli/puppet-rhsm/commit/1c2abe59cc8b3459dc95f4ad6c85db5a51d2fbdb so that I can be sure only redhat.repo is in /etc/yum.repos.d/ on certain systems.

This was an attempted fix of #94.


Move rows to own service

Codecov Report
Patch coverage: 93.10% and project coverage change: -1.47 :warning:

Comparison is base (10ecac7) 91.72% compared to head (55d1a3e) 90.26%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1475      +/-   ##
==========================================
- Coverage   91.72%   90.26%   -1.47%
==========================================
  Files          75      194     +119
  Lines        5006    11696    +6690
==========================================
+ Hits         4592    10557    +5965
- Misses        414     1139     +725

Flag
Coverage Δ

jobs_cache_maintenance
99.08% <ø> (?)

jobs_mongodb_migration
84.62% <ø> (?)

libs_libapi
86.79% <83.33%> (?)

libs_libcommon
91.70% <ø> (?)

services_admin
86.07% <ø> (?)

services_api
87.12% <100.00%> (?)

services_worker
91.72% <ø> (ø)

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

Impacted Files
Coverage Δ

services/api/src/api/utils.py
84.00% <ø> (ø)

libs/libapi/src/libapi/exceptions.py
80.00% <80.00%> (ø)

libs/libapi/src/libapi/jwt_token.py
78.18% <100.00%> (ø)

libs/libapi/tests/test_jwt_token.py
100.00% <100.00%> (ø)

services/api/src/api/app.py
89.13% <100.00%> (ø)

services/api/src/api/authentication.py
100.00% <100.00%> (ø)

services/api/src/api/config.py
100.00% <100.00%> (ø)

services/api/tests/conftest.py
98.79% <100.00%> (ø)

services/api/tests/test_authentication.py
100.00% <100.00%> (ø)

... and 110 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Avoid fire the change event when has no value change

When the component is mount in the screen the hook fire the change event without any change.
This will avoid this behavior.

@RodolfoSilva Thanks for the PR!
@maxvw Do you remember if there a reason we sent a change event immediately?

@nkezhaya I do not, I think maybe had something to do with that instagram browser and autocomplete bug we had in the app and just a random attempt to see if that would resolve it?


cpplint.py header guard suggests are inconsistent

Current behavior:
When run locally, cpplint.py recommends using the full path of the file from the root of the repository to name the guard. So, for example, code_check.sh will include an error like this:
./include/nps_uw_sensors_gazebo/nps_gazebo_ros_gpu_sonar_single_beam.h:19:
#ifndef header guard has wrong style, please use:
INCLUDE_NPS_UW_SENSORS_GAZEBO_NPS_GAZEBO_ROS_GPU_SONAR_SINGLE_BEAM_H_

This error can be eliminated by changing the header guard as requested (although this is not ideal). However, when the same check is performed in the github action environment, the file path and corresponding variable name is very strange:
./include/nps_uw_sensors_gazebo/nps_gazebo_ros_gpu_sonar_single_beam.h:19:
 #ifndef header guard has wrong style, please use:
___W_NPS_UW_SENSORS_GAZEBO_NPS_UW_SENSORS_GAZEBO_INCLUDE_NPS_UW_SENSORS_GAZEBO_NPS_GAZEBO_ROS_GPU_SONAR_SINGLE_BEAM_H_

Both of these are wrong, and it is not possible pass tests locally and in the github action environment with the same code.
Additional Notes

Although the code_check.sh script specifies file extension .hh should be checked, cpplint.py only runs the CheckForHeaderGuard function on files with a .h extension (the relevant code is here).
This means this issue does not show up for files with .hh extensions because it just skips the header guard check entirely.
I believe this means that this check was never actually run on any code in vrx because we didn't write any headers with the .h extension, so this problem never showed up.
Conversely, a workaround is just to use the .hh extension and skip this check.

I made some changes in pull request #72 and the style checker passes locally and on GitHub.Typically, I only run:
sh tools/code_check.sh

Is this still an issue?

@M1chaelM Is this still an issue?

I made some changes in pull request #72 and the style checker passes locally and on GitHub.Typically, I only run:
sh tools/code_check.sh

Is this still an issue?

Yes, it turns out this is still a problem. For some reason all the header guard suggestions start with ___W.
I was confused about why these problems seemed to go away for a while and have recently come back during the reorganization, but now I think I've figured this out. I believe our checker only looks at guards for headers that end in ".h". I think we made these errors disappear in the past by changing our header file extensions to use either ".hh" or ".hpp". This just causes the check not to run because the checker doesn't expect these extensions. So, obviously, not the best way of passing the check.
As a separate issue that I think came up before: for our collective sanity we probably shouldn't have headers ending with all three of these file extensions.

Adding a comment @mabelzhang made in #129:

Nice work guys! I'm not quite awake yet, but just wanted to note for future reference re header guards if you ever want to  enable it again. Maybe changing the configuration to just do the file name itself, not the full path, is a better option. That's how we name our header guards in ROS and Gazebo.

Mabel, do you know how to do that? I'm not a  cpplint.py power user but I don't see an option for this in our script.

Addressed at https://github.com/Field-Robotics-Lab/dave/pull/139

@M1chaelM and @caguero
We have this labeled as to be addressed for 4.0.0.   How should we proceed?

Per @woensug-choi 's comment above, this is resolved with PR #140 and can be closed when it is merged.

Closing b/c PR#140 is merged.  Nice work guys.


Add module and symbol loading to OrbitClientGgp

Retrieve target process data, load module corresponding to the target process binary and its symbols. Update ClientGgp::GetOrbitProcessByPid and create ClientGgp::LoadModuleAndSymbols.
Add ProcessClient instantiation to ClientGgp ProcessClient is required to be able to handle and retrieve information about the modules and the selected process.
Retrieve list of processes to set target info  To later being able to find a module, it is needed to have more information about the process than merely its pid so it is included a call to ProcessClient::GetProcessList. ClientGgp::GetOrbitProcessByPid has been updated to search the target process in the list of processes retrieved. Its information is populated into the target_process_. An available target process is essential for the capture to work as expected so the program ends if not found.
Load module and symbols  We need to load the list of modules related to the target process to find the module that corresponds to its binary. Its symbols are also loaded. A new method ClientGgp::LoadModuleAndSymbols contains the logic to load the module and its symbols. This information is needed during capture so it has been included to its initialization. After calling this method, target_process_ has the information about the module corresponding to its binary and its symbols.

Updated code to use ProcessClient instead of ProcessManager, everything is ready now for review.

I have updated the code as suggested to:

Use the path when looking for the module for the binary instead of the name
Use OUTCOME_TRY in LoadModuleAndSymbols and GetOrbitProcessByPid as it makes the code much simpler and the error message that it was included was not really necessary; the error messages returned are informative enough.
I realised that the same modification could be done to InitCapture now but I decided not to update it to use OUTCOME_TRY because I think for that case it makes sense to notify if the error was caused by not being able to set the target process or when loading the modules and symbols.

Thanks!

Thanks! merging into master :)


Support for newer three.js versions

Hey, thank you for this beautiful shader.
FYI: I refactored the materials to ES6 class syntax, so they work with the current three.js version (131).
https://github.com/timohausmann/threejs-thin-film-iridescence

Thanks Timo for you contribution! ❤ I've merged your changes in the main branch.


Random Email Name Generator

I would like to add a script which generates a random email name for the user @avinashkranjan Please assign me on this issue

Sure Go ahead @pankaj892


Allow configuration of message payload type in Pub/Sub Binder

The Pub/Sub inbound  channel adapter allows the specification of the payload type which is useful for the message conversion. However, this property is currently not exposed in PubSubExtendedBindingProperties.

I think this is an invalid issue: Binder always must return data as byte[].
See my review in the https://github.com/spring-cloud/spring-cloud-gcp/pull/867#discussion_r202781316

Agreed.


Optimize Travis CI build

Problem
Travis CI builds may soon exceed job time limit (50 minutes).
Solution

cache .m2 and .sbt directories (http://www.scala-sbt.org/0.13/docs/Travis-CI-with-sbt.html);
update docker and docker-compose to latest versions and use version 3.2 syntax in docker-compose.yml (needed to use cache_from option, see below);
use debian:jessie image for setup and sbt containers instead of alpine to avoid extra downloads because postgres, mysql and cassandra images are based on debian:jessie;
use node.js 7.x (https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions);
update CONTRIBUTING.md with latest instructions;
use --cache-from docker option (cache_from in docker-compose.yml) to cache docker images;
ignore project directory in docker build context to skip sending it to docker host because it's mounted as volume;
pull images before CI build and push them after successful build (only for master branch and not PR).

Result
I compared the build times of current master vs this PR - it was reduced by 8-13 minutes (44-47 minutes vs 34-36 minutes).
Checklist

[x] Unit test all changes
[ ] Update README.md if applicable
[ ] Add [WIP] to the pull request title if it's work in progress
[ ] Squash commits that aren't meaningful changes
[ ] Run sbt scalariformFormat test:scalariformFormat to make sure that the source files are formatted

@getquill/maintainers

@getquill/maintainers It's ready.

awesome!

Late comment, pretty nice work @mxl

Thanks, guys! Build on master branch took longer - 43 min 36 sec because of publishing snapshots and docker images. Also build time depends on host load where build runs. It still takes less then latest master branch builds, but gain is not so obvious (~4 minutes). I will observe builds in next few days. If there will no improvement then I'll think about using parallel builds.

@getquill/maintainers I'd suggest to split the whole build into 2.11/2.12 builds so we can back into previous ~20 mins

#780


Entity recognition assigns wrong values to entities

Rasa NLU version: 0.12.3
Operating system (windows, osx, ...): Windows 10
Content of model configuration file:
language: "en"
pipeline:
  - name: "nlp_spacy"
  - name: "tokenizer_spacy"
  - name: "intent_featurizer_spacy"
  - name: "intent_classifier_sklearn"
  - name: "ner_crf"

Issue:
Hi, I'm trying to train an entity/intent recognizer using the above pipeline.
Currently I focus only on entity recognition, so my training data has single intent and about 10 different entities (most of which have closed domain with anywhere between 4 and 20 possible values; e.g. for an entity "Size" the value can be "extra small, small, medium, large, extra large".
I start with only three entities (size - 5 possible values, price - 9 possible values, season - 4 possible values), and generate about 5000 training examples - sentences which include all three entities with random value combination; the sentences are in one of 14 possible "patterns" - in means of which words appear in it apart the values for the entities, mostly search query-like.
But when I test the resulting model, if the test sentence is not of the "format" that was in training data (i.e. the words which are unrelated to any of the entities are different, or in different order), the model makes a lot of mistakes: assigns values from different entities to the same entity, assigns one of the unrelated words to an entity while missing the real value for that entity, etc).
Example test sentence: "find me an extra large affordable winter dress"
Result: size: extra large, size:affordable, season:winter
What can I do to improve the performance of my model?

This sounds like you're overfitting to your training data. You've got 5000 examples of only 14 possible patterns, I'd say you need to introduce a lot more patterns, and you probably don't need quite that many training examples for just three entities.


Added gas reporting updates to linting

The CI failed, but it's due to the quirk of the price being the same in a 1min period. So. Merging.


parallel_for's jacobian and batch_jacobian fail when inputs are disjoint in the comp. graph

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): reproducible on macOS High Sierra 10.13.4 and Linux Ubuntu 16.04
TensorFlow installed from (source or binary): reproducible on both source and binary
TensorFlow version (use command below): 1.10
Python version: 3.6
Bazel version (if compiling from source): 0.15.2-homebrew
Exact command to reproduce:

import tensorflow as tf
from tensorflow.python.ops.parallel_for import gradients

x = tf.placeholder(tf.float32, (None,))
y = tf.placeholder(tf.float32, (None,))
print(gradients.jacobian(x, y))

Describe the problem
When the example script is run, the following exception is thrown
Traceback (most recent call last):
  File "test-2.py", line 5, in <module>
    print(gradients.jacobian(x, 5))
  File "/Users/asobolev/dev/tensorflow/pfor_test/venv/lib/python3.6/site-packages/tensorflow/python/ops/parallel_for/gradients.py", line 58, in jacobian
    pfor_outputs = control_flow_ops.pfor(loop_fn, output_size)
  File "/Users/asobolev/dev/tensorflow/pfor_test/venv/lib/python3.6/site-packages/tensorflow/python/ops/parallel_for/control_flow_ops.py", line 122, in pfor
    outputs.append(converter.convert(loop_fn_output))
  File "/Users/asobolev/dev/tensorflow/pfor_test/venv/lib/python3.6/site-packages/tensorflow/python/ops/parallel_for/pfor.py", line 1075, in convert
    output = self._convert_helper(y)
  File "/Users/asobolev/dev/tensorflow/pfor_test/venv/lib/python3.6/site-packages/tensorflow/python/ops/parallel_for/pfor.py", line 1108, in _convert_helper
    assert isinstance(y, ops.Tensor), y
AssertionError: None

This is due to the tf.gradients(y, x) (which sits under to hood of jacobian) returning None when y is independent of x in terms of computational graph, that is, when y is not achievable from x by any computation path, and parallel_for does not like working with Nones.
This is not affecting me as I have found workarounds, but it's still a bug that needs fixing.

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
CUDA/cuDNN version
GPU model and memory
Mobile device

Done
(originally removed them since the problem is reproducible on macOS)

A fix has been submitted and should sync out soon. Thanks for reporting.


Kotlin thoughts?

What is your opinion on plain Java vs kotlin? You prefer to have it in the former?

Personally, I prefer in OSS plain Java to as a baseline where everyone can contribute as not every contributor might know Kotlin. Speaking about this project, it might make sense to transform to Kotlin as is a JetBrains plugin and JetBrains language is Kotlin. So I have no clear option or strategy how to move on with that project. At the end, the repo needs to work and to be easily maintainable, this is the highest priority. What I can tell is, that I want to have as few dependencies as possible so that this plugin compatible with many IDE versions and is light enough.

Roger, I generally adapt to whichever workflow the project prefers, and I don't have much experience in either, so I defer this to you. The only thing of concern to me on this point is if there is some navigation difference between either format.

I have decided to adopt some of this plugin functionality in ghactions-mgr as every updates there are new issues with java-based plugins.

sounds like duplicate work ^^


coordinator: clear hot store related gauges when store is not hot any more

Above is a snapshot from one of our clusters

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.wudi.rd seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

LGTM
PTAL @disksing @nolouch


Allow best effort symbol solving of a class

I'm trying to symbol solve a single class file for uses of the guava library.
Thus, I have a file something like the below.  It should be possible to solve to the call to Files.newWriterSupplier, but currently jss errors out because it can't solve for AggregatedEventListener.  Adding the try catches above fixes the problem, but it probably introduces some hard to trace errors (ie if the private variable had been defined in AggregatedEventListener) which would cause solving to fail.  Any thoughts on implementing an option to ignore those failures and do best effort solving?  (I'm sure this isn't the pull request to do that, but it seemed like the best way to communicate my proposed changes.)  I am, however, happy to help make a better pull request if you are interested in the idea and can point me to a proposed method of implementing as I don't like running code forked off a packaged library if I can avoid it. :)
PS For the sake of example assume, AggregatedEventListener is missing.  In actuality, the problem is that I'm parsing a project with multiple java roots which haven't been bound in so JSS can't find the class.  If you know of an automated way to find all the java project roots in a maven project, that would decrease the need for this, but even still, I could see how there might be some other dependency that is unavailable but they extend/implement a part of it where "best effort" solving would be useful.
This is also somewhat related to #135.
import com.google.common.io.Closeables;
import com.google.common.io.Files;
import com.google.common.base.Charsets;

public class TextReport implements AggregatedEventListener {
      private File outputFile;
  @Override
  public void setOuter(JUnit4 task) {
    if (outputFile != null) {
      try {
        Files.createParentDirs(outputFile);
        this.output = Files.newWriterSupplier(outputFile, Charsets.UTF_8, append).getOutput();
      } catch (IOException e) {
        throw new BuildException(e);
      }
    }
  }
}

@ftomassetti is this PR still of use?

Nope, closing it


Fixed-path de-filtering.

Killed darwin-only to allow any OS (eg Ubuntu – which has process.platform "linux") to enjoy the fixed path option in the settings page. Additionally reworded the text of the according settings page to make things fit.

Thanks for your pull request, but made some more changes with version 0.10.0

No problem… just tried to help.

Your suggestion was useful ;) Thanks for that! I did not know that with Ubuntu there is the same problem.


Auto prettify

Fixes #828. When the autoPrettify prop is present on the GraphiQL component, the prettify method will run on componentDidMount.
This can be tested by adding autoPrettify: true, on a line after line 153 in test/index.html and running npm run dev. Open the reported URL and enter the test GraphQL query and make sure the formatting is off. Since the query is synced to the query string in the URL, refreshing the page will cause the auto prettify to run and pretty print the query.

@acao please review.

This might not be a good idea, because the prettify button removes comments from queries. Could be worth waiting till prettier is added.
Also, this project uses yarn, can you please remove the package-lock.json

@orta it is an opt-in feature and does the same thing as clicking on the button. Why would it be a bad idea?

@benjie also a nice little opt-in only feature that would be nice for 0.x, and could be provided via a plugin for 1.x

Hi @rybon, please could you further expand on the motivation behind this PR? It seems to me
<GraphiQL
  ...
  defaultQuery={queryFromUrlBar}
  autoPrettify={true}
/>

is equivalent to:
<GraphiQL
  ...
  defaultQuery={print(parse(queryFromUrlBar))}
/>

which would accomplish the same goal, and would not require a GraphiQL change?
Notes on the current implementation:
If no defaultQuery were provided, autoPrettify would cause the query restored from localStorage to be prettified, thereby removing any comments/etc - I think it would be unexpected for a user to reload the GraphiQL page and have the query appear as different to the one they were typing moments ago. I believe your intent is to only prettify the defaultQuery / query props?
autoPrettify currently only applies on GraphiQL component mount, but the name "autoPrettify" implies that it may do more - such as prettify what you're typing automatically. Prettifying on every keypress would be untenable in the current implementation (since it's a relatively expensive operation); perhaps renaming the option to prettifyOnMount would make this clearer?
Aside:
A prettify that happens when you stop typing could be an interesting feature, e.g. triggering on debounced keypress. Sadly we don't currently have the ability to restore the carat to the correct position on prettify so we'd need to solve that issue first. I think this would make a good candidate for an experimental plugin in v1.

@benjie indeed, if the same thing can be accomplished with defaultQuery, we wouldn't need this flag. I wasn't aware this was possible. Thanks for your feedback!

hi @benjie ,
I tried doing  defaultQuery={print(parse(queryFromUrlBar))} but I get an error that parse is undefined and unexpected use of print.
Are you able to share how I can access those 2 functions? parse and print.  That would help me tons. Thank you.

Both are imported from the graphql module; does that help?

Ah yes, it works now. Thanks


Http[Request/Response]Data contract classes design discussion

Preface: As the title notes, this is probably more of a discussion than an issue, but it doesn't look like discussions are enabled on this repo yet... which is understandable since it's only just recently (i.e. 3 days ago) gone into public beta. 😊
In looking at the samples and what immediately jumped out at me as someone who utilizes HTTP triggered functions the majority of the time is the introduction of two new data contract classes to represent the request and response: HttpRequestData and HttpResponseData.
First, I would like to ask that we could have some kind of short explanation of why these classes were introduced. I believe it's because the SDK does not want to pin itself to a specific version of System.Net.Http, is that correct? If so, would you care to expand on why you think it's a bad idea to tie a specific extension to another dependency? Frankly, I think it would be a big mistake to force new types on .NET developers in the context of an Azure Function when in so many other contexts System.Net.Http is what we all use and which itself has an extension ecosystem built around it.
Second, if it comes down to decoupling, well then I have concerns about the design of these contracts. For example, the Body being a string: this is dangerous for performance on multiple levels. First and most basic, even if I actually do want to return a string... I shouldn't have to build a whole contiguous string like that. Second, if I don't want to return a string and want to return binary data... what option do I have now? I would have to return base-64 encoded bodies and that's just, well, not a good idea from an HTTP perspective and could completely box out some standard HTTP scenarios like file downloads or serving images. I would also suggest that the Headers property being defined as the concrete type Dictionary<string, string> and always allocated even if not used is a terrible idea from a performance perspective. Anyway, we can split off and go into deeper on into this in separate issues once we have the core discussion established, but the point is that so much of this is already well thought out, designed and implemented into the existing System.Net.Http type system and I think it's a mistake to eschew that for an extension where I'm very much opting in to using HTTP in the first place.

Transferred the issue to the worker repo so we can continue updating here. The first wave of changes towards the design shared above is in PR right now. Still in draft, as it is being iterated on.


Rewrite in rust

I'll rewrite it from assembly

Can this scale?. I am really worried about performance. I think its best to split this into 5 repo's and deploy each individually to increase performance and extendibility

I will use a different repo for every component, will that solve the problem?

This seems like the only option. Good idea!


license in the footer isn't linkable

just noticed that, not sure from which day is, but i believe it is from recent update to 0.4.2. Also seen that you updated few libs last few days and you don't have that problem. Ideas? I didn't change anything
It seems, that it happend around 20 feb? I believe my last readme update using 0.4.1 is from 20 feb.
markdown isn't changed from that in last months
## License
{%= copyright({ start: 2016, linkify: true, prefix: 'Copyright', symbol: '©' }) %} {%= license %}

Hmm, maybe I fixed that locally and forgot to push it up... I'll check today, thanks for the issue


Could you please upload your virtual environment?

I'm tring run this program using a computer without Internet connection, could u pls upload your virtualenv file

failed to create the


TLSv1.3: Update libcrypto to support TLSv1.3 style IVs

Checklist

[x] tests are added or updated
[x] CLA is signed

Description of change

This is an update to the existing TLS GCM cipher in libcrypto to be able to support TLSv1.3 style IVs. evp_tests.txt is also updated with test vectors from https://www.ietf.org/id/draft-thomson-tls-tls13-vectors-01.txt
I had to make a few tweaks to evp_test.c to be able to support these test vectors. Part of that was splitting the setting of the key and the IV into separate steps. This revealed a bug in ChaCha20 where this didn't work properly, so I fixed that as well.

Two new commits added: one to address the feedback comments, the other to address an AppVeyor failure. The AppVeyor issue was actually a pre-existing bug related to the multi-line X25519 keys that were already at the end of evptests.txt. The bug didn't hit until we tried to add more tests. It seems Windows can't cope very well with Unix style \n when opening a file in "r" mode. Opening "rb" sorts it. @richsalz please reconfirm?

Rather than continue to route all these things into EVP_CIPHER, why not place the libcrypto/libssl boundary where it actually is: the AEAD? An AEAD is a well-defined object which the TLS protocol uses. The code should reflect this. OpenSSL already has a perfectly suitable, albeit really hacky in places, AEAD API in EVP_CIPHER:
https://wiki.openssl.org/index.php/EVP_Authenticated_Encryption_and_Decryption
But the TLS code instead uses TLS-specific ctrl hooks which make the AEADs aware of TLS-specific nonce construction. Having this parallel logic means your code is harder to test and understand. The usual standalone AEAD tests don't cover the TLS stuff because it's using different code. The ChaCha20-Poly1305 version of this logic, in particular, has not held up well:
https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30a5f32227fab78214a08775d38bfacbb5feaaa4
https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=bf52165bda53524a267c784696bd074111a2f178
This PR adds a new TLS-specific ctrl hook. And because you export it in the public header, you are committing to exposing this in EVP_CIPHER until the next API break. Better to get it right while you can.
Instead, I would suggest the TLS code be a normal consumer of libcrypto and use the same AEAD API as everything else. All the business around different versions having different nonce constructions is all TLS stuff and belongs in libssl.

+1 reconfirm.

@davidben - I think that's a very fair point. I'm closing this while I have a rethink.


Added contribution example and code of conduct.

I may also add Issue Template which is with text area.

Hyperlinks are used for main repository, so there won't be an issue after merged.


Arguments against .done()?

@petkaantonov or anyone can please lead me to any discussion with arguments against using .done()? The statement "The use of this method is heavily discouraged" at https://github.com/petkaantonov/bluebird/blame/master/docs/docs/api/done.md#L20 is very strong and am looking for more information about it (GitHib issues, blog posts, videos, etc).
Thanks in advance!

A relevant discussion -> https://github.com/domenic/promises-unwrapping/issues/19

You can use .catch(thrower) in place of done for error handling but both have the same problem that you need to remember to use it everywhere and it's in practice not so easy to make sure every chain always has a done.
Perhaps coincidence but someone again just commented on an issue how confusing it was to see a unhandled rejection when they thought they had all chains covered with a handler when they did not. Imagine with a .done when there is nothing to even warn you about that one of the chains was covered (presumably if you are using .done you would turn unhandled rejections off).

Thanks for the quick responses! I guess the discussion will keep going for a while. Thanks again!!

Perhaps coincidence but someone again just commented on an issue how confusing it was to see a unhandled rejection when they thought they had all chains covered with a handler when they did not. Imagine with a .done when there is nothing to even warn you about that one of the chains was covered (presumably if you are using .done you would turn unhandled rejections off).

Well, to me it sometimes seems the other way around. People get confused with the automatic unhandled rejection detection, because they are unaware of some dangling side-chains they accidentally created. If they are allowed to monitor only the main chain for unhandled rejections by specifying it explicitly, it may be better. They probably do not care for exceptions in minor side chains, and many of those are even so simple (after their branch-off point) that they can not fail in principle. But now an error in earlier common parts of the promise chain still reaches those side-chains and gets logged as unhandled, while it is perfectly handled on the main chain.


WARNING - Specified target combination is not valid: linux tools_ifw

Hi
updated QIF (IFW) and came across a problem.
aqt tool linux tools_ifw 3.2.2 qt.tools.ifw.32

or
aqt tool linux tools_ifw 4.0.0 " "

I get a warning and the installation is aborted.
2020-11-04 13:51:01,137 - aqt - INFO - aqtinstall(aqt) v0.9.7 on Python 3.8.6 [CPython GCC 10.2.0]
2020-11-04 13:51:01,137 - aqt - WARNING - Specified target combination is not valid: linux tools_ifw qt.tools.ifw.32
2020-11-04 13:51:01,336 - aqt - INFO - Finished installation
2020-11-04 13:51:01,337 - aqt - INFO - Time elasped: 0.20086125 second

what has changed?
P.S
the same problem in Windows

PR #171 should fix the warning, but this issue will probably not be fixed. I couldn't figure out why it doesn't load ifw.

I get a warning and the installation is aborted.
This part is just check known combination and show warning,  but the process is continues.
If installation was aborted, there may be an another issue.

There seems that ifw 3.2.2 is removed from Qt download site.
https://download.qt.io/online/qtsdkrepository/linux_x64/desktop/tools_ifw/Updates.xml
<Name>qt.tools.ifw.40</Name>
<DisplayName>Qt Installer Framework 4.0</DisplayName>
<Description>The Qt Installer Framework provides a set of tools and utilities to create installers for the supported desktop Qt platforms: Linux, Microsoft Windows, and macOS.</Description>
<Version>4.0</Version>

so
aqt  tool linux tools_ifw 4.0 qt.tools.ifw.40

may be a correct command line.

aqt  tool linux tools_ifw 4.0 qt.tools.ifw.40

Yes this is work. Thanks you


Update SQL Server version to 2019

This is just a matter of changing the container version. However, SQL Server 2019 runs as a non-root user in the container meaning that the data volumes created in 2017 can't be accessed.
Here is some info
https://www.centinosystems.com/blog/sql/updating-sql-server-2017-containers-to-2019-non-root-containers-with-data-volumes/#comments
But it should also be possible to execute chown running the SQL Server image, and specifying a root user:
docker run --net nccs_default --rm -it -v /opt/sql:/var/opt/mssql mcr.microsoft.com/mssql/server:2019-latest chmod ...

(and specify root user)

The NCCRD will stay on SQL Server 2017 for now


Feature: Allow failed build artifacts to be kept longer than successful ones

What feature do you want to see added?
There are classic plugins for this feature, but none of those are compatible with pipelines as far as I know. If there is an existing, pipeline-compatible plugin or other method to achieve this, please let me know!
Justification:
Because I'm trying to push our organization towards pipelines for all of our jobs, this missing feature is problematic. We have dozens of jobs, and some of them generate sizable artifacts that we don't want to keep for successful builds (except for the last 1 or 2). On the other hand, if a failure occurs when nobody is available to review it, we need to ensure that it cannot be discarded due to new, successful builds.
This likely isn't a problem for anyone whose tests are very granular and deterministic, because their tests will either consistently succeed or consistently fail. However, that's not our use case, and I'm sure we're not the only ones. Many of our tests are very complex, system-level tests that use networking and multi-threading, so it's not uncommon to encounter intermittent failures due to variations in network conditions and timing.
Proposed operation:
Given that these are the currently supported parameters:
            artifactDaysToKeepStr: "50"
            artifactNumToKeepStr: "5"
            daysToKeepStr: "100"
            numToKeepStr: "10"

I believe the simplest approach would be to create one more:
            failedArtifactMinimumNumToKeepStr: "2" // Value for illustration, not default

Assuming that artifactNumToKeepStr should continue to dictate the absolute maximum number of jobs' artifacts to keep, the above numbers would be interpreted to mean keeping artifacts for up to 1 failure and up to 5 total jobs, regardless of the specific breakdown. That is, keep 5 successful, or 1 failed and 4 successful, or 2 failed and 3 successful. artifactDaysToKeepStr would continue to be enforced for all jobs like it currently is.
I wish I had time to submit a proposed implementation, but my company's software team is too understaffed for that. :(
Thanks for your consideration.
Upstream changes
No response

The main goal for this plugin is to provide a default that can be overridden by specifying a discarder for the job it self. I don't thing there's a way to configure this for a specific job? So if we're going to add this we'll need to extend the plugin so we can have a different retention policy for failed jobs.
I think this is a corner case for this plugin and I'm not sure if it should be part of this plugin?
I would probably look into saving or tagging the build on failure instead of changing the global settings? Where you can tag failed build with or save the artefact where you having a different retention policy?

pipeline {
    agent any
    stages {
        ...
    }
    post {
        failure {
            echo 'I failed :('
        }
    }
}

Thank you for your response.
You're right--I didn't submit this to the appropriate project. Sorry about that! I will close it.
Thanks also for the suggestions. The solution I'm looking for can't require user action, because the idea is to preserve troubleshooting data when the responsible user isn't available right away (due to a weekend, or vacation, etc.). Most of our jobs haven't yet been converted to pipeline, but it seems that the extra control pipeline scripts provide may allow us to do what we need. I will look into this.
Best regards!


Add support for _typeFilter to export

Description
Add support for the _typeFilter parameter when creating an export job.
Fhir spec
This also adds support for the :not operator on tokens.
Related issues
Testing
Manually tested. New and existing unit and e2e tests run.

/azp run


Switch to golangci-lint

By default, we lint only pkg/... and cmd/lyra/... to keep memory consumption low enough to run on Travis.
Added a "make lint-all" target that runs on all packages.
The build breaks if lint is found and this commit also fixes the handful of lint errors found by default (but not those found by lint-all).

Travis is running out of memory so I'm trying a few different options.

Updated the description to indicate the Travis-friendly changes.


[Bug Report] video_player_media_kit: ^1.0.0+1 Unsupported operation: Infinity or NaN toInt

Device:
Android 8.0
dependencies:
  video_player_media_kit: ^1.0.0+1
  media_kit_libs_android_video: any
  media_kit_libs_ios_video: any

myCode
  @override
  void onInit() {
    // setHorizontal();
    VideoPlayerMediaKit.ensureInitialized(
      android: true,
      iOS: true,
    );
    controller = VideoPlayerController.networkUrl(
      Uri.parse(""),
      httpHeaders: {
        "User-Agent":
            "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36",
      },
    );}

_LinearProgressIndicatorState#08ee6(ticker inactive)):
Unsupported operation: Infinity or NaN toInt
I use video_player,When I finish initializing ,   An error occurred in the VideoProgressIndicator

Hi @Fantuan-cell,
video_player:media_kit: ^1.0.0 has been published. It should resolve your issue.
Thanks!


Autocomplete on vscode stops working

Before submitting your bug report

[X] I believe this is a bug. I'll try to join the Continue Discord for questions
[X] I'm not able to find an open issue that reports the same bug
[X] I've seen the troubleshooting guide on the Continue Docs

Relevant environment info
- OS:macOs
- Continue version: 0.9.215
- IDE version: 1.94.0
- Model: any (qwen2.5-coder:7b-base, deepseek-coder:6.7b-base)
- config.json:

{
  "models": [
    {
      "title": "Ollama",
      "provider": "ollama",
      "model": "AUTODETECT"
    },
    {
      "title": "qwen2.5-coder:7b-instruct",
      "model": "qwen2.5-coder:7b-instruct",
      "contextLength": 16384,
      "apiBase": "http://localhost:11434",
      "provider": "ollama"
    }
  ],
  "customCommands": [
    {
      "name": "test",
      "prompt": "{{{ input }}}\n\nWrite a comprehensive set of unit tests for the selected code. It should setup, run tests that check for correctness including important edge cases, and teardown. Ensure that the tests are complete and sophisticated. Give the tests just as chat output, don't edit any file.",
      "description": "Write unit tests for highlighted code"
    }
  ],
  "tabAutocompleteModel": {
    "title": "qwen2.5-coder:7b-base",
    "provider": "ollama",
    "model": "qwen2.5-coder:7b-base"
  },
  "tabAutocompleteOptions": {
    "disableInFiles": ["*.md", "*.txt"]
  },
  "completionOptions": {
    "maxTokens": 8192
  },

  "contextProviders": [
    {
      "name": "code",
      "params": {}
    },
    {
      "name": "docs",
      "params": {}
    },
    {
      "name": "diff",
      "params": {}
    },
    {
      "name": "terminal",
      "params": {}
    },
    {
      "name": "problems",
      "params": {}
    },
    {
      "name": "folder",
      "params": {}
    },
    {
      "name": "codebase",
      "params": {}
    }
  ],
  "slashCommands": [
    {
      "name": "edit",
      "description": "Edit selected code"
    },
    {
      "name": "comment",
      "description": "Write comments for the selected code"
    },
    {
      "name": "share",
      "description": "Export the current chat session to markdown"
    },
    {
      "name": "cmd",
      "description": "Generate a shell command"
    },
    {
      "name": "commit",
      "description": "Generate a git commit message"
    }
  ],
  "embeddingsProvider": {
    "provider": "ollama",
    "model": "nomic-embed-text"
  }
}

Description
Autocomplete worked for me before, until recently (yesterday or today, I'm not sure when), and then it stopped working.
The chat feature is still working fine with any models. Only autocomplete has the problem.
Output data of autocomplete shows it did not generate the prompt. The output of ollama shows no prompt was provided.
I tried a couple of versions of Continue (release, pre-release), but the problem persists.
To reproduce
No response
Log output
Continue log

==========================================================================
==========================================================================
##### Completion options #####
{
  "contextLength": 8096,
  "maxTokens": 8192,
  "model": "qwen2.5-coder:7b-base",
  "temperature": 0.01,
  "stop": [
    "<|endoftext|>",
    "<|fim_prefix|>",
    "<|fim_middle|>",
    "<|fim_suffix|>",
    "<|fim_pad|>",
    "<|repo_name|>",
    "<|file_sep|>",
    "<|im_start|>",
    "<|im_end|>",
    "\n\n",
    "\r\n\r\n",
    "/src/",
    "#- coding: utf-8",
    "```",
    "\nfunction",
    "\nclass",
    "\nmodule",
    "\nexport",
    "\nimport"
  ],
  "raw": true
}

##### Prompt #####
==========================================================================
==========================================================================
Completion:

output from ollama showing no prompt entered
DEBUG [process_single_task] slot data | n_idle_slots=4 n_processing_slots=0 task_id=1 tid="0x1ebeefac0" timestamp=1728402861
[GIN] 2024/10/08 - 17:54:21 | 200 |   26.967541ms |       <IP_ADDRESS> | POST     "/api/generate"
time=2024-10-08T17:54:21.898+02:00 level=DEBUG source=sched.go:407 msg="context for request finished"
time=2024-10-08T17:54:21.898+02:00 level=DEBUG source=sched.go:339 msg="runner with non-zero duration has gone idle, adding timer" modelPath=/Users/test/.ollama/models/blobs/sha256-485c567a3dcfc5403695bf0d70b3b70c0df36034426f046a35eabf9d24676878 duration=30m0s
time=2024-10-08T17:54:21.898+02:00 level=DEBUG source=sched.go:357 msg="after processing request finished event" modelPath=/Users/test/.ollama/models/blobs/sha256-485c567a3dcfc5403695bf0d70b3b70c0df36034426f046a35eabf9d24676878 refCount=0
time=2024-10-08T17:54:23.281+02:00 level=DEBUG source=sched.go:575 msg="evaluating already loaded" model=/Users/test/.ollama/models/blobs/sha256-485c567a3dcfc5403695bf0d70b3b70c0df36034426f046a35eabf9d24676878

Hi @longle255 , any chance you are seeing the same error reported here? https://github.com/continuedev/continue/issues/2457#issuecomment-2400013843

@Patrick-Erichsen I can't tell for sure if the causes of those errors was the same. I don't see similar error message in vscode debug console.
in fact I don't see any error at all, in any output

@Patrick-Erichsen
I'm facing same issue, the reason why the completion was a space character is because the stop list contains "```".
And Qwen2.5-Coder completion result is
 ```python\n    # Uncomment the following line to set a custom chat template\n     # runtime.endpoint...

Modify stop list and it works. But I didn't figure out how to config continue to make this works.

Same with Intellij IDEA
##### Completion options #####
{
  "contextLength": 8192,
  "maxTokens": 8192,
  "temperature": 0,
  "topP": 1,
  "presencePenalty": 0,
  "frequencyPenalty": 0,
  "model": "deepseek-chat",
  "stop": [
    "<｜fim▁begin｜>",
    "<｜fim▁hole｜>",
    "<｜fim▁end｜>",
    "//",
    "<｜end▁of▁sentence｜>",
    "\n\n",
    "\r\n\r\n",
    "/src/",
    "#- coding: utf-8",
    "```",
    "\nclass",
    "\nfunction"
  ],
  "raw": true
}

##### Prompt #####

After some debugging into continue code, I think I found the cause of my issue, it's the contextLength of tabAutocompleteModel.
Looks like by default the contextLength for tabAutocompleteModel is 8096, while my option for "completionOptions": { "maxTokens": 8192  }. That make the prompt to be pruned completely.
So my fix was adding contextLength option to tabAutocompleteModel
"tabAutocompleteModel": {
    "title": "qwen2.5-coder:7b-base",
    "provider": "ollama",
    "model": "qwen2.5-coder:7b-base",
    "contextLength": 16384
  },
  "completionOptions": {
    "maxTokens": 8192
  }

this fixes the problem for me.
@facelezzzz I think it would also fix the problem for you, as your context length and maxToken were the same.

@longle255 It works again! Thank you for your efforts.

After some debugging into continue code, I think I found the cause of my issue, it's the contextLength of tabAutocompleteModel.
Looks like by default the contextLength for tabAutocompleteModel is 8096, while my option for "completionOptions": { "maxTokens": 8192 }. That make the prompt to be pruned completely.
So my fix was adding contextLength option to tabAutocompleteModel
"tabAutocompleteModel": {
    "title": "qwen2.5-coder:7b-base",
    "provider": "ollama",
    "model": "qwen2.5-coder:7b-base",
    "contextLength": 16384
  },
  "completionOptions": {
    "maxTokens": 8192
  }

this fixes the problem for me.
@facelezzzz I think it would also fix the problem for you, as your context length and maxToken were the same.

666666

Thanks for the writeup here @longle255 ! We should definitely provide a better warning in this case.
Curious why both of you are explicitly setting your completionOptions to 8192?

 After digging a while I found an issue here talking about the same problem https://github.com/continuedev/continue/issues/2319 and they mentioned about the option in one of the comment. Adding the option did fix the problem for me.

For me, adding maxTokens also fixed the issue of the autocomplete not working. But the docs actually say the param should be called maxPromptTokens (https://docs.continue.dev/customize/deep-dives/autocomplete) 🤔


Rename APIs for model serving framework

We are going to rename these APIs:

upload model -> register model, _plugins/_ml/models/_upload -> _plugins/_ml/models/_register
load model -> deploy model, /_plugins/_ml/models/<model_id>/_load -> /_plugins/_ml/models/<model_id>/_deploy
unload model -> undeploy model, /_plugins/_ml/models/<model_id>/_unload -> /_plugins/_ml/models/<model_id>/_undeploy

With these changes, we also changed other places

model state, for example LOADED -> DEPLOYED
functions names, for example uploadModel -> deployModel
variable names, for example uploadInput -> registerModelInput

UI Content
API

Register version via URL
/_plugins/_ml/model/_register

Register version via local file step 1
/_plugins/_ml/model/_register_meta

Register version via local file step 2
/_plugins/_ml/model/<model_id>/upload_chunk/<chunk_id>

Register model
/_plugins/_ml/model_group/_register


[zh-cn] sync fine-parallel-processing-work-queue.md

content/zh-cn/docs/tasks/job/fine-parallel-processing-work-queue.md

/lgtm


Class based component support

Is your feature request related to a problem? Please describe.
Im trying to port from using tipsi stripe and have a working class based implementation throughout.  Im only seeing function based component support?
Describe the solution you'd like
Class based component support
Describe alternatives you've considered
Not migrating to this SDK until required, instead of now.

All needed functions are also directly exported e.g. import { confirmPaymentMethod } from '@stripe/stripe-react-native'; usage of hooks is therefore optional.

@thorsten-stripe great thanks for the prompt reply.  Pardon my ignorance

@thorsten-stripe: Thanks for your nice library. Ca you please put an example with class base here?


[WIP] [Feature] StreamPark Autonomous Health Probing

What changes were proposed in this pull request
Issue Number: https://github.com/apache/incubator-streampark/issues/2944

Brief change log
Design details can be found in: https://docs.google.com/document/d/1a8-fZVSUi2vOl54J8pSO9MXHHjtbikag4MvnUup61vQ/edit?usp=sharing
Verifying this change

This change is local testing without any test coverage.

Does this pull request potentially affect one of the following parts

Dependencies (does it add or upgrade a dependency): (no)

This is a very useful feature👏, There are some conflicts in the code, please rebase the code first. if the PR is ready, feel free to call me for a review. Good luck!

Hi @wolfboys ，PTAL.

Hi @wolfboys ，PTAL.

reviewing


Create a Bower Style Guide

With a lot of new volunteers coming on the team, it would be beneficial to have a style guide page that new contributors can reference for specific style conventions used.

Doesn't Travis already check that using JSHint?

@AnthonyBobsin I do agree with you on this. Any information that can help get someone up and running is useful. Travis does enforce this, and letting contributors know what it is that is being enforced would be of help.
+1 from me

So basically a more human readable version of .jshintrc on the wiki here? I could write up a quick draft for that.

Exactly, I'm thinking something similar to the npm coding style document.

Might post this as a different issue after some digging into, but I also noticed that not all jshint preferences are being enforced. For example for indent: 4, the file test/commands/install.js has indentation set to 2, but no errors are mentioned.

@AnthonyBobsin - so are you taking the lead on this :-)

@pertrai1 sounds good to me :) Will work on implementing node-jscs as well in order to enforce the style guide

@AnthonyBobsin  @pertrai1 We would use editorconfig to ensure contributors stick to the style guide. I myself have set it up for Mozilla's PDFJS

@prometheansacrifice - there is actually already an .editorconfig file in the repo. Thanks for pointing that out though, did not notice that before. Will definitely make sure it's up to date with the style guide.
I've implemented JSCS which is similar to jshint but strictly related to coding styles. It's great because you can set it so that it automatically corrects code that doesn't adhere to the coding rules we provide. I have a small start to the style guide written up as well, but I would love to get some other people on this with me, as I am fairly new to the project.

@AnthonyBobsin You can create a Wiki page for style guide :) A PR with jscs and style fixes is welcome too.

@sheerun - wow, thanks for reminding me, I totally forgot about the Wiki page! Will move the style guide onto a separate Wiki page, then submit the JSCS implementation as a separate PR :+1:

@AnthonyBobsin I see you've mentioned 4 space indentation. I think 2 would be more suitable against the callback nesting. More opinions on this?

@prometheansacrifice - I actually highly prefer 2 as well in most cases. I based a lot of these rules on how the current state of the repo was. As long as everyone is on board though, I would be glad to switch over to 2 space indentation and JSCS will correct the whole repo for us.

I think the current standard for this repo is 4 unfortunately. I like 2 spaces more as well, but we don't want to change every line right now to prevent merge conflicts. So 4 spaces please :)

There's no maximum allowed line length in the current codebase :(
Could 2 spaces indentation and max_line_length be enforced for newer files. With time, existing files could adopt them too.

We can convert everything at once in the future. For now consistent 4 spaces is great.

I'll add a max_line_length rule as well, couldn't decide yesterday what to set it at. (npm-coding-style)[https://docs.npmjs.com/misc/coding-style] uses 80 characters, but they also use 2 space indentation, so it might be good for us to set it a bit higher. How does 95 sound?

95 sounds good

@sheerun - when attempting to set a max line length, there are over 400 errors that can't be automatically fixed. Looking through these, most of them are from it strings in specs. Have been trying to implement a way for jscs to ignore these lines but it's more complicated then I thought. Going to submit a PR without the max line length for now then will work on either contributing to jscs to make this process easier, or slowly adjust it strings.

Can't we just put // jscs:disable at the beginning of each test file?

We definitely can. We can even disable just the maxLineLength rule, but I think there might be a more elegant solution.
There are a couple questions at hand here. Should test description strings be that long to begin with? If they should, should we be separating the string onto two lines instead of one long line? Or is it ok as they are, and we should just disable maxLineLength for all test files.

I think they are mostly ok.. descriptive as they need to be.

I tried implementing a different jscs config file for all test files so that we don't have to go through and disable the rule manually. This still led to there being over 100 code style errors of lines going over 95 characters. I'm going to leave this how it is for now, and maybe come back to it another time

:+1:

Going to close this issue, and will open a new one for implementing a max line length throughout the repo


quic: gquic tests for cyu hash and alerts

pcaps taken from this redmine attachement:
https://redmine.openinfosecfoundation.org/issues/3440#note-8
Previous PR: https://github.com/OISF/suricata-verify/pull/364

Replaced by https://github.com/OISF/suricata-verify/pull/525


[After #60] App/Activity: Use ViewModel and Jetpack Compose UI

This PR uses ViewModel and Jetpack Compose for UI development.
ViewModel uses dependency injection.
Also button's onClick method is changed to use AppDatabase.

ANR occurs frequently and needs to be fixed

log
ANR in ai.nnstreamer.ml.inference.offloading (ai.nnstreamer.ml.inference.offloading/.MainActivity)
PID: 27137
Reason: Input dispatching timed out (256520a ai.nnstreamer.ml.inference.offloading/ai.nnstreamer.ml.inference.offloading.MainActivity (server) is not responding. Waited 10004ms for MotionEvent(deviceId=4, eventTime=766625543204000, source=TOUCHSCREEN, displayId=0, action=UP, actionButton=0x00000000, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, classification=NONE, edgeFlags=0x00000000, xPrecision=3.8, yPrecision=1.8, xCursorPosition=nan, yCursorPosition=nan, pointers=[0: (126.3, 1547.1)]), policyFlags=0x62000800)
Parent: ai.nnstreamer.ml.inference.offloading/.MainActivity
ErrorId: a4529fe9-5436-4961-9e91-2293b209ae8b
Frozen: s[false] g[false]
Load: 14.69 / 14.3 / 14.16
------ Current CPU Core Info ------
- offline :
- online : 0-9
- AP Temp = 301
                           0           1           2           3           4           5           6           7           8           9
------------------------------------------------------------------------------------------------------------------------------------------
scaling_cur_freq       1152000     1152000     1152000     1152000      672000      672000      672000      672000      672000      672000
scaling_governor  energy_awareenergy_awareenergy_awareenergy_awareenergy_awareenergy_awareenergy_awareenergy_awareenergy_awareenergy_aware
scaling_max_freq       1959000     1959000     1959000     1959000     2592000     2592000     2592000     2900000     2900000     3207000
------------------------------------------------------------------------------------------------------------------------------------------
----- Output from /proc/pressure/memory -----
some avg10=0.00 avg60=0.00 avg300=0.00 total=68750111
full avg10=0.00 avg60=0.00 avg300=0.00 total=52458205
----- End output from /proc/pressure/memory -----
----- Output from /proc/pressure/cpu -----
some avg10=5.21 avg60=4.60 avg300=2.89 total=17046208511
full avg10=0.00 avg60=0.00 avg300=0.00 total=0
----- End output from /proc/pressure/cpu -----
----- Output from /proc/pressure/io -----
some avg10=0.00 avg60=0.00 avg300=0.00 total=181647176
full avg10=0.00 avg60=0.00 avg300=0.00 total=132418268
----- End output from /proc/pressure/io -----

CPU usage from 100455ms to -1ms ago (2024-08-01 10:56:24.831 to 2024-08-01 10:58:05.287):
9.1% 1385/system_server: 4.7% user + 4.3% kernel / faults: 3460 minor 1 major
4.6% 8734/adbd: 1.5% user + 3% kernel / faults: 2664 minor
3.5% 10807/com.google.android.gms.persistent: 2.4% user + 1% kernel / faults: 3478 minor 31 major
2.5% 464/logd: 0.4% user + 2% kernel / faults: 580 minor
2.4% 1195/surfaceflinger: 1.2% user + 1.2% kernel / faults: 47 minor
1.8% 2986/com.android.bluetooth: 1.1% user + 0.7% kernel / faults: 619 minor 1082 major
1.7% 1344/cnss_diag: 1.3% user + 0.4% kernel
1.7% 23805/logcat: 0.3% user + 1.4% kernel
1.5% 150/pagov: 0% user + 1.5% kernel
1.4% 8826/process-tracker: 0.2% user + 1.1% kernel
6.4% TOTAL: 1.9% user + 3.1% kernel + 0% iowait + 1% irq + 0.2% softirq
CPU usage from 608ms to 1074ms later (2024-08-01 10:58:05.894 to 2024-08-01 10:58:06.360):
64% 1385/system_server: 24% user + 40% kernel / faults: 481 minor 3 major
  40% 1414/Signal Catcher: 24% user + 16% kernel
  16% 27648/AnrAuxiliaryTas: 0% user + 16% kernel
21% 4940/com.sec.android.sdhms: 4.3% user + 17% kernel / faults: 393 minor 799 major
  17% 5023/Signal Catcher: 8.6% user + 8.6% kernel
  4.3% 5029/HeapTaskDaemon: 4.3% user + 0% kernel
21% 7000/com.samsung.android.honeyboard: 8.7% user + 13% kernel / faults: 656 minor 44 major
  17% 7021/Signal Catcher: 8.7% user + 8.7% kernel
  4.3% 7162/Profile Saver: 4.3% user + 0% kernel
8.6% 4914/com.samsung.android.sead: 8.6% user + 0% kernel / faults: 371 minor 958 major
  12% 4999/Signal Catcher: 8.6% user + 4.3% kernel
8.8% 8734/adbd: 4.4% user + 4.4% kernel
  4.4% 8734/adbd: 4.4% user + 0% kernel


Add tinyrobotics

The following PR adds external library tinyrobotics.
This library is used for parsing our urdf file which is then used for:

Improving IK accuracy using a combination of a numerical optimisation based method and the previous analytical solution. The optimisation method is warm started with the analytical solution which ensures convergence and ensures that knees are bent correctly.
Kinematics within SensorFilter

This PR also acts as the first step in unifying our robot model description to allow our onshape model to provide us up to date kinematics and inertial properties of our hardware platform. My end goal is roughly illustrated by diagram below:

Future improvements/features:

Use tinyrobotics IK method with constrained optimization to allow addition of constraints such as CoM position/deviation, joint limits etc.
Use of tinyrobotics dynamics algorithms
Move nugus.urdf to it's own repo/folder with onshape-to-urdf config

where's this at? we can manually do the extrinsics now, but we'll need it documented how the matrix works/what the axes are


useraction.js file error

baseurl variable was out of scope which caused error in compilation so i redeclared it inside the scope for use

if PR merged i'll close issue


CI: add sanity checks before any test runs

Container creation
DNS working

Add more below :)

endpoint IP/ID mappings are found from the bpf ip cache?

If not a CI sanity check, this is a basic Cilium invariant, failures of which show as (intermittent) test failures on test cases that depend on the mapping (label based egress policy rules). It would be nice to have this kind of check be done before running any end-to-end policy tests that may depend on the IP/ID mapping, as having a failure that directly indicates the problem would save time in triaging.
Reasons for this failing may include bugs in kv-store interactions, so a basic kv-store sanity check should be performed before this test.

basic kv-store connectivity test

Closing this, we have the PreflightChecks option, which has proven quite useful.


VSCode opens my browser every time I launch it

VSCode Version: 1.24.0
OS Version: Ubuntu 18.04 LTS

Steps to Reproduce:

Open VSCode

Does this issue occur when all extensions are disabled?: Yes

This should only show on first startup. The fact that it was shown should be recorded in local storage which resides in the user's home folder. What are the timestamps of the files in your ~/.config/Code\ -\ Insiders/Local\ Storage/?

I don't see the Insiders folder, but assuming you're talking about this one :
la ~/.config/Code/Local\ Storage/
total 256K
-rw-r--r-- 1 bamarni bamarni 256K Sep 11  2017 file__0.localstorage
-rw-r--r-- 1 bamarni bamarni    0 Sep 11  2017 file__0.localstorage-journal

Yes, are you running VS Code with the user bamarni? These timestamps should update when you use VS Code. What happens when you move that Code folder to Code.bak?

Yes I'm running VSCode as bamarni, when I move Code to Code.bak it then only opens the browser on first boot, but I then loose all my settings. I've never messed with this directory manually and used the official Ubuntu deb installer so I think there were a bug at some point. Isn't there some logs I can look at?

Thanks @Tyriar , I've deleted this folder and it doesn't happen again, not sure if / how it got corrupted. I have a backup of it so let me know if I should send it to you.
Otherwise I've opened #52783, which is also quite annoying :confused:

@bamarni I don't think we'll be able to do much with the folder, it's probably some obscure Chromium bug you hit.


Roll Flutter Engine from 20369c5d2b93 to b122e7532f6e (3 revisions)

https://github.com/flutter/engine/compare/20369c5d2b93...b122e7532f6e
2024-10-03<EMAIL_ADDRESS>Add and use a dart_test rule. (flutter/engine#55630)
2024-10-03<EMAIL_ADDRESS>Roll Dart SDK from 4c767e0fae21 to 91d39199994c (1 revision) (flutter/engine#55631)
2024-10-03<EMAIL_ADDRESS>[Impeller] ensure one AiksContext per app. (flutter/engine#55629)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


Post / Put request - Send files (for example: .rfa)

Hi! I was wondering if it's possible to send files (for example: .rfa) with Swiftlet through Post / Put request.
If it is, could you give me guidance on how to do so? Best.

Hi @RitaAguiar! Sure. If we are talking about binary files, then take a look at the Create Byte Array Body and Create Byte Array Body From File components, as well as byte-array-related components in the Utilities section. Essentially, all you need to do is turn your binary file into a byte array using those components and then create a byte array POST body. And if the files are ASCII, then the regular Create Text Body component should suffice. Let me know if this works for you.

Thank you, this is what I was looking for :)
Do you also have a feature to download a file from a link (example: .rfa) as to be used in one of these nodes Create Byte Array Body and Create Byte Array Body From File ?

In terms of getting the file from the server, it's similar. All HTTP request components (such as the GET component, for example) have a Response output. You can use the Deconstruct Http Response component in order to get the server response as a byte array and then use the Byte Array to File component in order to write it to disk.

In terms of the Content-Type issue, I think you just found a bug in Swiftlet :) Basically, the Content-Type header is set on the Body, not on the request itself. As far as I understand, this is a quirk of the HTTP library in C# that I am using because in the HTTP protocol itself, only requests have headers: there is no such thing as a "body header". But in any case, the System.Net.Http library makes you set the content type header on the Body of the request for whatever reason, which is then supposed to trickle down to the request level. And in Swiftlet's case - it doesn't, because there is a manual step I've missed. In any case, good catch! Thank you. Putting this on the "To Do" list for 0.1.9.

Thanks for the help @enmerk4r. I am now able to save files to my local machine using the Deconstruct Http Response .
I regards to the post/put of a file, I'm not sure I understood correctly. So I should submit the ContentType in both the Body Headers and the headers? If I understood that correctly, I have indeed also tried that, but obtained the same response.

So, the reason why passing Content-Type as a request header had no effect is that you forgot the - and just passed it as ContentType :) However, correcting the typo will not solve your issue, since passing Content-Type directly to the POST or PUT component will actually throw an error. The error is due to the HTTP library in .Net requiring Content-Type to be specified on the request body and not on the request itself. That's why the Create Byte Array Body from File component has the Content-Type input.
So if everything worked as intended, you would just specify your type on the Create Body component, and then the POST or PUT component would read it from the body and add it to the request headers. But... there is currently a bug in Swiftlet, where POST and PUT components simply ignore the Content-Type of the body. I will fix this in the next release, but it will obviously take some time (I have a laundry list of things that I am adding and fixing in 0.1.9). So for now, I would just use a scripting component in Grasshopper to send your file.

Okay, got it 👍 Can you give me an estimate of when the 0.1.9 version will be released? Thanks!

@RitaAguiar I patched the Content-Type issue in the dev-0-1-9 branch. You can either build it from source yourself, or get the updated build here:
0.1.8-patched-content-type.zip
If you installed Swiftlet through Yak, you'd have to uninstall your current version through Package Manager before dropping the gha and the dlls into the Grasshopper\Libraries folder, otherwise, you will have conflicts.
In terms of the official release, hard to say. I'm working on Swiftlet in my spare time, so this will really depend on when I have a free weekend :) But hopefully soon. In any case, let me know if the ZIP above works for you.

Thanks! I have first uninstalled the previous version and then added the updated build to the C:\Users\Rita\AppData\Roaming\McNeel\Rhinoceros\packages\7.0\Swiftlet\0.1.8 folder.
I can see that in _PackageManager the plug-in is successfully recognized, but when I open Grasshopper I cannot find the components.
Maybe I'm missing something here?

@RitaAguiar No no, don't use Yak for this. Here's what you'll have to do:

Uninstall whatever current version of Swiftlet you have on your system
Download the ZIP file
IMPORTANT: Make sure to right-click on the downloaded ZIP, go to Properties, check the Unblock option, and hit Apply
Unzip the package and place the GHA + DLLs into Grasshopper's Components Folder (AppData/Roaming/Grasshopper/Libraries). You can make a Swiftlet subfolder inside of Libraries to keep the installation files together, which will make it easier to uninstall in the future.

In other words, use the ZIP package to install Swiftlet the old-school way :)
Let me know if this works.

@RitaAguiar On second thought, you probably could do it your way (replacing the files inside of McNeel/Rhinoceros/packages/...), but I wouldn't touch the manifest. You can just replace the GHA and the DLL files in your 0.1.8 installation. This will make it easier to upgrade to 0.1.9 later. In this case, unblocking the ZIP file before unzipping is still a crucial step.

I am now able to use the patched version. :)
I have removed the ContentType input from the headers as it was not necessary. Now it is only being provided through the body of the request. The multipart/form-data seems to be the only format that is allowed as I also tried with the other different file formats but it says they are not supported. However, I did not specify any mandatory format in my endpoint. All formats are allowed and I have tested this with a Python Script and I am allowed to upload anything.
I've tried to find a way to provide a boundary as it is being asked here, but I'm not sure about this step. Do you have any suggestions?
Thank you for your help!

@RitaAguiar ok, I'm glad the Content-Type is working now! With regard to the multipart data, it's difficult to diagnose the issue without seeing the server-side code. Would you be willing to share at least a toy "hello world" example that can help reproduce the error?

When trying with application/octet-stream the Material update failed exception is thrown.
I can change this endpoint however I need so that this GHscript call works.
Endpoint definition:
class updateMaterialBIMModel(APIView):
    def post(self, request, *args, **kwargs):
        if not request.headers["materialID"]:
            return Response("The 'materialID' field is required", status=400)

        try:
            material = Material.objects.get(id=int(request.headers["materialID"]))
        except Material.DoesNotExist:
            return Response("Material ID does not exist", status=404)

        try:
            bim_model_file = request.FILES.get("BIMModel") # this is where the code is failing
        except Exception as e:
            return Response(f"Material update failed: {e}", status=e.status_code)

        if not bim_model_file:
            return Response("The 'BIMModel' file is required", status=400)

        # Read the contents of the file into a byte array
        try:
            bim_model_bytes = bim_model_file.read()
        except Exception as e:
            return Response(f"Failed to read 'BIMModel' file: {str(e)}", status=400)

        # Encode the byte array as base64
        try:
            bim_model_data = base64.b64encode(bim_model_bytes).decode("utf-8")
        except Exception as e:
            return Response(f"Failed to encode 'BIMModel' data: {str(e)}", status=500)

        # Save the byte array data to a file or handle it as needed
        # For example, save it to a file using a unique name
        file_name = f"bim_model_{material.id}.rfa"
        file_path = os.path.join("materials/bim_models", file_name)

        try:
            with open(file_path, "wb") as file:
                file.write(bim_model_bytes)
        except Exception as e:
            return Response(f"Failed to save 'BIMModel' data: {str(e)}", status=500)

        # Update the material's bim_model field
        material.bim_model.name = file_path
        material.save()

        return Response(f"Material updated: {file_name}", status=200)

Working Python script call:
def update_material_bim_model(material_id, bim_model):
    url = f"{NEXT_PUBLIC_API_URL}/materials/update-material-bim-model/"
    headers = {
        "materialID": str(material_id),
    }
    files = {
        "BIMModel": open(bim_model, "rb"),
    }
    response = requests.post(url, headers=headers, files=files)
    if response.status_code == 200:
        data = response.json()
        # Process the response data as needed
        print(data)
        return data
    else:
        print("Error:", response.status_code)
        print("response.text", response.text)

Thanks @enmerk4r ! I went with the quicker fix option with Byte Array. This workflow worked.
Then I tried adding the compressing and decompressing. However, I am not able to correctly decompress the files, neither .rfa.gz or .png.gz. I tried with the gzip, the zlib and the zipfile libraries in python. In the case I provide a .png.gz I get Failed to save 'image' data: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte. In the case I provide a .rfa.gz I get Unexpected character encountered while parsing value: <. Path '', line 0, position 0.

But yeah, without compression this works great.

@RitaAguiar Ok! Great to hear! And just out of curiosity - are you trying to un-GZIP the binary data inside the route before you write it to disk? Or are you writing it to disk first and then trying to open it? As far as I know, the latter likely won't work. I would recommend decompressing the binary data that comes from the POST request before doing anything else to it. But in any case, glad it's all working now.

I've been trying with first read, then decompress, then write:
with open(image_file, "rb") as file_in:
    compressed_data = file_in.read()
decompressed_data = gzip.decompress(compressed_data)
with open(file_path, "wb") as file_out:
    file_out.write(decompressed_data)

@RitaAguiar Hey! Idk if you still need help with multipart/form-data, but I just pushed out 0.1.9 to both Yak and Food4Rhino. Swiftlet now has two components to deal with Multipart data: Create Multipart Form Body Named and Create Multipart Form Body Unnamed (the component names are getting out of hand at this point hehe). Both components take a list of other HTTP Body types that Swiftlet already supports (so either a text-based body or a binary body). The Named component lets you also pass a list of field names, which essentially turns your form into a key-value dictionary. The Unnamed component just combines all of the bodies you pass to it into a list. So, your definition would look something like this:

I know we found a different workaround for your use case, but I feel like it's nice to have support for multipart data in Swiftlet. Thanks for pointing that out!

Thank you! I appretiate it.
I will have a look when I can.

Thank you! I appreciate it.
I will have a look when I can.


Find peak element

Problem Link
https://leetcode.com/problems/find-peak-element
Coding platform
leetcode
Programming language

[ ] C
[ ] C++
[ ] Java
[ ] Python

Additional context (OPTIONAL)
Add any other context or screenshots about the feature request here.

would like to submit in c++ under crosswoc

@Nivedita967 can I work using Java?

Hi @Nivedita967
I would like to solve it in Python. please assign it to me.

would like to provide solution for c as well

would like to provide solution for c as well

Sure @pri1311 Go for it.


LMDE check added to check_forked() function - See #16498

Alternate proposal #16498

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "LMDEv2" git@github.com:justsml/docker.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

@justsml can you extract any useful information from /etc/os-release ? If so, I'd prefer using that as a fallback in the case where lsb_release -u doesn't work.

@tiborvass Is that more like it?

@justsml I'm curious, what's inside your /etc/os-release file? That looks interesting.
TL;DR
The use of /etc/debian_version is interesting. Trying to go more generic: would it harm Ubuntu distros if we install a Debian package in it? Would the structure differ enough to cause any pain?
If not, we could just check for debian_version file and always consider it's a Debian distro in this case, if lsb_release -u have failed previously. We'd reach any Debian derivative if this is possible. Some research is needed.
If you've got the time :sweat_smile:
The /etc/debian_version file is an interesting point. I've got that file in my elementary OS (Ubuntu fork) too and it contains jessie/sid. So, checking for its presence may lead to confusion between Debian and Ubuntu distros, that's why I think @justsml have checked his os-release file as well.
:question:  Does the flow below make sense? Would it work?

(existing step) Check lsb_release -u, in case of success, consider its upstream info as the script is doing today.
(new step) If above fails, check for the presence of /etc/debian_version file. If it exists, consider it's a Debian distro and get the corresponding version from the file. Follow the install.sh flow of a Debian distro.

:warning:  Caution:
The step 2 would be true in Ubuntu forks in which lsb_release -u isn't supported. The effect of this would be installing a Debian package in an Ubuntu fork. It doesn't look dangerous at first sight, though I don't know how both distros differs in structure from each other. We would need some research and pick a few example distros to test it.
I know @justsml have suggested using /etc/os-release together to check if it's a Linux Mint distro, but I'm trying to go the most generic way we can do. Would installing a Debian package to Ubuntu do any harm? Are there significant structure differences between them?
:bulb:  What do you think?
This approach attempts to be more generic so we can reach more distros with less effort. But it may not work.
I've got some ISOs here, so I'll setup some VMs to test it and report the results here.

@fmoliveira I'm not sure I understand how you can be more generic than using /etc/os-release ?
/cc @tianon

@tiborvass The presence of the /etc/debian_version file points it's any kind of Debian derivative, and that would lead to more generalisation.
I don't know if it's possible to install the Docker package from Debian repositories in Ubuntu distributions, there may be file structure differences. But if that works, it'd do work across all Debian distros, being much more generic.
Yet we should consider this as risky until we understand file system differences between Debian and Ubuntu.

@justsml
By the way, the install.sh already has some checks for the /etc/debian_version file in order to install Docker on Debian. Why isn't it working on LMDE? I think the first step is trying to understand why the lines below don't work for LMDE:
Lines 155-157:
if [ -z "$lsb_dist" ] && [ -r /etc/debian_version ]; then
	lsb_dist='debian'
fi

Lines 186-196:
debian)
	dist_version="$(cat /etc/debian_version | sed 's/\/.*//' | sed 's/\..*//')"
	case "$dist_version" in
		8)
			dist_version="jessie"
		;;
		7)
			dist_version="wheezy"
		;;
	esac
;;

@tiborvass If the Debian package also works in Ubuntu distros, the code mentioned above could possibly be used as a fallback to the absence of lsb_release -u in Ubuntu derivatives. Sorry for being off topic, this PR is about a pure Debian derivative. I'm going back on topic.

I'm still reading the comments... But here's more details of my environment:
dan@dev:~$ cat /etc/debian_version
8.2

dan@dev:~$ cat /etc/os-release
PRETTY_NAME="Linux Mint LMDE"
NAME="Linux Mint LMDE"
ID=linuxmint
ANSI_COLOR="1;31"

dan@dev:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	LinuxMint
Description:	LMDE 2 Betsy
Release:	2
Codename:	betsy

dan@dev:~$ lsb_release -u
Usage: lsb_release [options]

lsb_release: error: no such option: -u
dan@dev:~$ lsb_release --help
Usage: lsb_release [options]

Options:
  -h, --help         show this help message and exit
  -v, --version      show LSB modules this system supports
  -i, --id           show distributor ID
  -d, --description  show description of this distribution
  -r, --release      show release number of this distribution
  -c, --codename     show code name of this distribution
  -a, --all          show all of the above information
  -s, --short        show requested information in short format

$lsb_dist ends up being "linuxint"

LMDE wants to appear like it's own main distro 'linuxmint' - not 'debian'.
Here's where I was going...
To catch this specific condition:
I check /etc/os-release is linuxmint AND we have a /etc/debian_version file.
I know it's getting a little specific putting 'linuxmint' in there - but my patch currently fixes the issue with bare minimal changes.
I tested the non-LMDE Ubuntu-based Cinnamon/Mint v17.x - and it does NOT have a /etc/debian_version file.

Hey @fmoliveira thanks for the suggestions.
I updated my code so there is no mention of linuxmint, just a fallback - see around line 80:
		else
			if [ -r /etc/debian_version ]; then
				lsb_dist=debian
			fi
		fi

Hope that looks better, I think I just needed to :zzz:
I still need to test both the main/Ubuntu-ish Cinnamon & MATE releases. Their 'Debian Edition' counterparts are working & passing.

Hi @justsml ,
Oh, my bad. That's right, forked distros will have their own name in $lsb_dist.
Checking only for /etc/debian_version file to pretend it's Debian should work for LMDE and other Debian based distros.
But first I want to confirm if this wouldn't harm Ubuntu forks which don't implement lsb_release -u, check the research we've done at #15001. As these distros also have the /etc/debian_version, they'd behave like Debian and install packages from Debian sources instead of Ubuntu ones. I don't think it'll be a problem, they shouldn't be very different in structure, but it's good to check it out before deploying this fix.
I'll setup some VMs with Ubuntu forks that I've used in #15001 and post the results here.

Thanks for pointing out #15001. I've still gotta work out a rough edge or 2.
I setup tons of test VMs.
And It works in all of them EXCEPT Ubuntu 14.04 LTS. Weird.
I'll have it fixed soon.
Side note: I'm glad I checked out elemetary OS - it's beautiful, even the animation on a VM was impressive - it's 'workspaces' UI makes OSX's look like it's from some hack design team.
Test Results/Progress :+1:
Pre-test I ran system updates & installed virtualbox guest drivers.
# The test!
curl https://raw.githubusercontent.com/justsml/docker/LMDEv2/hack/install.sh | bash

Target OSs:
[x] elementary OS
[x] Linux Mint 17.2 Cinnamon & MATE
[x] Linux Mint Debian Edition v2 LMDE2 Cinnamon
[x] Fedora 21, 22 & 23 beta
[ ] Cumulus Linux - et OSS?
[x] Kali
[ ] Ubuntu 14.04 Pending Fix
[x] Kubuntu
[x] Debian
[ ] openSUSE

ah cool!

I confirm that this works with the last version of LMDE Betsy.

ping @tianon

Idea: Workaround for Hard-Failures in install.sh, w/ a fallback 'Distro pick-list' install mode

I know confusing users w/ an abundance of choices is usually evil, and the current inspection+detection method reminds me of what has worked very well for browser devs
However, could it be we are ignoring & overlooking a level of fragility at the edges of the linux universe?
I say 'fragile' because each LSB/distro's case block has it's own hardcoded expectations and unique checks. (e.g. debian's dist_version check only account for v7 & v8 - even though a Debian v9 (stretch)  apparently is available on the repos).

Side Note Does this sound feasable: Could a more predictable solution featuring ZERO hard-coded LSB/dist names work? Instead using Curl+RegEx extraction on the repo indexes to identify & show available choices in a menu/pick-list? ... (Does that make sense? I might need to get some sleep...)

I'm assuming if you are installing docker at cmd line you probably can pick your closest OS match out of a lineup, hopefully.
Anyway here's what I had in mind for a minimal 'Menu/Picklist', (no curl, just hard-coded atm)
# Example w/ the deb/ubuntu flavors
while true; do
    read -p "Choose the distro most similar to your OS: " n
    case $n in
        [1]* ) lsb_dist=debian; dist_version=jessie;  repo=main; break;;
        [2]* ) lsb_dist=debian; dist_version=stretch; repo=main; break;;
        [3]* ) lsb_dist=debian; dist_version=wheezy;  repo=main; break;;
        [4]* ) lsb_dist=ubuntu; dist_version=precise; repo=main; break;;
        [5]* ) lsb_dist=ubuntu; dist_version=trusty;  repo=main; break;;
        [6]* ) lsb_dist=ubuntu; dist_version=utopic;  repo=main; break;;
        [7]* ) lsb_dist=ubuntu; dist_version=vivid;   repo=main; break;;
        [8]* ) lsb_dist=ubuntu; dist_version=wily;    repo=main; break;;
        [9]* ) exit;;
        * ) echo "Please answer yes or no.";;
    esac
    $sh_c "echo deb https://apt.dockerproject.org/repo ${lsb_dist}-${dist_version} ${repo} > /etc/apt/sources.list.d/docker.list"
done

/ping @justsml @tianon @jfrazelle how are we on that ?

This PR LGTM (logic seems fair enough).
As for the future of this script, I think we should probably update it to print out a deprecation warning and have it only detect enough of a platform to be able to link to the relevant installation documentation (and for now, then continue with the install but with a warning that it will eventually no longer perform the install).  Then we can slowly (two major releases) transition it to just be a "detect my platform and link me to the right documentation" script.

ping @jfrazelle PTAL

LGTM and agreed with what @tianon said above re depreciation warning

Thanks for the merge @jfrazelle  !!!
Ok @tianon - sounds good :+1:

@jcbrinfo I can't install it using LMDE Betsy :
wget -qO- https://get.docker.com/ | sh
Either your platform is not easily detectable, is not supported by this
installer script (yet - PRs welcome! [hack/install.sh]), or does not yet have
a package for Docker.  Please visit the following URL for more detailed
installation instructions:
https://docs.docker.com/en/latest/installation/


fix: handle invalid invite create limits

Closes #580

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


replacing master/slave terminology with an alternative

It may be more respectful for all possible users if the master/slave terminology is replaced with something else, like primary/assistant or something.
ref: http://wiki.ros.org/ROS/Master_Slave_APIs
Related: https://github.com/RethinkRobotics-opensource/rosnodejs/issues/151
:black_large_square:

We've already made an effort to avoid using this terminology in several places in the ROS 1 codebase over the last several years. This particular instance is baked in deeply but is something that we have explicitly designed out of ROS 2. As such since ROS 1's final release, noetic, has already come out, this entire API will not be included in future ROS distributions. As such I would suggest that we consider this resolved since the terminology for this API will not be in any future rosdistro.

Assuming the previous comment answered the question I will go ahead and close this ticket for now. Please feel free to continue commenting.


Tuple sketch to values

Coverage increased (+0.02%) to 95.51% when pulling fac6430959dd7417058960564d47a5bf03c5c7f1 on tuple-sketch-to-values into 89117ed017a6c3f99c6f77265078d7c5a8677050 on master.


Inventory label causes error

It looks like the formatter doesn't like adding a label per the beancount documentation: https://beancount.github.io/docs/how_inventories_work.html
For the directive below there is an error until the label is removed.

Hi @YagiOoda,
Thanks for reporting the bug. I haven't looked into details yet, but just have glance, it appears to me more like a parser bug from
https://github.com/LaunchPlatform/beancount-parser
Maybe I didn't define the label syntax correctly in the parser. I will find a time to look into this.


Keep deck_cache.{wins,losses,draws} up to date after admin actions.

Fixes #5562.
Fixes #6647.

Hey @bakert,
Your changes look good to me!
View build log
TravisBuddy Request Identifier: ace59090-0024-11ea-8b9e-5d36b4f25336


Improve UX for platform-specific extension installation on Windows through WSL

Background
We publish an extension that is only supported on Linux. Windows users are expected to install and use it on WSL.
In the past, users would install the extension on Windows and then it would not work (as expected), so we started to use https://code.visualstudio.com/api/working-with-extensions/publishing-extension#platformspecific-extensions and only publish the extension for linux-x64.
A new problem came up. When Windows users try to install the extension outside WSL, they see the message "The extension is not available in Visual Studio Code for Windows 64 bit."
This message misleads users to think they can't use the extension on Windows at all.
Request
Improve the UX so Windows users are made aware they can install the extension on WSL.

Do you have any suggestions or input here?

To describe some thoughts, that may or not be applicable:
The "platform-specific extensions" have multiple variables:

OS (Windows, MacOS, Linux)
Architecture (x86 32 bits, x86 64 bits, Arm 64 bits)

Potential improvement 1
Update the message and action from The extension is not available in Visual Studio Code for Windows 64 bit. [Learn more](<hyperlink to a developer-oriented article>) to a recommendation and action that make it easy to install on WSL:

The extension is not available for Windows 64 bit. It is available for Linux 64 bit, therefore you may install it inside WSL. [Connect to WSL instance](<run the command "WSL: Connect to WSL">)

Potential improvement 2
Have a button "Install on WSL" by the side of the default one. Here is a mockup:

Potential improvement 3
Introduce a "WSL" platform to https://code.visualstudio.com/api/working-with-extensions/publishing-extension#platformspecific-extensions. It would remove the guesswork from users to have to figure out whether the Linux extension will work on "Windows through WSL" or not.
If this improvement 3 is pursued, the Potential improvement 1 could have a slightly different message:

If WSL is a supported platform: The extension is not available for Windows 64 bit natively, but through WSL only. [Connect to WSL instance](<run the command "WSL: Connect to WSL">)
If only Linux is a supported platform: The extension is not available for Windows 64 bit. It is available for Linux 64 bit, therefore you may try to use it inside WSL, with no guarantee it will work as intended. [Connect to WSL instance](<run the command "WSL: Connect to WSL">)

Thanks for your suggestions.
Have you ever considered making your extensions kind to be workspace ? This will triggers installing the extension in WSL.

@microhobby what do you think?

Have you ever considered making your extensions kind to be workspace ? This will triggers installing the extension in WSL.

If are talking about the:
"extensionKind": [
        "workspace"
    ],

Our extension is already workspace but is published with vsce package --target linux-x64 because we use binaries and commands that are available only for Linux.
The issue here is that some users do not even think that is possible to use it under WSL when see the message "The extension is not available in Visual Studio Code for Windows 64-bit.". It's the feedback that we got.

May I know what extension is this and why this is Linux only? I would love to improve the message and guide users to install remote extensions. But if it is just one such extension, I would recommend to update in your Read Me to explain about this and list the remote extensions users can install to use this extension.

@sandy081, the extension is https://marketplace.visualstudio.com/items?itemName=Toradex.apollox-vscode
I'll leave it for @microhobby to explain the technical aspects of why it's Linux only.
There are non-technical aspects, for example:

This extension goal is cross/remote development on a Linux OS with Docker Containers, the Torizon OS, for Embedded Linux systems like a Raspberry Pi.
Even if possible, we cannot support two OS. WSL was the way we found to enable Windows users.

About improving the message on Readme, we did it recently :slightly_smiling_face: I opened https://github.com/microsoft/vsmarketplace/issues/859 due to it. It's not the best, but I agree with you that it already helps.

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


Restricted tensorflow to less than version 2.0

Tested that pip install stellar graph, pip install stellar graph[demos] and python setup.py develop all install tensor flow < 2.0 under a Python 3.7 environment.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

This looks good to me! Thanks for fixing the bug 👍
Just a reminder to also add reviewers as assignees to the PR, so it shows up in ZenHub when we view our own tasks.


python310Packages.librosa: 0.10.0 -> 0.10.1

Diff: https://github.com/librosa/librosa/compare/refs/tags/0.10.0...0.10.1
Changelog: https://github.com/librosa/librosa/releases/tag/0.10.1
Description of changes

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] 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

[ ] 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
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.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.

Result of nixpkgs-review pr 254179 run on aarch64-linux 1

2 packages marked as broken and skipped:

piper-train
piper-train.dist

13 packages failed to build:

pentestgpt
pentestgpt.dist
pianotrans
pianotrans.dist
pitivi
python310Packages.langchain
python310Packages.langchain.dist
python310Packages.librosa
python310Packages.librosa.dist
python310Packages.piano-transcription-inference
python310Packages.piano-transcription-inference.dist
python310Packages.torchlibrosa
python310Packages.torchlibrosa.dist

Result of nixpkgs-review pr 254179 run on x86_64-darwin 1

2 packages marked as broken and skipped:

piper-train
piper-train.dist

4 packages failed to build:

pentestgpt
pentestgpt.dist
python310Packages.langchain
python310Packages.langchain.dist

8 packages built:

pianotrans
pianotrans.dist
python310Packages.librosa
python310Packages.librosa.dist
python310Packages.piano-transcription-inference
python310Packages.piano-transcription-inference.dist
python310Packages.torchlibrosa
python310Packages.torchlibrosa.dist

It is already included in staging-next.


[fix](index compaction) fix fd leak and mem leak while index compaction

if DORIS_TRY(inverted_index_file_readers[src_segment_id]->open(index_meta)) failed and return,
then lucene::store::Directory* stay in src_index_dirs will got fd leak and memory leak.

run buildall


What happened to camera mode?

there is no more mode property in CameraCamera()
what's the new one for this?
i wish to use mode for full screen and normal

If you used in full screen, need controller Flutter System force full screen, because CameraCamera now is widget

how?
this is my code
CameraCamera(
   onFile: (File file) async { }
)

In the old version 2.0.2 I set either normal or full screen but now, there is no clue in the doc. When this one gets triggered it is automatically in full screen.

Read this https://stackoverflow.com/questions/46640116/make-flutter-application-fullscreen

somehow im confused. isnt cameracamera a widget even before?
i didnt havent issues last i used was 2.0.2. now when i updated to 3.0.3, the mode property has been removed.
currently when i use the widget using the code above , it is full screen. why was the mode property removed? any reason?

Because widget is very easy used. And responsibilities remove status bar is your application

sorry i dont understand. is there a way to add a mode to it?


Added file for greer

This is my first pull request. I'm at Open Source Hack Night.

Welcome, Greer!


chore: don't call symmSaturate repeatedly in solve_by_elim

The symm config option for solve_by_elim results in calling symmSaturate, to add a hypothesis h_symm for every hypothesis with an applicable @[symm] lemma.
This was being run every time we wanted to apply a lemma, rather than once at the beginning! I can't think of any reason this would be necessary, and it seems horribly inefficient.

Hmm, there's a problem in Mathlib.