Use console.debug() instead of console.log() where available (e.g. browsers)

Currently debug output in the browser gets console.log()'d.
However, browsers have a console.debug() call (nonexistent in Node.js, of course) that would group all debug output into its own category, perhaps making it easier for debugging in the browser when trying to look at regular application output.
Relevant lines:
https://github.com/visionmedia/debug/blob/master/src/browser.js#L112-L114
Thoughts?

I am very new with this things. can you guide me a little how I can use debug on browser? I am using Webpack to make a Firefox addon. Any help is appreciated.

@nmccready I don't see how your response is relevant at all. We're already using console.log() everywhere. I'm simply suggesting the use of console.debug() in the browser instead, since it's available there and would allow people to better filter out log messages using inspector tools.
Since I'm not getting much intelligible feedback on this, I don't see any objections and I think it's an improvement to better match how the behavior works in the console.

console.debug() is available in Node from version 8, and would also be filterable with inspector tools if node is run with --inspect.

@targos TIL. Yeah I figured the logic would be (console.debug || console.log)(...).

Just a heads-up about this code change: by default the Chromium web console (maybe others too) filters messages at the info level which excludes console.debug(), so developers will have to explicitly activate the verbose level to see messages outputed by debug() in versions >4.1.0. I have just verified this new behaviour in an Electron app using the debug() code from the master branch (instead of the officially-release version 4.1.0).
https://developers.google.com/web/tools/chrome-devtools/console/
This is a minor breaking change, but as long as it is well-documented, this should not cause debug() users too many headaches, right?  :)

Seeing as how that's kind of how terminal applications work currently, this is fine. I was aware of this behavior when making the change, hence why it's marked for the 5.x release.

Frankly speaking, it's not a good idea. When I upgraded the package from 4.1.1 to 4.2.0, I couldn't find my debug logs until I switched to the 'user messages' category.
It's not user friendly, although that chould be Chrome's problem.

@PieerePi That is definitely chrome's problem, not ours. This library isn't built for only chrome.

Locking this as I don't think there's much more discussion to be had here.


How to Play TTS Sound while receiving blendshapes?

Hi I'm currently using get extracted animation data with synthesis completed node. For a reply that is long, for example, 100 words, you have to wait for the animation(blendshape data) array receiving for a long time then you can play the sound together with the animation.
Actually the sound could be generated much faster than a long blendshape array, so now the delay is very long in order to wait for the animation array to be generated. Is there a way that could eliminate the delay?

I wonder where is the blendshape data coming from? I thought Azure Speech only returns sound wave?
In any case, it seems your bottleneck is blendshapes generation, which understandably starts only after sound is generated. If you are using something like MetahumanSDK to create blendshape animation from sound wave, you shoud check how streaming works in it (there are demo maps that showcase it).
On a side note, sound generation from Azure Speech Services can be streamed as well, and it's recommended if response speed is critical for your project. But it's going to be tricky to feed such buffer bits to generate animations, so probably not for this use case. But could be a good idea for UEAzSpeech in general? :)

I wonder where is the blendshape data coming from? I thought Azure Speech only returns sound wave?
In any case, it seems your bottleneck is blendshapes generation, which understandably starts only after sound is generated. If you are using something like MetahumanSDK to create blendshape animation from sound wave, you shoud check how streaming works in it (there are demo maps that showcase it). This will somewhat speed up the response time.
On a side note, sound generation from Azure Speech Services can be streamed as well, and it's recommended if response speed is critical for your project. But it's going to be tricky to feed such buffer bits to generate animations, so probably not for this use case. But could be a good idea for UEAzSpeech in general? :)

The Blendshape data comes from Azure, I'm doing my own lipsync based on that data, not through MetahumanSDK. And for long paragraph, it's very common that Azure takes way longer time for blendshapes generation than soundwavs.


Missing file: install_servers.sh

~/.config/nvim/lua/alex/lang/lsp/install-servers.sh

in install.sh is not present in your nvim repository.

Oops!  I moved to mason.nvim.  I will fix that.


Fix/target temperature set

Hey @tking81 I see you closed the PR, but you are right. On set temperature I should deduct it.


Make the use of Sentry optional

At the moment sentry-dsn is a required argument

You can use this repo until they make it optional:
https://hub.docker.com/repository/docker/fsantos9/sqs2kinesis


Renaming of the project

As discussed in https://github.com/zurb/foundation-sites/issues/11577, there is some confusions with the purpose of this project regarding to its name "normalize.css". If one could argue the philosophical approach of the project is still to strictly "normalize" browsers, the is associated  by the whole CSS community to the historical necolas/normalize.css project.
The project is currently being renamed to csstools-normalize, but I'm opening this issue so we can track the evolution of this and receive comments (in case someone have a better name).
See discussions in:

https://github.com/zurb/foundation-sites/issues/11577
https://github.com/csstools/normalize.css/issues/3

Hi @ncoden, may this issue be closed, or are there some concerns I might have left unresolved?

Feel free to reach out if you have any other questions. I’ll be closing this for now.


test: GtfsLevelTableContainer class

closes #570
Summary:
This PR provides additional unit tests for GtfsLevelTableContainer.
Expected behavior:
No code change, tests should pass.
Please make sure these boxes are checked before submitting your pull request - thanks!

[x] Run the unit tests with gradle test to make sure you didn't break anything
[x] Format the title like "feat: -new feature short description-" (PR title must follow the conventional commit specification)
[x] Linked all relevant issues
~[ ] Include screenshot(s) showing how this pull request works and fixes the issue(s)~

Closing as a trivial test to avoid artificially inflating the code base.

Closing as a trivial test to avoid artificially inflating the code base.


High level view of definitions

Adding a component to the list should show users a high level view of the definition that includes:

indications of type, provider, namespace, name, and version
ClearlyDefined score
Declared SPDX License expression
Indicators as to whether or not the entry has any data at all in the system, been curated, or has outstanding contributions

this is largely done. there are a few things that need to be finalized however. Some buttons to be removed. In addition, the "Add Source" button should be changes to

be smaller (i.e., just use an icon)
have a tool tip that says something like "Add the definition for source that matches this package"

Also swap the order so the scores are always lined up on the right etc.

@Teju-Manchenella can we close this?

This is not fully complete yet according to the spec above. We still don't have all the specified indicators specifically whether a component has been curated and if there are any outstanding contributions. Everything else is completed.

Let's just tweak

the "Add source" UX and call this one done. need a good icon
clear indicator that we do not have any data (i.e., the entry there is just a stub)

Regarding the icon, ideally it would be one that says "get source" or "retreive source".
Unfornately I didn't find anything from Font-Awesome like that.
Which one should we use?
These are the different PLUS icons and a "coding icon":
fa-plus icon:

fa-plus-square icon:

fa-plus-circle icon:

"coding icon" (code-branch):

More icons here:
https://fontawesome.com/icons?d=listing&q="plus"&m=free

Using a verb (plus/add) is great but ambiguous. could be adding anything. Perhaps a noun oriented icon related to "code". So the branch (last) one is interesting. I'm leaning towards
https://fontawesome.com/icons/code?style=solid


Move the test cases in test_fan.robot to test_hardware_sensors.robot

Move the test cases in test_fan.robot to test_hardware_sensors.robot and delete test_fan.robot.

The old fan test case does not have any fan specific test cases and hence logically grouping them under hardware_sensors.robot

https://gerrit.openbmc-project.xyz/#/c/6873/


Copy link copies a PNG file rather than the gif

On hitting "save as... copy link" the data on the clipboard is just the last PNG frame and not the actual animated GIF...

Same with copy as image, but I kind of understand that.

I want to fix this bug.
Can you describe the steps to reproduce it?

It might be intended as the clipboard has a maximum size.
This occurs when you hit export and then click the copy image button on the export dialog

I'm sorry, but I can't reproduce this bug.
The Copy Image Button on the Export Dialog doesn't exist at version 2.22.1 or I couldn't find it.

Thanks for looking into this...
Just tested...

Create recording
Go to "Save As"
Select "Copy to Clipboard" as output
Got to app - in my case Mailbird, Discord or Slack
Paste

The result is a PNG plus text linking to the file.
Nick
On 02/04/2020 23:49:19, Erick Macedo Pinto<EMAIL_ADDRESS>wrote:
I'm sorry, but I can't reproduce this bug.
The Copy Image Button on the Export Dialog doesn't exist at version 2.22.1 or I couldn't find it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub [https://github.com/NickeManarin/ScreenToGif/issues/470#issuecomment-608131478], or unsubscribe [https://github.com/notifications/unsubscribe-auth/ABLE5FSSQ7CQI2H56DCAOU3RKUI65ANCNFSM4HA4EJPA].

There's two places where you can set to copy the generated gif:

The first that says "File" is the same as the "Copy" button on the second one.
The problem here is that there's no Windows API to properly add a GIF to the clipboard, with all frames.
https://stackoverflow.com/a/19823589/1735672
(I'm going to try something different)

yes I was using file, should have added that...

Both options, using "file" and right clicking the completed result yield the same outcome

So the issue doesn't have a solution at this moment, right?

Kind of. I'm going to replace the code of the File/Copy options to follow the same behavior as doing Ctrl + C with the file selected on Windows Explorer.
Also, I'm going to remove the "Copy as Image".

Closing this as not possible to fix, but with a code tweak.


Window 10 path issue

@vishaltelangre I installed music-dl in Windows 10,  it is attempting read data of package.json and it showed path issues.
C:\Users\****\AppData\Roaming\npm\node_modules\music-dl\index.js:7
const {name, version} = require('./package.json');
      ^

SyntaxError: Unexpected token {
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:974:3

@cs1193 Thanks for reporting.
I do not have a Windows machine, so really can't reproduce and fix it.
The above error is saying that it is not able to understand the ES6 destructuring assignment syntax. I suspect that the Node.js version you're using needs an upgrade or something.
Please try installing/upgrading Node.js version to 6.3 or latest and npm version to 5.0 or latest.
Another issue could be that the Windows may not be able to understand the UNIX-style paths.

@cs1193 Looks like the issue is older versions of Node.js. Check this thread - https://stackoverflow.com/a/17379714/1052356.
Please let me know if it works after upgrading the Node.js to v6.x or latest.

Closing this. Please reopen if you face it even after upgrading the Node.js version.


Gruntfile not found when opening a project via Project Manager

Not sure if this is an atom-grunt-runner issue or an atom-project-manager issue, but here it goes: When I open a project with Project Manager, the gruntfile can't be found, even though gruntfile.js is listed in the root directory of the project in the file tree.
Strangely, when I open the project without using Project Manager, i.e. by clicking on a root file or running "atom" after cc-ing to the project directory, the gruntfile is found.

I am also using the Project Manager and I have found that strange behaviour. Nevertheless, I have found a way to make it work. On my Mac I just pressed Cmd+Shift+P and then choose the task Window: Reload.
Now, every time I use the Project Manager everything works fine.
Hope this works for you guys.

Do you have to do this on every project you open or does it work after you've done it once?
I assume the problem has something to do with how we (initialise)[https://github.com/nickclaw/atom-grunt-runner/blob/master/lib/grunt-runner-view.coffee#L40] and that it doesn't trigger when you load a project from the project manager.

So far it works after I have done it once.

Wow, that makes no sense at all :D

Worked for me!

This doesn't work for me, does anyone else have the same issue?

Duplicate #10. Several issues cause Error loading Gruntfile: gruntfile not found


Add more AVX2/512 gate implementations

Before submitting
Please complete the following checklist when submitting a PR:

[x] All new features must include a unit test.
If you've fixed a bug or added code that should be tested, add a test to the
tests directory!

[x] All new functions and code must be clearly commented and documented.
If you do make documentation changes, make sure that the docs build and
render correctly by running make docs.

[x] Ensure that the test suite passes, by running make test.

[ ] Add a new entry to the .github/CHANGELOG.md file, summarizing the
change, and including a link back to the PR.

[x] Ensure that code is properly formatted by running make format.

When all the above are checked, delete everything above the dashed
line and fill in the pull request template.

Context:
Description of the Change:
Benefits:
Possible Drawbacks:
Related GitHub Issues:

This PR targets the next release (next year) :smile:

Thanks for the nice work @chaeyeunpark!

Here are benchmark results for gates (single precision)

and double precision

And there are generators:

Here are benchmark results for gates (single precision)     and double precision

Nice plots, thank you for that! I assume these are the time to call the gates and generators. But, could you please edit your posts and explain what you are showing and what each one of the colours means (Specially PI and LM)? This is important to keep people outside our squad up-to-date with our plots and benchmarks.

And there are generators:
In the legend, PI means precomputed indices (the oldest one and the reference implementation), and LM means lesser memory accesses which we currently use in most of the cases. AVX2/512 are SIMD implementations of the gates for x86_64 architecture.

Thanks @chaeyeunpark for the comparison! It will be an nice reference for both our team and our users. I would like to request to add the CPU information as well. Thanks.
Per the AVX512 vs AVX2, it looks like that AVX512 can be slower than AVX2 once the computation time is over several hundred ms, which is similar to what I observed before.

[sc-31399]

Thanks, @mlxd, for a prompt review. I just applied all the suggested changes. :+1:

Thanks @chaeyeunpark for the great job. Will approve it after all CI checks passed.

Add more AVX2 512 gates [sc-22465]

Thanks all! As @mlxd suggested, I will merge this first and update the documents in following PRs.


Update to arrow/parquet 52.2.0

Which issue does this PR close?
N/A
Rationale for this change
Now that arrow/parquet 52.2.0 is released https://github.com/apache/arrow-rs/issues/5998 let's use it
The main rationale for upgrading is that this has several additional performance improvements related to StringView that @XiangpengHao  and @a10y have been working on. It will unblock merging in the string-view2 branch: https://github.com/apache/datafusion/pull/11667
What changes are included in this PR?

Update to arrow/parquet 52.2.0
change to use non deprecated flattened_fields API

Are these changes tested?

Are there any user-facing changes?

Thanks for the review @jonahgao


[improvement](show backends) show backends print trash used

Proposed changes
When executing sql command show backends, if there's a lot of trash, users will found DataUsedCapacity + AvailCapacity is far less than TotalCapacity. They may be confused. So print used trash capacity to make them better understand.
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 48.08 seconds
stream load tsv:          529 seconds loaded<PHONE_NUMBER>9 Bytes, about 134 MB/s
stream load json:         20 seconds loaded<PHONE_NUMBER> Bytes, about 112 MB/s
stream load orc:          64 seconds loaded<PHONE_NUMBER> Bytes, about 16 MB/s
stream load parquet:          31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select:          29.0 seconds inserted 10000000 Rows, about 344K ops/s
storage size:<PHONE_NUMBER>4 Bytes

run buildall

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 46.8 seconds
stream load tsv:          531 seconds loaded<PHONE_NUMBER>9 Bytes, about 134 MB/s
stream load json:         20 seconds loaded<PHONE_NUMBER> Bytes, about 112 MB/s
stream load orc:          64 seconds loaded<PHONE_NUMBER> Bytes, about 16 MB/s
stream load parquet:          31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select:          29.0 seconds inserted 10000000 Rows, about 344K ops/s
storage size:<PHONE_NUMBER>6 Bytes


C# Support

First of all thanks for this great tool
Second: is there any possibility to add C# to the list ?
thanks

Yes, actually we are working on it as I type :-) stay tuned.

Great, eager to see update soon !
thanks

Great to hear about the C# support, has there been any progress on this?
Thanks!

@ilevine  - Any update on the C# support?
Is there any blocker on this, can we contribute?
Thanks!

I second to @radu-matei There's quite a lot of interest in having C# support and developers are willing to help. Please keep us updated.

Any update?

FYI
https://github.com/dotnet/corert/issues/541
https://visualstudio.uservoice.com/forums/121579-visual-studio-ide/suggestions/11104374-please-create-a-net-core-unikernel-nano-server-i


Get-ADReplAccount : Object reference not set to an instance of an object.

It would seem that I have run into another error on some user accounts.  When I run this command on specific users:
Get-ADReplAccount -SamAccountName TestUser1 -Domain Domain -Server Server
I get the following error:
Get-ADReplAccount : Object reference not set to an instance of an object.
At line:1 char:1
+ Get-ADReplAccount -SamAccountName TestUser1 -Domain Domain -Server Server ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Get-ADReplAccount], NullReferenceException
    + FullyQualifiedErrorId : System.NullReferenceException,DSInternals.PowerShell.Commands.GetADReplAccountCommand

Here is the stack trace:
   at DSInternals.Common.Data.DSAccount.LoadRoamedCredentials(DirectoryObject dsObject)
   at DSInternals.Common.Data.DSAccount..ctor(DirectoryObject dsObject, DirectorySecretDecryptor pek)
   at DSInternals.Replication.DirectoryReplicationClient.GetAccount(Guid objectGuid)
   at DSInternals.PowerShell.Commands.GetADReplAccountCommand.ReturnSingleAccount()
   at System.Management.Automation.CommandProcessor.ProcessRecord()

I have a few users that have this issue.  I am also getting the error if I use -All parameter and it kills the command.

I hope to have resolved it, @mattdreher . I will try to roll out a new release today. I wonder if you could please test it afterwards.

Sure thing @MichaelGrafnetter.  Just ping me through here when it is ready.

@mattdreher It's out. Fingers crossed.

@MichaelGrafnetter, Everything seems to be working properly now.  I have tried both with a single user and with the Get-ADReplAccount -All.  Thanks for your assistance.

Thanks, @mattdreher, for testing it.


spark magic should support SPARK_OPTS envar

has options for spark_submit, https://spark.apache.org/docs/2.3.0/submitting-applications.html
eg: https://github.com/apache/incubator-toree/search?q=spark_opts&unscoped_q=spark_opts

So it should not be hard to parse this variable and fill out the spark config form with its values.
But it introduces a complication that make me wonder if there is a better way.
Here’s what I mean.
The values from the Spark UI are also stored in ~/.jupyter/beakerx.json file so they persist.
So if you use SPARK_OPTS to set some values, they appear in the UI.
And they get saved in beaker.json.
Then next run, they will appear in both places.  So any further change the envar will be ignored because the beaker.json will override it, or the other way around.
Either one is confusing.
The only way I can think of working around this is to make values from the envar not editable in the UI, which seems annoying.
So I think having two sources for the configs  is a problem.
I could not find documentation for SPARK_OPTS in spark itself.  Is this envar official?
Could users instead set up their configs via the beakerx.json file?  We only just (today) provided this option.  For example here is what my beaker.json file now looks like:
{
  "beakerx": {
    "jvm_options": {
      "other": [],
      "properties": []
    },
    "ui_options": {
      "auto_close": false,
      "auto_save": false,
      "improve_fonts": true,
      "show_publication": true,
      "use_data_grid": true,
      "wide_cells": false
    },
    "version": 2.0,
    "spark_options": {
      "spark.executor.memory": "8g",
      "spark.master": "local[*]",
      "spark.driver.maxResultSize": "2g",
      "spark.executor.cores": "11"
    }
  }
}

The file has the advantage over SPARK_OPTS that it is writable.
If we really wanted we could provide a cmd line to set the file from the envar:
beakerx copy_spark_config

or something.  that would make it easy for people who had code using the envar to get access to the values but avoid the complications by making it an explicit one-off.

I missed this feature when evaluating BeakerX as a notebook for Spark cluster a few weeks ago. Storing config in beakerx.json is fine for us. I believe the standard way is to put config options in $SPARK_HOME/conf/spark-defaults.conf file.

@jarutis also writes:
for example https://github.com/jupyter-incubator/sparkmagic/blob/master/sparkmagic/example_config.json
or https://github.com/apache/zeppelin/blob/master/spark/interpreter/src/main/resources/interpreter-setting.json
or https://github.com/spark-notebook/spark-notebook/blob/master/conf/profiles

Then next run, they will appear in both places.  So any further change the envar will be ignored because the beaker.json will override it, or the other way around. Either one is confusing.

Hmmn doesn't (sane, 12-factor) convention state that environment variables override (persistent) configuration files? If SPARK_OPTS yields the same config as that in beakerx.json it's effectively a no-op and if it is different the env var should take precedence?

The only way I can think of working around this is to make values from the envar not editable in the UI, which seems annoying.

I don't think there's a need to prevent editing, we can allow edits if we don't specify --connect (by default or esp. if we notice that SPARK_OPTS and beakerx.json configs differ and possibly warn the user).

So I think having two sources for the configs could have unintended consequences.

It might but most users realize that env vars take precedence and we could explicitly document this behavior.

Does anyone but Toree use this envar?  I could not find it in spark itself.

I don't think anyone, other than ApacheToree use this env. var. The thing I like about it is that it's merely well understood/defined args to spark-submit (i.e., it's not just pure Spark --conf properties - e.g, it supports all arguments - incl. things like --py-files, --driver-cores, --driver-memory, etc., to ensure that the client mode driver has the correct settings , esp. on JVM startup).

So while it seems regrettable that Toree and BeakerX have different means of configuration, since envars are not writeable, I don’t think we can not switch to SPARK_OPTS.

Do you still feel this way after this discussion?

Could you instead set up your configs via the beakerx.json file?  We only just (today) provided this option.  For example here is what my beaker.json file now looks like:

I definitely would, if beakerx.json provides full fidelity for all arguments and properties that my be passed to spark-submit.

I think using environment variables to configure things that might reasonably vary between notebooks is asking for trouble.  It's one thing to configure "here is where to find the Spark libraries on my system" and another thing entirely to configure "here is how many executor cores I want for every Spark notebook I open".
This cries out for some kind of profile mechanism, which logically belongs at the Jupyter level.  Unfortunately, at the moment, Jupyter only offers alternative kernel specifications.

@jpallas

that might reasonably vary between notebooks

What might examples of such variability be, other than things like SPARK_HOME (or things that help locate core libraries and dependencies) vs. Spark-specific configuration, which is what ${SPARK_OPTS} would govern?

"here is how many executor cores I want for every Spark notebook I open"

Yep, this is exactly the desired and limited scope of responsibilities envisioned for ${SPARK_OPTS} since it's only controlling what is passed to spark-submit
Here's an example set of environment variables  that result in the population of  ${SPARK_OPTS} upon notebook startup, which allows Apache Toree to spin up any desired Spark configuration including making complex spark-submit invocations as easy as eval spark-submit ${SPARK_OPTS} <your job-specific spark args>

I feel like I shouldn't leave this hanging but I'm honestly more than a little confused at this point about what we are actually discussing.  Are we talking about having the BeakerX Spark support take configuration information from the SPARK_OPTS environment variable that was set when the Jupyter notebook server was launched?  Are we talking about passing the current configuration of the BeakerX Spark widget to an invocation of spark-submit from inside the notebook (through the SPARK_OPTS env var)?  Are we talking about some other thing that I haven't grasped?  Help!

Are we talking about having the BeakerX Spark support take configuration information from the SPARK_OPTS environment variable that was set when the Jupyter notebook server was launched?

Yep, just this :point_up: :smile: - the other benefits are a convenient side-effect.

+1


Plans to enable training on own audio / keywords?

Thanks for releasing this project.
I did see your comment here but thinking beyond that, do you expect to release code to let people train on their own audio / keyword data? If so, what is the expected timeframe?

I am also looking forward to it. Your results are great
I use this project to integrate my robot. It works well.
https://www.youtube.com/watch?v=EuHL3EZSrDY

Yes, we're working on that but I can't promise you an exact release date.

@mtyka - now that we're five and a half months on, is there any more clarity on a timeframe for this?


labels added, custom cmaps added also if they are not in styles

Closes #1046 second part; see discussion comment and comments below
CHANGES.md will not be updated, as it is already updated in #1055.
Checklist:

[x] Add unit tests and/or doctests in docstrings
[ ] ~Add docstrings and API docs for any new/modified user-facing classes and functions~
[x] New/modified features documented in docs/source/*
[ ] ~Changes documented in CHANGES.md~
[x] GitHub CI passes
[ ] AppVeyor CI passes
[x] Test coverage remains or increases (target 100%)

The labels are published now at the endpoint /colorbar.
All color maps are published given in the section CustomColorMaps, even if they are not used in Styles


Enhancement Request: Support Custom Error Messages in findFirstOrThrow Queries

Problem
Currently, Prisma does not support throwing a custom error directly while querying data. For instance:
private db: PrismaService;

...

const user = await this.db.user.findFirst({
  where: {
    email: payload.email,
  },
  select: {
    id: true,
  },
});

if (!user) {
  throw new Error('User not found for the provided email');
}

In the example above, I need to manually check the result and throw a custom error if the record is not found. This adds boilerplate code and reduces readability and developer productivity.
Suggested solution
It would be highly beneficial if Prisma allowed passing custom error details directly in the query itself, reducing the need for manual checks. For example:
const user = await this.db.user.findFirstOrThrow({
  where: {
    email: payload.email,
  },
  select: {
    id: true,
  },
  error: 'User not found for the provided email',
});

Benefits of This Approach:

Improved Code Readability
Reduced Boilerplate
Enhanced Developer Experience

Looking forward to a solution or feature update to address this!

Hi @prathamesh-dukare
Thanks for raising this.
This is a duplicate of this other issue. So I'll be closing this in favour of it.

Thank you @ludralph, looking forward to the resolution


Implement transition

The goal is to easily be able to implement sudden change in the timeseries.
See
https://rts-gen.readthedocs.io/en/latest/generators.html#transition
Implementing a transition smoothing is optional for the first implem
Eg:
def Transition(ts1=TImeseris, ts2, change_datetime)

ensure Transition(Transition() works correctly

or
def Transition(start=Timeseries, **transitions: Tuple[datetime, Timeseries]) ?
Make sure that it's better than:
instantiate TimeSeries generator
generate on a timeframe
update
generate on a new timeframe
And better than
instantiate TimeSeries generator
generate on the full timeframe
apply a mask

naming proposals:
switch ?  event ? OnOff

done


Cannot run all tests sequentially in protractor

I am new to E2E testing with Protractor. I have created 3 test specs. Each test spec has one describe and several it in it. I want to run all specs sequentially.
My protractor config file with specs listed like this
specs: [
'tests/../test1_spec.js',
'tests/../test2_spec.js',
'tests/../test3_spec.js'
]
When I run my protractor config file all the tests start running simultaneously.
I am not sure if my config file is wrong or something else which is triggering the simultaneous tests runs.

I tried running the protractor config using the above example but still it doesn't seem like its running sequentially.
The above example will only wait until the login is successful and it triggers the second test without waiting for the first test to finish. I need the first test to run completely and finish and then the second test should start to run.but the first and second files are in different folders.

+1


Implement 'cleanup' command, giving Msgs to run at cleanup

Allow different cleanup behavior for different exit conditions.

After long discussions with @klauer and @tacaswell (separately) I think this feature is not needed. The RunEngine already provides "hooks" for cleanup that guaranteed to be run (e.g., calling stop() on every positioner and unstage() on every device). The RunEngine gives the plans the opportunity to catch exceptions and yield some final messages from a "finally" block. Additional ways to specify cleanup do not seem necessary
Further, special 'cleanup' command would have to encapsulate a lot of information. (Which contingencies should the messages be run in? Always? Success only? Specific kinds of failure?)
Therefore, closing.


docs: improve <Icon> documentation for CSS attributes

Description

Closes #1856 and specifically this comment

This PR is an attempt to improve the documentation for the <Icon> component and making it more obvious that the component accepts for size and color any valid CSS value.

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

en
guides/components.mdx
Source changed, localizations will be marked as outdated.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

One thing on my mind recently as we expand components is that we don’t have a standard, thorough way to document the props and prop types for our components. One thought I’ve had is breaking these up into one page per component to give a bit more space to have a dedicated props section listing them with detailed descriptions.

Definitely, specially with the new components coming in. I just tried locally having all the new components documentation and the page is getting fairly big. This would also allow us to have more code snippets/examples for more props.
Maybe some page would be shorter like <Steps> but I think this would still be fine.
Do you already have something in mind for this? Maybe a new "Components" folder?

Do you already have something in mind for this? Maybe a new "Components" folder?

Yes, I think probably a Components group in the sidebar with an initial “Using components” guide followed by a page for each built-in component. The other option might be a nested “Built-in components” group below the general guide that is collapsed by default?
And then maybe research some design system documentation practices, e.g. each page structure might look like:

Brief 1–2 sentence description of the component
Visual example of the component / code (maybe inside a specially designed container to make it visually distinct)
Props reference


Hide reports where user is not participant from LHN

Details
When we introduced the ability to Search for reports on policies we did not catch that those reports would show up in the LHN. We either did not notice or did not experience this when we pushed out the change in Auth.
Anyways, the fix here is to only allow reports where you are a participant to show in the LHN.
Fixed Issues
Follow up to https://github.com/Expensify/App/issues/33571
Tests

User A: Create a new workspace
User A: Invite User B to the workspace
User B: Sign in
User A: Create a new room and connect it to the workspace that User B is a member
User A: Give the room a unique name like "pizza"
User B: Search for the room in the Search view
User B: Do not navigate to the room
User B: Close the Search page
User B: Verify the report is not shown in the LHN in either Focus mode or Most Recent

[ ] Verify that no errors appear in the JS console

Offline tests
N/A
QA Steps
Same as Tests

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[ ] I linked the correct issue in the ### Fixed Issues section above
[ ] I wrote clear testing steps that cover the changes made in this PR

[ ] I added steps for local testing in the Tests section
[ ] I added steps for the expected offline behavior in the Offline steps section
[ ] I added steps for Staging and/or Production testing in the QA steps section
[ ] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[ ] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[ ] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I followed the guidelines as stated in the Review Guidelines
[ ] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] I verified that if a function's arguments changed that all usages have also been updated correctly
[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

Putting this into draft for a sec. Might go another way.

Fixing this in Auth instead.


Provide a way to render lax-parsed SPDX expressions as valid SPXD

Is your feature request related to a problem? Please describe.
Thank you for creating such a useful library. We're using it in the CycloneDX SBOM Rust implementation. One rough edge we've come across is that we want to be able to accept mostly-correct SPDX identifiers (e.g. the "MIT/Apache-2.0" convention that's present in several crates), but we want to ensure that we're only producing valid SPDX expressions in our output, to maximize ecosystem tooling compatibility.
Describe the solution you'd like
It would be useful for the Expression type that is generated via parse_mode with ParseMode::LAX to be able to output as a valid SPDX identifier. Currently, it stores the original string and just outputs that when to_string is called. Changing the output to_string would be a breaking change, so maybe there could be an additional function named render or something similar?
Describe alternatives you've considered
Currently, we have a temporary solution that replaces / with OR, but a proper solution would be more robust.
Additional context
If this change is welcome, I might have time to implement this myself and submit a PR over the next few weeks.

I think a less invasive change would probably be to instead have a transform function exposed that can take a string and ParseMode, and just fix the string based on the settings in the ParseMode, eg. in your case ParseMode { allow_slash_as_or_operator: false, ..Default::default() would mean an all / would be replaced with OR etc, and could either be executed at all times and the resulting string handed to Expression::parse, or else attempted as a fallback if parsing fails. Right now all of the parsing errors are predicated on the original input string, it feels like adding an additional way to output the expression would make the API more cumbersome.


Data pre-processing

Is there any data pre-processing that is called after batch = next(batch_iter) on line 490 of trainer.py ? If so, where would it be?

No


Issue: first word of command printed on newline when using tmux

When hitting enter, I am seeing the first word of my command printed on the new line.
Here is a video example
and here is a picture:

What is odd, is that this issue always occurs within Tmux, and also occurs within iTerm 2 (with or without tmux). The only way i have been able to avoid it is by using the native mac terminal.
I've seen various tmux session recordings without this issue, which leads me to believe it may be an issue with one of my local configs.
Shell: zsh + oh my zsh
OS: mac OS Monterrey 12.6
PS - thanks for building this awesome tool. I'll be using the workaround for now, but wanted to help track this issue.

I replayed your recording in terminal with asciinema play and it prints "git" on the 2nd line there too. I tested on Gnome Terminal and Alacritty. So asciinema-player behaviour is consistent with popular terminal emulators our there. Given that I'm going to close this.
If you believe this extra "git" is there because of asciinema recorder feel free to re-open this at https://github.com/asciinema/asciinema


Allow a review to sort by viewed/unviewed files

Today we have three buttons at the top that affect the list of files to review:

Toggle View Mode
Refresh
Collapse All

I would like there to be a fourth option "Filter" that allows me to filter the set of files shown in the list.
Something ~ like this:

[ ] Files marked as "Viewed"
[ ] Files not marked as "Viewed"
[ ] Files with comments
[ ] Files with no comments

oh that is useful. Why is that hidden in a panel instead of being part of the "Github Pull Requests" sidebar?

It's part of VS Code's UI, not part of this extension. We are working on making the "Comments' view easier to find. In the insiders version of VS Code and the pre-release version of this extension the "Comments" view opens:

when you check out a PR at the same time that the "Pull Request" view opens.
wen you open a file with comments.

Between the Comments view and the new checkboxes in the PR view, I think the scan-ability needs of this feature request have been met without adding an additional filter.


No way to set tooltip delay to zero

Because when it gets parsed javascript interprets it as false, I'm using 1 as a workaround.
Maybe this should be fixed by changing default delay to zero? Because original bootstrap defaults to zero.

Because the nature of JavaScript and more particularly the inconsistency of setTimeout we don't/can't do ZERO, some things have to be executed in a particular order and ZERO sometimes isn't actually ZERO.
Hope this makes sense and btw you found the right solution.


Update certificates from cURL

These are the root certs from cURL. Fixed my errors with downloads, fixes #5

I didn't update this addon fo long, and it seems certificates are now included in Godot. So I guess it is possible to remove the certificate completely and fix the sll/certificates options in the projects parameters.


Enables Http Server Clustering

A very simple clustering implementation for the Amber framework.
Clustering allows the framework utilize more than one CPU core.
A cluster is a pool of similar workers running under a parent Amber
process. Workers are spawned using the fork() method of the
Cluster class.
Refactor to optimize requests processing by memoizing and pre building
pipelines, moved some methods over to context to follow law of demeter.

Adds Cluster class
Renames run method to start
run method now checks for master

YES!
I know @elorest made a PR removing binaries, can you remove them from this PR?


[url_launcher_macos] add a no-op android implementation

Adding an android/ folder as a temporary mitigation for:
https://github.com/flutter/flutter/issues/46304
https://github.com/flutter/flutter/issues/46790

Could not determine the dependencies of task ':shared_preferences:compileDebugAidl'.

Could not resolve all task dependencies for configuration ':shared_preferences:debugCompileClasspath'.
Could not resolve project :shared_preferences_macos.
Required by:
project :shared_preferences
Unable to find a matching configuration of project :shared_preferences_macos:
- None of the consumable configurations have attributes.
Could not resolve project :shared_preferences_web.
Required by:
project :shared_preferences
Unable to find a matching configuration of project :shared_preferences_web:
- None of the consumable configurations have attributes.


'base Command' is not defined

an error occurs when running the script
file "/home/my/Downloads/IDP-main/Projects/FEMShell/batch.py", line 5, in
base Command += 'export MKL_NUM_THREADS=' + numThreads + '\export OMP_NUM_THREADS=' + numThreads + '\export VECLIB_MAXIMUM_THREADS=' + numThreads + '\n'
NameError: name 'base Command' is not defined

solved with 6ad09f8e6b907b0afdff1be583abce21c4986aa1


Can't change the token

When I installed lolisafe correctly, I click the Request new token button.
But it not give me a new token, even others use the chrome extension and it will upload to my account.
Idk whats wrong.

Sorry where I can find the console?
You mean DevTool's console or log directory?

Hummm... Seems no any log include error log

When I click the Request new token button it says “Your token was changed successfully”

Yeah, that means your USER token has changed and no one can use the previous one. So I'm not sure what's the issue you are having :/

But I still can use the previous one to upload files
Sad

That shouldnt be possible. Are you sure that by using a previous token, the uploads are getting tied to your user account? You may just have public uploads enabled and the file goes through even with a bad token (which is an issue that I'll have to fix, if this is true)

It's truly. Cuz I'm using the chrome extension to upload the file right now

I'll do some tests and get back to you later.

Ok, very grateful

I got the error log
(node:24654) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 6): Error: Undefined binding(s) detected when compiling UPDATE query: update users set token = ?, timestamp = ? where token = ?

God you can‘t believe it.
When I use like ip:port to visit lolisafe, I found I can change the token.
But now, I can use all of the token, include previous and previous and previous token
(Not good at Eng, maybe I said not clearly, sorry

What is your OS?
What is your node version?

@oniyakun can you show your nginx config?

@Shumatsu
CentOS7 with node 8.9.4
Yeh, its this extension

@RyoshiKayo I'm using Reverse Proxy to make lolisafe running with the ssl, did you mean reverse proxy's config?

Yeh its nginx, you need this nginx config?

i need to see the request thats being sent to the api, i doubt nginx would scrub out a request body in any way.

If you can provide any more info feel free to re-open this.


How do you calculate available_borrow_eth, total_debt_eth and total_collateral_eth ?

Patrick hello
How do you calculate available_borrow_eth, total_debt_eth and total_collateral_eth ?
do you connect lending pool?
available_borrow_eth = Web3.fromWei(available_borrow_eth, "ether")
total_collateral_eth = Web3.fromWei(total_collateral_eth, "ether")
total_debt_eth = Web3.fromWei(total_debt_eth, "ether")
I understand that the data of  total_collateral_eth is pulled from "my aave aweth"

We get them from the aave lending pool.
The get_borrowable_data function looks like this:

def get_borrowable_data(lending_pool, account):
    (
        total_collateral_eth,
        total_debt_eth,
        available_borrow_eth,
        current_liquidation_threshold,
        tlv,
        health_factor,
    ) = lending_pool.getUserAccountData(account.address)
    available_borrow_eth = Web3.fromWei(available_borrow_eth, "ether")
    total_collateral_eth = Web3.fromWei(total_collateral_eth, "ether")
    total_debt_eth = Web3.fromWei(total_debt_eth, "ether")
    print(f"You have {total_collateral_eth} worth of ETH deposited.")
    print(f"You have {total_debt_eth} worth of ETH borrowed.")
    print(f"You can borrow {available_borrow_eth} worth of ETH.")
    return (float(available_borrow_eth), float(total_debt_eth))

And in 1 API call to Aave, we get everything:
 (
        total_collateral_eth,
        total_debt_eth,
        available_borrow_eth,
        current_liquidation_threshold,
        tlv,
        health_factor,
    ) = lending_pool.getUserAccountData(account.address)


Fix Issue #390

Copy target files into digest files if write_consistent_targets is true

I reviewed the pull request and it's ready to merge except for one thing.
Can you please update the docstring to remove mention of hard links?  https://github.com/theupdateframework/tuf/pull/398/files#diff-9f585d5478a17bd9e0f6cd5f7484ab60R1594

Sorry for not updating the docstrings. Have them updated now.

Coverage decreased (-0.001%) to 98.401% when pulling fa7d4d1c02cb61f801381416ff862539836e59f7 on FelixWang1994:develop into 8953f65bf6e9874ac23b2c04cef1a3aef204fb6f on theupdateframework:develop.

Coverage decreased (-0.001%) to 98.401% when pulling fa7d4d1c02cb61f801381416ff862539836e59f7 on FelixWang1994:develop into 8953f65bf6e9874ac23b2c04cef1a3aef204fb6f on theupdateframework:develop.


UI: single-threaded CameraView

The main purpose of the original multi-threaded version is to upload textures in vipcThread, which is no longer needed. Converting it to non-blocking, single-threaded version  can simplify the code and does not result in a loss of performance.
The single-threaded version also makes it easier to synchronize the video and uiPlan (call CameraView::receive(uint64_t preferrered_frame_id) with  the frame_id of uiPlan, It will be implemented in another pr if this one can be merged).

Oops, didn't mean to close. Nice catch that this is no longer necessary. This will need to be tested very thoroughly though since most of the onroad ui is driven by this widget.

Ready for review?

Not yet, need to clean up the code and do more testing.

@adeebshihadeh reday for review

@deanlee UI FPS appears to have regressed with this. Can you check it out? I'll wait a little bit to revert it in case it's a quick fix.

@adeebshihadeh It's a bit odd. The time required for calling cameraview::receiveFrame in paintGL is less than even 0.05ms; theoretically, it shouldn't have any impact on the FPS. Moreover, since the waiting lock between threads has been removed, the overall performance of paintGL should be better.
Did you run the replay first and then run the UI to test the value returned by fps_filter.update(1. / dt * 1000)?


Call to a member function getFileName() on null in /home/ploi/domain.com/modules/cms/classes/Controller.php:696

After update the component is causing this error
Error: Call to a member function getFileName() on null in /home/ploi/domain.com/modules/cms/classes/Controller.php:696
when i remove this in the file initbiz\seostorm\components\seo\default.htm the site is working
{% set canonical = include(template_from_string(SELF.getSeoAttribute('canonical_url'))) %}
link rel="canonical" href="{{ SELF.getCanonicalUrl(canonical) }}">

Hy, it is a cms page

@dariopetraroia
Can you provide a stack trace for the exception with as much detail as possible? Like the example of the page and its layout.
Thanks!

Exception.pdf
Hy check this report...

This error appears mostly if you use octobercms v3 and dont have a default theme in your config set.
Either set config/cms.php
    'active_theme' => env('ACTIVE_THEME', 'theme-name'),

or set
ACTIVE_THEME=theme-name

in your .env

Thanks @dariopetraroia , we will try to fix it in the next version of the plugin.

Hy, can you fix this error please?

Hi @dariopetraroia,
This issue will be solved in the newest SEO Storm in upcoming version 5.
Stay tuned.
Cheers,
Tomasz


linux-12 - Replacing old G4 phone with new Pixel phone due to battery is starting failure.

Type of Request
bug
Infrastructure Environment
LUCI, Github, Cocoon scheduler, Autosubmit, etc...
What is happening?
linux-12 - Replacing old G4 phone with new Pixel phone due to battery is starting failure.
Steps to reproduce
Step 1:
Step 2:
..
Step n:
Expected results
I expect to see X when Y is finished.

Replacing old G4 phone with new Pixel 7 phone, due to battery on old ready to burst out.


Added CODE_OF_CONDUCT.md

Fixed #220

We‘d like to hear your CODE_OF_CONDUCT , seems we already have https://github.com/aigc-apps/sd-webui-EasyPhoto/blob/main/COVENANT_zh-CN.md
If you'd like to change this convenant to a better one, you can PR to modify it with EN/CN 2version and invited us to review.
It will be my pleasure!


Cannot pause media

What version of Music Assistant has the issue?
2.0.2
What version of the Home Assistant Integration have you got installed?
2024.5.1
Have you tried everything in the Troubleshooting FAQ and reviewed the Open and Closed Issues and Discussions to resolve this yourself?

[X] Yes

The problem
I cannot pause media when using the Home Assistant MediaPlayers provider. I get the following error:

Turning off the media player from the player selection menu also doesn't work (same error). However, skipping works fine, as well as pausing and turning off the player from Home Assistant itself.
How to reproduce

Play media with a Home Assistant MediaPlayers device
Try to pause the music through the pause button or turning off the device

Music Providers
YouTube Music
Player Providers
Home Assistant MediaPlayers
Full log output
mass.log
Additional information
No response
What version of Home Assistant Core are your running
2024.5.3
What type of installation are you running?
Home Assistant Supervised
On what type of hardware are you running?
Raspberry Pi

What would be great is if you could provide the info requested by ou troubleshooting docs which you ticked that you have read. Such as:
What music provider is in use when the problem is observed? What other music providers have you tried (if you have no others then make that clear)
What player provider is in use when the problem is observed? What other player providers have you tried (if you have no others then make that clear)
How is playback being instigated (e.g. automation or via the UI)
What is working (e.g. player works with music provider X but not Y)
What you have tried from this page that hasn't helped

Thanks for your reply.
As mentioned in the original report, I'm using YouTube Music as music provider and Home Assistant MediaPlayers as player provider. Haven't tried any other providers, means I cannot tell if this happens with other music or player providers.

Playback and commands are initiated via UI.
No complex network setup for the speakers: Home Assistant and speakers are in the same VLAN and can communicate directly
Playing media itself works fine
Speakers are not grouped

Can you try other providers? We ideally want to know if this is specifically a problem with one provider or is a core issue affecting all providers
What do you mean "Playing media itself works fine"

What do you mean "Playing media itself works fine"

I can click the Play button for media (single tracks, playlists, radio stations) and it starts playing successfully, so that I can hear it from my speaker. Means, there is no connectivity issue between HA and the speakers which may block playback all together.

Can you try other providers?

I've just tried DLNA now, there I can pause music. So this seems to be an issue with Home Assistant MediaPlayers player provider.
Just for reference, the speaker I'm using is a Bose SoundTouch 10, integrated into Home Assistant via Bose SoundTouch integration.

By play button you mean the play button on the HA entity I assume.
Trying this myself I don't see your problem but I see other issues. This will get looked at in due course.

I'm seeing a similar issue which wasn't a problem before the 2.0.0 release but is now. In my case it's a chromecast device together with a radio stream from Tune-In.
Pausing the stream from within HA does work, but I can't mute. The HA interface shows an error message Failed to call service media_player/volume_mute. Entity media_player.wohnzimmer_audio does not support this service.

@robimac04 Can you also try DIFFERENT HA players and see if this affects all the HA media players you have or maybe just a specific type.

I just updated to MA 2.0.3 and this changed some things. Now I can play music from the MA interface, but it isn't showing up as playing in the lower bar at all:

It looks exactly like this, but the music is playing. If I click on the play button in the lower bar (picture), the song starts over. I can however turn off the speaker now through the speaker selection in the sidebar now (before the update, this presented me the same error as with pausing as described above).
This all happened with the same speaker entity as before (SoundTouch 10). But I've also tried that with my HomePod mini (Apple TV integration in HA), exactly the same behavior:

@robimac04 please don’t hijack this report with unrelated questions. Open your own report after reviewing the troubleshooting page. I will delete this and your post soon.

Its getting hard to follow what the issue is. This started as being unable to PAUSE a HA MEDIA PLAYER. Has that been resolved?

We will close this soon due to no follow up

Sorry for the delay. Yes, still an issue.

@robimac04 While this gets looked at further just wanted to check that you are normally using the MA Airplay provider for the Homepod Mini?

@OzGav Can confirm, media controls work as intended when using the MA Airplay provider for the HomePod mini.

@robimac04 Can you try with 2.1.0rc3?

@OzGav Sure, in 2.1.0rc3 it works as expected 👍


PHP-APC is not included to docker container

Copied from https://github.com/CachetHQ/Cachet/issues/1694

Hi I noticed that Cachet container does not has php-apcu package so if user choose APCu as cache module he would get 500 error.
Debian Sid has php-apcu deb package in official repository so we can just add this package name  in Docker file.
Your setup

I use Docker compose for version 2.2
Cachet 2.2
Database Postgres
PHP 7

Actual behaviour
Cachet not wors and generate 500 error after docker container restart.
[2016-04-07 21:29:18] production.CRITICAL: Symfony\Component\Debug\Exception\FatalThrowableError: Fatal error: Call to undefined function Illuminate\Cache\apc_fetch() in /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/ApcWrapper.php:32

Steps to reproduce
Follow docker-compose installation guide and chose APCu as cache module. Then restart docker container.

Looks like we missed this when we switched to php 7.

Taking a closer look, there is no official Debian sid package for a PHP 7 APCu module. The one linked above is for php5.

Ugh, APC with PHP 7 on Sid is painful. I am likely roll the base image back to Jessie so we can have a vendor package until PHP 7 and APC has better support.


Clean up GitHub Teams

There seem to unnecessary teams in in https://github.com/orgs/hackclub/teams
We should remove as many teams as possible (it seems like Contributors & Labs are unnecessary)
There may also be other cleanup that could be done here.

Also, can we make sure we can tag all labs leaders in the meta and hackclub repos?
I can autocomplete @JevinSidhu in hackclub but not in meta and I'm not sure why because the teams look essentially the same except contributors:
hackclub:

meta:

Okay, I've deleted the Labs team and will submit a write-up to hackclub/meta on how GitHub teams will work.

Closed by #358.


Added a new app to enable extracting JSON-LD output from a single file. The reason for this is that I frequently want to test Eidos output for a single file, and it is a pain to make a new temporary directory with a single file in it every time I want to do that. My intuition tells me that this may not be the optimal way to do it, and there is some redundancy in two places - one, in the code of ExtractFromDirectory and ExtractFromFile, and two, between the app names ExtractFromFile and ExtractFromFile2. Any thoughts? Should we keep these separate or do some refactoring?

Sorry for the insanely long pull request message - I did it from the command line, and I thought that it would split automatically.


types needs to be optimized

Describe the bug
Currently types in project have following issues:

interface naming convention are not clean. Eg: FooterData can be just Footer
types and interfaces are spread across type file and component file. Interfaces if (are) reusable and should be in a separate file. types should be in the component. Basically one clear approach should be there

To Reproduce
Steps to reproduce the behavior:

Go to project code
Click on types

Expected behavior
A clear:

naming convention
rules around where to keep types and interfaces

Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Hey @Neha I will try solving this issue. Reading your comment, just wanted to confirm Is it fine to have types in Component files & interfaces in a separate file. Do you have any more suggestion ?
I will raise a PR once I'm done with it. Thank you :)

Hello @greykoalacode , if the interfaces are reusable then they should be in a separate file.  Otherwise it would be types in the component file.
Also, when we are saying "reusable" then the names are important. So, that it would be easier to use and understand.
A few places types, and interfaces are names as FooterData, AboutData. We don't need "data" or "PurposeCards" or "navItem" - do we need to add "item" with types? .
This is not a clean naming way.
I am open for suggestions. Can you please suggest a scalable , readable, and maintable way of adding types?

I just went by this: https://docs.aws.amazon.com/prescriptive-guidance/latest/best-practices-cdk-typescript-iac/typescript-best-practices.html & as you suggested, I also feel that the Naming can be better. For eg, Footer instead of "FooterData". FooterProps instead of FooterData. Let me know if you've any ideas :)
Actually I'm not that fluent in dealing with typescript applications so I am not aware of much best practices. I'll try to keep it simple and understandable.

Hello @Neha, If This Types issue is still open the I can contribute to optimise the types issue.

@Sachin70 and @greykoalacode I would suggest you both can discuss and divide the tasks. wyt? Let me know.

As I can see, we can divide tasks as naming convention & placing them accordingly (in a separate file / within component). I could start with naming convention on a feature branch @Sachin70  could take it over and see about placing them / migrating them if needed. We can raise a PR as we feel sure about it. Is that fine?

Hey @Neha , I created a PR but I couldn't link it to this issue. Can you have a look ?
https://github.com/jslovers/jslovers-official-website/pull/93
It's my first time trying to contribute so maybe I'm missing the point of how to link issue to a PR/branch. Thank you


Disable appveyor due to perf and instability

r? @edunham @aneeshusa
We're having WAY too many problems with appveyor right now and need to get it better before I can leave it on.

This change is

@bors-servo r=me after squash delegate=larsbergstrom

:v: @larsbergstrom can now approve this pull request

@bors-servo r+

:pushpin: Commit e5d16e5 has been approved by larsbergstrom

:hourglass: Testing commit e5d16e5 with merge 2486eb0...

Would it be valuable to open a tracking issue for Appveyor bugs?

:sunny: Test successful - travis


experiments with multiple IAmazonS3 DI

Not for merging, just for discussion of approach

closing as superseded by #11


Update compatibility matrix to point to official 1.35.3 build

1.35.3-rc1 was successful, hence there is no difference between 1.35.3-rc1 and
1.35.3.
So we simply need to update the compatibility matrix.

Issue Number
ADP-2123

bors try

bors r+

bors r+

bors r+

Manually merging :face_exhaling:


add options pattern, gateway receivers, and more

Codecov Report

Merging #2 (c605450) into main (cb06e3c) will decrease coverage by 0.16%.
The diff coverage is 22.91%.

@@            Coverage Diff             @@
##             main       #2      +/-   ##
==========================================
- Coverage   50.53%   50.37%   -0.17%
==========================================
  Files          71       73       +2
  Lines        6736     6756      +20
==========================================
- Hits         3404     3403       -1
- Misses       3252     3276      +24
+ Partials       80       77       -3

Impacted Files
Coverage Δ

rest/client.go
0.00% <0.00%> (ø)

rest/options.go
0.00% <0.00%> (ø)

interactions/config.go
100.00% <100.00%> (ø)

interactions/interactions.go
33.33% <100.00%> (-1.81%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Looks good but I do think that in the future an out of tree example for the gateway dispatcher and receiver should be added or at least docs on how to write one

Those examples work just fine out of tree.  All you have to do to make them out of tree is initialize go modules in the directory.


Enable initial animation on annotations

This PR is enabling the possibility to the user to set the animation to the annotations when they are drawing at chart initialization.
It adds an options to all annotations: initAnimation.
https://user-images.githubusercontent.com/11741250/171450002-c677e11a-9f77-4d07-9a6e-cb839ff2ee94.mp4

Option
Type
Default

initAnimation
boolean |  (chart, properties, options) => void | boolean | AnnotationBoxModel
false

The callback is not invoked passing the element context (because element is not build in that phase) but receives chart, annotation options and the properties of the element (x, y, x2, y2, centerX, centerY, width, height), calculated before callback invocation.
The callback can return a boolean or an object, with the initial values of the element properties (x, y, x2, y2, centerX, centerY, width, height), needed to perform the animation.
TODO

[x] provide 1 default animation (not all modes) and a way to enable the user to customize the default
[x] provide the initial animation options at plugin level (for all annotations)
[x] test cases
[x] types
[x] documentation
[x] sample
[x] wait for #749 approval and merge

I don't know about best practices, but I'd prefer fast releases. That means trying to include all the breaking changes we think is needed and bug fixes. Non-breaking features can be postponed to next "feature"/minor release.

Great! At the moment I don't see any other breaking change to add. Hopefully I'm right but of course not sure 100%. Therefore some other days are needed, to think about. Do you think we can create new milestone 2.1.0, in order to move some PRs to that?

Sure we can :)

About CC issue. I can reduce the amount of lines (to recover 2 lines needed) but I think it could be better to split some files of types in some specific files to manage specific topic (label, callout, arrowHeads).

Label: move callout management in a specific file
Line: move label and arrowHeads management in specific files

This could be addressed by a specific PR.

I think we should switch over to sonar or something else (I don't know anything better), because some of the CC "issues" are nonsense IMO.

I'm not sure we should be providing a bunch of builtin initial named animations. I think it would be better to stick what Chart.js does (one default animation), and extend the animation configuration if needed.

Let me recap in order to understand better.
You are proposing 2 things:

to have only 1 animation configuration for the whole plugin (and not at annotation level) and all annotations are acting at the same way in a chart instance
remove all animations modes and provide a default (maybe fade that sounds better to me) but find a way in order to enable the user to enable his/her custom modes.

Have I understood well?

Let me recap in order to understand better. You are proposing 2 things:

to have only 1 animation configuration for the whole plugin (and not at annotation level) and all annotations are acting at the same way in a chart instance

Hmm, no, I don't really have any objection for annotation level animation configuration. Though it should be doable at plugin level with scriptable options too.

remove all animations modes and provide a default (maybe fade that sounds better to me) but find a way in order to enable the user to enable his/her custom modes.

This is what I'm suggesting. I'd rather have samples for some custom animations instead of built-in modes.

Sure we can :)

done!

Sure we can :)

done!

@kurkle I have changed milestone on the pending PRs (apart for #757) which can be merged before releasing version 2.0.0.
Nevertheless, before bumping to 2.0.0, there are some items to do or take a decision:

fixes the properties in animations config (label* properties still there). I'm going to submit a PR soon.
review types because I see some inconsistent definitions (like core annotations). I'm going to submit a PR soon.
#749 raises a doubt about the clip on box for label. If the proposal will be accepted, we have a breaking change and therefore another PR to add it in the migration guide is required
currently events options, commons for all annotation, are managed at root level of plugin options. Now with common node, maybe it makes sense to move over there, like all other annotation options. This would be a breaking change.
add element model diagrams in the annotation type documentation page, not only in the migration guide. I'm going to submit a PR soon.

Maybe, thinking more,  during weekend, other items will popup!

@kurkle I think I have completed the "first" imp, following your hints. I don't release this PR because it needs to be changed when other PRs will be merged (mainly the label on ellipse). Anyway, feel free to comment and review it, I'll change the impl accordingly.

Still working on animation test case...

I think we need a common way to define the initial properties for an element. My hunch would be to place those in the element defaults (scriptable, with the resolved target element properties and chart/dataset area coordinates in context)
I'd need more time with this (and I don't have it currently)

OK. I don't know if I can help you :( . I need to understand better "with the resolved target element properties and chart/dataset area coordinates in context". I'm going to try to understand, maybe with some tests.
Do you want that I close this PR or do you want to go on anyway and then, when common method will be ready, to change the plugin accordingly?

@kurkle feel free to take the decision about this PR as you prefer, nop for me. The PR is now rebased and I have applied your suggestion and ready for review.

Correct me if I'm wrong, but does initAnimations provide the starting properties for annotation animations?
If that is it, I think it could be named better. Maybe initialState would describe it better?
Or maybe it could just initialize or even init.

Correct me if I'm wrong, but does initAnimations provide the starting properties for annotation animations?

Yes , it does.

If that is it, I think it could be named better. Maybe initialState would describe it better? Or maybe it could just initialize or even init.

OK, I'll do. I have named it adding Animations because I wanted to highlight we are talking about init of animation.

If that is it, I think it could be named better. Maybe initialState would describe it better?
Or maybe it could just initialize or even init.

Renamed in init.

Needs a rebase

Merging, helpers.canvas has got 254 rows, more than 250 set by CC... :(


docker service logs stops showing logs after service restart due to any error

Description
Running docker service logs foo on a swarm  where foo is a service, whenever foo service restart docker service logs -f foo shows previous logs not the current service logs.
Steps to reproduce the issue:

Create a service foo using docker stack deploy -c foo.yml foo
Run docker service logs --follow foo_foo
Initially observe logs of the service
Then container restart due to some dependency or memory issue
Run docker service logs --follow foo
Observe old logs of the service not the current one of the service running.

Describe the results you received:
Logs of the service of first time when it start ,after restart new logs not shown.
Describe the results you expected:
Logs of latest service after restart should be shown.
Output of docker version:

Client: Docker Engine - Community
Version:           20.10.6
API version:       1.41
Go version:        go1.13.15
Git commit:        370c289
Built:             Fri Apr  9 22:46:01 2021
OS/Arch:           linux/amd64
Context:           default
Experimental:      true
Server: Docker Engine - Community
Engine:
Version:          20.10.6
API version:      1.41 (minimum version 1.12)
Go version:       go1.13.15
Git commit:       8728dd2
Built:            Fri Apr  9 22:44:13 2021
OS/Arch:          linux/amd64
Experimental:     false
containerd:
Version:          1.4.4
GitCommit:        05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version:          1.0.0-rc93
GitCommit:        12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version:          0.19.0
GitCommit:        de40ad0

Output of docker info:

Client:
Context:    default
Debug Mode: false
Plugins:
app: Docker App (Docker Inc., v0.9.1-beta3)
buildx: Build with BuildKit (Docker Inc., v0.5.1-docker)
Server:
Containers: 11
Running: 10
Paused: 0
Stopped: 1
Images: 15
Server Version: 20.10.6
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: false
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 1
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: active
NodeID: 21sivb65s84h6sum0nm5n8hn6
Is Manager: true
ClusterID: p3nlo92kiugft9uewndk2rf66
Managers: 3
Nodes: 3
Default Address Pool: <IP_ADDRESS>/8
SubnetSize: 24
Data Path Port: 4789
Orchestration:
Task History Retention Limit: 5
Raft:
Snapshot Interval: 10000
Number of Old Snapshots to Retain: 0
Heartbeat Tick: 1
Election Tick: 10
Dispatcher:
Heartbeat Period: 5 seconds
CA Configuration:
Expiry Duration: 3 months
Force Rotate: 0
Autolock Managers: false
Root Rotation In Progress: false
Node Address: <IP_ADDRESS>
Manager Addresses:
<IP_ADDRESS>:2377
<IP_ADDRESS>:2377
<IP_ADDRESS>:2377
Runtimes: runc io.containerd.runc.v2 io.containerd.runtime.v1.linux
Default Runtime: runc
Init Binary: docker-init
containerd version: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc version: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
init version: de40ad0
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 5.4.0-1051-azure
Operating System: Ubuntu 18.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 15.64GiB
Name: vunet-shipper1
ID: UMVO:WQQ2:7K4A:7H6H:BNKF:KS2H:3F7Z:USDX:2SPG:JMW6:M55D:PGWF
Docker Root Dir: /data/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
<IP_ADDRESS>/8
Live Restore Enabled: false

Additional environment details (AWS, VirtualBox, physical, etc.):
Running on azure
Linux 5.4.0-1051-azure #53~18.04.1-Ubuntu SMP Fri Jun 18 22:32:58 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Thanks for sharing the issue. If any issue in the docs, please let us know. For support, please try the Docker Forums or Slack.

https://forums.docker.com/
https://dockercommunity.slack.com/


Enhanced Efficiency in TRT-LLM through Caching of Engines

Introduction
I'm proposing a caching strategy for TRT-LLM to streamline the process of re-compiling engines after fine-tuning. This strategy aims to significantly reduce build times and improve overall efficiency. I invite the community to validate and provide feedback on the following approach. I will contribute a PR based on the feedback I get.
Requirements for Improved Caching
- Develop a robust hashing mechanism for the model pre-Engine build. This hash will play a crucial role in determining the usability of pre-compiled Engines.
- Revise the build process to prioritize checking for and refitting cached Engines.
- Introduce a schema for the cache to distinguish Engines compiled with varying TRT versions and build configurations.

Proposed Solution

Hashing The TRT Network:

Serialize the TRT network before the Engine build. Given TRT's limitations in network serialization, leverage the TRT to ONNX converter in our build scripts. ONNX's capabilities for consistent serialization can be used to generate a unique hash of the serialized model, reflecting the architecture, dtypes and plugins.

Build Script Modifications:

Update build scripts to incorporate a refit_if_cached() function between network construction and engine building phases.

Versioning and Hashing:

Create a helper function to get the TRT version within TRT-LLM for automatic extraction. Serialize and hash the Builder class's arguments to structure the cache logically, such as TRT_version/Hash(Network)/Hash(BuilderConfig).

Anticipated Benefits

Efficiency in Tensor Parallel Inference: By building the first shard and refitting for subsequent ones, we can expedite serial builds, achieving speeds comparable to parallel builds and facilitating quicker builds on less powerful machines.
Time-Saving in Re-compilations: Post fine-tuning, this approach can bypass the entire build process by refitting the cached Engine, leading to a substantial time reduction (up to 40% faster in cases like llama2-70B) compared to rebuilding from scratch.

Points for Community Discussion

Dependency on ONNX: The current TRT → ONNX → HASH sequence introduces a dependency on ONNX, which might not support newly implemented TRT layers. Is there a way to bypass ONNX and serialize a TRT network directly to a string? Does TRT provide any serialization helpers? When iterating over layer inputs/outputs, does TRT maintain a consistent order?
Robustness of Cache Structure: How robust and consistent is the proposed cache structure theoretically? Are there additional inputs or options or environment variables in the TRT Builder class that should be hashed for consistency? Could the version of TRT-LLM or other dependencies influence the Engine Build outcome if the Hash(TRT Network) and Hash(tensorrt_llm.builder.BuilderConfig) remain constant?

I look forward to the community's insights and suggestions to refine and enhance this proposal.

Where can i get this code

Hi @Lokiiiiii
Thanks for the comments and proposal. Since TRT-LLM evolves so quickly, adding features and optimization techniques on almost every release. The current focus is trying to provide best performance.
We may consider this feature compability in the future. You could try to use model cache to see if it can solve the needs for you.
Also, TRT-LLM is investing the quick compilation.
Thanks.
Tao


Provide Debian Jesse install instructions

Works for llvm-3.8 both debug and release versions.

I tested with switching to llvm-3.7 from llvm-3.8 and that works as well.


Non registered settings are read from default profile when a custom profile is active

Steps to Reproduce:

Set "workbench.panel.showLabel": false setting in default profile
Open a new window, create a custom profile and make that profile active

🐛 Panel shows with icons. Above setting is read from default profile even though it is not an application scope setting

This fix broke the remote SSH scenario - https://github.com/microsoft/vscode/issues/232602 - Hence reverting this. Fixing this require https://github.com/microsoft/vscode/issues/224236 to be fixed.

Looks like "workbench.panel.showLabels" is a registered setting now.

Verified with   "githubPullRequests.experimental.notificationsScore": true.


docs: DIA-403: Create user docs for Data Discovery

Data discovery docs for PP. These will not be available in the side bar, will need to view at links:
dataset_search
dataset_manage
dataset_create

/git merge develop


Pause the app on incoming calls

Hi,
Is there any way to pause the player whenever a call is incoming? Also, not just that but anything such as Youtube or any other app that would override the sound in order to stop it.
Thank you.

Which platform? Android, iOS or UWP?

We have facing issue in Android 8.0.

@Guichaguri  I am listening to all events.
At the time of removing earphone jack not events fired while on plugin jack getting pause event fired  in IOS.

@Guichaguri
So basically there are 2 major issues with track-player version "0.2.5" which we want urgently either fix or any other way to handle these:

In android on receive call player pause but on call disconnect no events to resume audio play. Same thing working fine in IOS.

On IOS while eject earphone jack not getting any event to pause audio but OS pause audio but app state shows in play mode. Same thing working fine in Android on eject jack it fires remote-pause' event.
Please help in this

This should be fixed in 1.0.1.


Readme variable prometheus_binaries_local_dir

What did you do?
I run command playbook with this role  with variable "prometheus_binaries_local_dir" but it seems playbook could not complete. This need to be done since my environment is located on air gapped network.
Did you expect to see some different?
I expect the playbook complete to install prometheus to the remote host
Environment

Role version:
Insert release version/galaxy tag or Git SHA here

Ansible version information:
ansible 2.9.2 config file = /etc/ansible/ansible.cfg configured module search path = [u'/home/deploy/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python2.7/site-packages/ansible executable location = /usr/bin/ansible python version = 2.7.5 (default, Aug  2 2016, 04:20:16) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)]

Variables:

---
- name : Deploy prometheus
  hosts: ams
  roles:
  - cloudalchemy.prometheus
  vars:
    prometheus_version: 2.17.0
    prometheus_binary_local_dir: /data/monitoring/prometheus/
    prometheus_db_dir: /apps/prometheus/database
    prometheus_targets:
      node:
      - targets:
        - localhost:9100
        labels:
          env: ams

Ansible playbook execution Logs:

PLAY [Deploy prometheus] **********************************************************************************

TASK [Gathering Facts] ************************************************************************************
ok: [camelia-ams]

TASK [cloudalchemy.prometheus : Gather variables for each operating system] *******************************
ok: [camelia-ams] => (item=/etc/ansible/roles/cloudalchemy.prometheus/vars/redhat.yml)

TASK [cloudalchemy.prometheus : Assert usage of systemd as an init system] ********************************
ok: [camelia-ams] => {
    "changed": false,
    "msg": "All assertions passed"
}

TASK [cloudalchemy.prometheus : Get systemd version] ******************************************************
ok: [camelia-ams]

TASK [cloudalchemy.prometheus : Set systemd version fact] *************************************************
ok: [camelia-ams]

TASK [cloudalchemy.prometheus : Assert no duplicate config flags] *****************************************
ok: [camelia-ams] => {
    "changed": false,
    "msg": "All assertions passed"
}

TASK [cloudalchemy.prometheus : Assert external_labels aren't configured twice] ***************************
ok: [camelia-ams] => {
    "changed": false,
    "msg": "All assertions passed"
}

TASK [cloudalchemy.prometheus : Set prometheus external metrics path] *************************************
ok: [camelia-ams]

TASK [cloudalchemy.prometheus : Fail when prometheus_config_flags_extra duplicates parameters set by other variables] ***
skipping: [camelia-ams] => (item=storage.tsdb.retention)
skipping: [camelia-ams] => (item=storage.tsdb.path)
skipping: [camelia-ams] => (item=storage.local.retention)
skipping: [camelia-ams] => (item=storage.local.path)
skipping: [camelia-ams] => (item=config.file)
skipping: [camelia-ams] => (item=web.listen-address)
skipping: [camelia-ams] => (item=web.external-url)

TASK [cloudalchemy.prometheus : Get all file_sd files from scrape_configs] ********************************
ok: [camelia-ams]

TASK [cloudalchemy.prometheus : Fail when file_sd targets are not defined in scrape_configs] **************
skipping: [camelia-ams] => (item={'value': [{u'labels': {u'env': u'ams'}, u'targets': [u'localhost:9100']}], 'key': u'node'})

TASK [cloudalchemy.prometheus : Alert when prometheus_alertmanager_config is empty, but prometheus_alert_rules is specified] ***
ok: [camelia-ams] => {
    "msg": "No alertmanager configuration was specified. If you want your alerts to be sent make sure to specify a prometheus_alertmanager_config in defaults/main.yml.\n"
}

TASK [cloudalchemy.prometheus : Get latest release] *******************************************************
skipping: [camelia-ams]

TASK [cloudalchemy.prometheus : Set prometheus version to {{ _latest_release.json.tag_name[1:] }}] ********
skipping: [camelia-ams]

TASK [cloudalchemy.prometheus : Get checksum list] ********************************************************
fatal: [camelia-ams]: FAILED! => {"msg": "An unhandled exception occurred while running the lookup plugin 'url'. Error was a <class 'ansible.errors.AnsibleError'>, original message: Failed lookup url for https://github.com/prometheus/prometheus/releases/download/v2.17.0/sha256sums.txt : <urlopen error timed out>"}

NO MORE HOSTS LEFT ****************************************************************************************

Anything else we need to know?:
I realized that in Readme File, you put the variable as "prometheus_binaries_local_dir" while in defaults/main.yml, the correct value is prometheus_binary_local_dir. Once I update my playbook file variable accordingly, it successfully complete. Does the Readme need update?

Yes, readme needs an update, the correct variable name is in defaults/main.yml

Fixed with #280


restore-file doesn't work after Ajax

Please ensure:

[X] The bug is caused by Refined GitHub. It doesn't happen if I disable the extension.
[X] The bug happens after clearing extension cache. The "Clear cache" button below can also be found at the bottom of the options page.

Example URLs
https://github.com/refined-github/refined-github/pull/5605/files
Extension version
22.4.1
Browser(s) used
Safari
Description
I can never use restore-file until I refresh the page. I assume the repro is:

Open https://github.com/refined-github/refined-github/pull/5605
Go to Files tab
Look for "Restore file", it's missing
Refresh
It's there

https://user-images.githubusercontent.com/1402241/164187430-9d3af861-de74-43d8-9346-44444f92cc6b.mov

This is probably a de-duplication bug, as it affects every feature that acts on the "Files" tab, e.g. linkify-code:

Open https://togithub.com/refined-github/refined-github/pull/5541
Go to "Files" tab
Issue references are not linkified
Reload: they are


[WIP] Support Multipart mime message

Work-in-progress. Please do not merge
Originally comes from https://github.com/coreos/ignition/pull/862 .
Added AWS provider on top of that.
/cc @vbatts @t-lo

and cc @iaguis as he was mulling on a way to fetch this user-data before ignition runs.

It seems on upstream has closed the issue about this. Openstack now supports Ignition just fine it seems. I wonder if we would still need this.

All right, will close.


Demo: Inconsistent Search Case Sensitivity

Title: Make search functionality case-insensitive
Description:
Currently, the search functionality in the search() method is case-sensitive. This causes inconsistent search results when users enter a search term with a different case than the stored names or descriptions. To improve user experience, the search should be made case-insensitive.
Steps to Reproduce:

Go to the search field.
Enter a term with uppercase or mixed case (e.g., Toast).

It won’t match.
Ex:
https://github.com/user-attachments/assets/80fda7b1-f2ae-4277-8fad-0eff89b9c077
Expected Behavior:
The search should return results regardless of case (e.g., entering ToaSt or toast should return the same result).
Suggested Fix:
To make the search case-insensitive, both the search term and the form’s name and description should be converted to lowercase before comparison.
Relevant Code:
In the search() method:
String st = textSearch.getText().trim().toLowerCase(); // Convert search term to lowercase

Ensures both the search term and the fields being compared (s.name(), s.description(), etc.) are converted to lowercase for comparison.
Additional Context:
But I guess that the text string that is compared to st is the description of the Form. If I'm correct in this case, it'd be better if we can search from both title and description.

Thank again :)


NEW: Allow automated min_version based on end-of-life dates

Allows the user to choose 'EOL' as the minimum python version. This uses the API from endoflife.date to determine the oldest version still supported.
Also, adds a missing license text.
Closes #3

I'm not sure what pre-commit is supposed to be doing, so I don't know how to fix the failing lint test.

Thanks @carterbox, this looks good to me. I'll fix the linter job :+1:


[4.x] fixing table headers when not using responsive table

It's an attempt to fix column headers when responsive table is disabled.
refs: #3138

A new inspection was created.

The inspection completed: 1 new issues

Hmm @pxpm have you tested this with

[ ] bulk buttons
[ ] details_row
[ ] both bulk_buttons and details_row
[ ] neither bulk_buttons nor details_row

I believe that blank first column is crucial for one of the use cases above.

Sorry I haven't noticed that columns are still not well aligned.
See the image
It fixes the issue fine.
The only little thing I notice is that the checkbox for bulk operations is not centered in the column, but I don't think it is a big deal

closing this in favor of: #3331


Fixed minor layout issue in FAQ

Hi, can you give us a Signed-off-by line?  CONTRIBUTING.md talks about the syntax and the meaning of this line.

Closing after no response from poster in months.

This licensing thing is really going to far... The proposed patch literally does not contain any (new) text at all, let alone something that is considerable under copyright law as a "creative work".

This licensing thing is really going to far... The proposed patch literally does not contain any (new) text at all, let alone something that is considerable under copyright law as a "creative work".


BigUint should have count_ones() and similar methods

I needed BigUint::count_ones() for a project, so I implemented it in terms of to_u32_digits().
fn count_ones(b: BigUint) -> u32 {
    b
        .to_u32_digits()
        .into_iter()
	.map(|d| d.count_ones())
        .sum()
}

But now I'm relying on the optimizer to clean up my code, plus the implementation should probably return u64 because it's pretty easily possible to have more than 4 billion ones in a BigUint so it's buggy. :-)
I'd be happy to put together some kind of pull request if there's some interest in one.

The iterators in #158 will at least let you do that without creating a temporary Vec, but there will still be some translation from the internal digit size, which is extraneous for your task. Internally iterating self.data would be ideal, so yes, I'm open to a pull request for BigUint::count_ones(&self) -> u64.
A harder question is whether we should do anything for BigInt, since negative numbers conceptually have an infinite prefix of 1s in twos-complement (though we store sign+magnitude). We could count ones in the magnitude instead, but I think it would be unfortunate to have such different semantics from iN::count_ones. I suppose folks can use bigint.magnitude().count_ones() if that's what they want.
RE: "and similar methods": For count_zeros, I guess we could define that as only counting less than the MSB 1. For leading_zeros we'd have the same problem of the infinite prefix, but BigUint::leading_ones should be okay. We do have trailing_zeros already, and fortunately that is even consistent between twos-complement and the magnitude. I think that would be mostly true for trailing_ones too, but BigInt == -1 would need to be an exception.

It's not true for trailing_ones, e.g. (-3).trailing_ones() == 1 while 3.trailing_ones() == 2.

@tczajka Ah, you're right, of course. We can still do BigUint::trailing_ones easily, but we'd have to take care with BigInt.

I think leaving BigInt out for now is probably the path of least resistance. Given that BigInt is sign-magnitude the users can do what they want after the essentially-free conversion to BigUint.
Should count_ones() return u64 or usize? I could make the case either way: neither is ideal. We could make it return BigUint but that seems needlessly silly for most applications…
I'll try to get a PR together. Thanks much!

I feel like leading_ones() is not all that useful the way I have implemented it. What is really wanted, I think, is the number of significant_bits() — that is, 1 + position of leftmost 1-bit in the BigUInt. That's what's needed for things like log2(). I can't think of any relevant leading_zeros() measure for BigUInt.

BigUint::trailing_ones() requires Rust 1.46 or later, but this library is required to compile with Rust 1.31. I stuck trailing_ones() behind an off-by-default feature; advice on how to proceed appreciated.

I gave a comment on the PR about trailing_ones, which I think we can simply avoid, but generally I use my own autocfg crate in the build script, probing for features rather than hard-coding versions.

Sounds good, thanks.

Thanks for merging #175 !