songLyrics extension

Seeks to implement https://github.com/opensubsonic/open-subsonic-api/discussions/60
The representation is slightly different (lyricsList > structuredLyrics), but I believe that should be friendlier for XML (and also differentiate from the existing lyrics object)

Can you add example XML as well at least in the PR description? Going forward I think we should have example XML output for all the OpenSubsonic responses as well but that can be a separate task

I believe we want a doc in the Endpoints directory too, the title postfixed with [OS] to identify it as an OpenSubsonic endpoint

As @dweymouth said the extension page just define the extension names and what they enable with link to the actual endpoints / responses see https://deploy-preview-62--opensubsonic.netlify.app/docs/extensions/template/
This is done like that, because an extension can include 3 endoints for example and 3 changes to current end points this will be a mess to have all the in the extension directly.
structured-lyrics shoud be camelCase so structuredLyrics. Except the "subsonic-response" every other field respect that.
We should also expose an offset value at the root of structuredLyrics
See offset https://en.wikipedia.org/wiki/LRC_(file_format) that exist in LRC format.
In structuredLyrics I do not think
          "artist": "Muse",
          "artistId": "1234",

makes sense anymore as it's not OpenSubsonic multiple artist / album artists style.
I would only return a displayArtist value and since we request by songId I would return it too so that client can ensure they get the correct one.
And lastly since we can expose multiple lyrics the title value is maybe not clear enough that it's the song title and not a title value for the lyrics specially when LRC files can have a title tag that may not match the actual song title as may be tied to the song language.
I'd say songTitle and lyricsTitle fields if we want to expose both.

@kgarner7 there's should not be different kind of OpenSubsonic example tabs since the responses must be always the same.
The differences must be based on parameters optional or not.
The different parameters optional or not and the documentation must be enough to clear any doubts.
But the example should always cover all fields to be able to build code from it for clients with strict answers handling.
Unfortunately due to the mess of Subsonic API we can't publish a proper schema that would help, so the doc is the schema.

@Tolriq I'm not sure what you mean by not having different OpenSubsonic tabs as it seems we've already done this in production: https://opensubsonic.netlify.app/docs/endpoints/getalbum/
I think the value is to show what things were added in the OpenSubsonic response compared to the legacy one, but you're right that it should be backward compatible, so if we want we can not have separate tabs for Subsonic and OpenSubsonic and just do separate tabs for JSON and XML. But if we want to go this way, we should clean up the docs already in production and get rid of the OpenSubsonic tabs

Check the page before ;)
He added 2 OpenSubsonic Json and 2 XML ones. There should be only one.
I wrote a long text to explain why.

Check the page before ;)
He added 2 OpenSubsonic Json and 2 XML ones. There should be only one.
I wrote a long text to explain why.

my bad

@kgarner7 there's no need for multiple examples, the doc explains all that is needed. All the other pages don't show all the possible variations with the optional fields, this makes it hard to read and generate a schema in client apps.

@kgarner7 there's no need for multiple examples, the doc explains all that is needed. All the other pages don't show all the possible variations with the optional fields, this makes it hard to read and generate a schema in client apps.

With all due respect, I think it is important at least for structured lyrics to show that it must either be all synced lines, or all unsynced. If you have a better way of phrasing that that doesn't show both variants, then please go ahead

@kgarner7 the example field is supposed to be a valid JSON, by putting 2 JSON in it this is no more valid JSON and it makes it hard to read and understand.
A schema is a schema and we do not support nor want to embrace polymorphism. So while it's not recommended the API and the schema does not prevent a synced lyrics to not return start (And you embrace that in the doc by saying it's assumed it's 0 ...)
And nothing prevent an unsynced lyrics to provide start, the client should just ignore the value as assumed it's wrong.
The documentation about the field should be enough. Double examples does not bring anything here and just makes things harder and the doc less clean.
Specially when you say it should be present for structured lyrics when the only change that actually occurs is in line part.
And your doc saying "The start time of the lyrics, in milliseconds. If this is not part of synced lyrics, start must be omitted" is quite clear.
So sorry but again no there's no need to duplicate the examples.
See https://deploy-preview-62--opensubsonic.netlify.app/docs/responses/contributor/ there's only 1 example covering all the fields. Not multiple ones to show when the subRole should not be added, or a special TIPL one. The doc covers everything.

@kgarner7 your wording is already very clear. Can you please update the PR without the duplicated comments so we can merge this?

I think this is pretty solid and uncontroversial - we just need a @opensubsonic/servers approval and this one can be good to go

Maybe we should give @deluan a chance to weigh in on this before merging since Navidrome is currently the OpenSubsonic server with the richest lyrics support

I don't see a reason why we need to parse and transform the lrc file into a structured json/xml, I think it adds complexities for both servers and clients, but if you guys see value in it, I'm good ok with that.

I think there is a lot of value in that - first and foremost it makes it clear to the client whether lyrics are synced or unsynced

I did just think of a complication though - if the language of lyrics are unknown what should be the server behavior @kgarner7 ? I would think unknown language lyrics should be returned if the server can't return lyrics known to be in the requested language, and leave the lang property as empty string on the returned lyrics object

I did just think of a complication though - if the language of lyrics are unknown what should be the server behavior @kgarner7 ? I would think unknown language lyrics should be returned if the server can't return lyrics known to be in the requested language, and leave the lang property as empty string on the returned lyrics object

My understanding from the ID3v2.4 spec is that the language is a required part of the tag itself (they all have Language  $xx xx xx). This should follow the ISO-639-2 spec, but I have also seen (and I believe most of my lyrics are) XXX. Not sure what to do about non-ISO language codes (I was expecting the query to just be by language code itself, which should be unambiguous).

Is lang required in .lrc files as well? I have a few albums that have lrc files, I guess I should take a look, though I'm away from having access to my server for awhile

Ah, no; I was just thinking of tags. While you can add tags to lrc file, not required (and if a server reads a txt file, those are definitely not tagged). Not sure about how to handle that. XXX/Unknown?

I think there is a lot of value in that - first and foremost it makes it clear to the client whether lyrics are synced or unsynced

I don't think this is enough reason to not use the LRC format, which is already structured and probably has libraries to support it in various programming languages. This would simplify clients that want to retrieve the lyrics from some online source directly (or from the local file system): They wouldn't need to implement two parsers.
For disambiguating between sync and unsynced, a field in the response payload would suffice, no?
Again, I'm late to the party and just giving my two cents. I'm ok with whatever was discussed and decided (specially because @kgarner7 will do the implementation ;) )

I would propose either "xxx" or empty string for unknown language. And also that the server should always include an unknown language result if it doesn't have a result matching the requested language(s). Then the client can decide if it wants to display it anyway or try its own sources if it has implemented external fetching

I think there is a lot of value in that - first and foremost it makes it clear to the client whether lyrics are synced or unsynced

I don't think this is enough reason to not use the LRC format, which is already structured and probably has libraries to support it in various programming languages. This would simplify clients that want to retrieve the lyrics from some online source directly (or from the local file system): They wouldn't need to implement two parsers.
For disambiguating between sync and unsynced, a field in the response payload would suffice, no?
Again, I'm late to the party and just giving my two cents. I'm ok with whatever was discussed and decided (specially because @kgarner7 will do the implementation ;) )

Some reasons why I proposed using the Jellyfin format:

timestamp is unambiguous (I've seen issues where the "format" is [mm:ss.xx] but some sources return [mm:ss.xxx]; I guess we could be very strict here)
makes newlines a bit easier (I guess the correct way in XML would be
 for both synced/unsynced)
I guess if someone supports both clients makes parsing more consistent

I don't really mind between Jellyfin format and text/LRC (with proper newlines for XML...). But if we do LRC, we must be strict on whether [mm:ss.xxx] or other formats are supported for the timestamp.

Some reasons why I proposed using the Jellyfin format:

Ah, I didn't know this was an already used format. Then that makes total sense! Sorry about the noise :)

Yeah, the line format is inspired by https://github.com/jellyfin/jellyfin/pull/8381
For lyrics, I think that if tags require 3-character lyrics, I would prefer storing lyrics with XXX. I guess the question then is, are we expecting the lyrics to actually abide by ISO standard? As far as I can tell, this is the last thing

We need to be agnostic to where the lyrics come from (tags, lrc files, Genius, etc) and that means we need to clarify and support the case of lyrics with unknown language

The common value is xxx when unknown for most cases.
And @deluan Emby and Plex also return structured data, this is actually a lot easier to handle than manual LRC parsing and all the edge cases + this allow support for other sources for the server that are not LRC files and avoid the need for the server to convert to a limited format.

@kgarner7 I think we just need to add then that unknown language lyrics are tagged "xxx" and should be returned if no lyrics for one of the requested languages are available.

@kgarner7 I think we just need to add then that unknown language lyrics are tagged "xxx" and should be returned if no lyrics for one of the requested languages are available.

Makes sense! Are there any other concerns by anyone else? I'd like to make this the last time we have to commit/get approval if possible. @dweymouth @Tolriq @deluan @gravelld (apologies for the pings)

You are very very far from what I had to do on the big PR :p
To avoid future remarks or discussion, maybe add a note somewhere that this is related to all lyrics kind (tags, external lrc files, external sources, ...)

Yes, but I am trying to do things right here (probably should've pinged servers in the original discussion I guess...).
Agree on the second point, and I think an important clarification should be that servers must/should (not sure how strong to be here) be able to support multiple lyrics of the type (synced/unsynced) and language. For file tags this will never be an issue, but if servers support tags and external files/sources then you could have duplicates.
Alternatively, if we want to require only one, per language, can just say something like

Servers must only have one lyric per type (synced/unsynced) and language code (including XXX/Unknown) combination. Selecting between duplicates is left as a server implementation detail.

No I don't think there should be any limit.
The user can put a few LRC files and test to find the proper one, faster if he sees the list than changing files everytime.
Something I do quite often with subtitles.

As it turns out, there is a specific code und (per https://www.loc.gov/standards/iso639-2/php/code_list.php) for unknown language, so that is the appropriate one.

If you change from xxx you must add a note that xxx should be replaced with und by the server. xxx is the defacto standard and what ffmpeg use when transcoding for example. So it will be present in many places.

.-. I guess, an alternative would be to treat both und (actual standard) and xxx as the special "undefined"/"unspecified", so if the server does not have a match but has one of these two it will return them, and then default to setting xxx. Or just converting und -> xxx.
If people have recommendations/solutions, please share them (maybe make a discussion so it threads easier?). I would like a sane solution that isn't too onerous on the server, but can (in theory) enable clients to use iso codes -> language where possible.

Honestly at this point since this is for a single song anyway and people having multiple lyrics with different languages are being the exception I would say that we drop the filter, return all and the clients deals with it.
That's the simplest for the servers and not really complicated for the clients to handle.

@epoupon @sentriz would be nice to have another server validation then I merge.

Hello!
I have a question on this.
If we have a LRC file containing:
[00:01.30]First line
Second line
[00:05.30] Third line

Are we supposed to have:
"line": [
            {
              "start": 1300,
              "value": "First line"
            },
            {
              "value": "Second line"
            },
            {
              "start": 5300,
              "value": "Third line"
            }
          ]

or:
"line": [
            {
              "start": 1300,
              "value": "First line\nSecond line"
            },
            {
              "start": 5300,
              "value": "Third line"
            }
          ]

According to the docs, I don't know. According to discussions here I would say likely option 2

Have you ever seen such file?
Most of the parsers just ignore the lines that do not have a valid time at the start to filter the headers and other comments sometimes present.

I don't know what is the correct answer, but my server does what @Tolriq said and ignores the lines with no timestamp tag.

At this point, I don't remember the history but Navidrome does the second option (supporting multiline lyrics if there's a timestamp before).


More robust __cplusplus check

Similar to the same check done a few lines above for c++17

您的邮件我已收到，谢谢合作！


Missing log messages during pod startup

The deis logger misses messages that appear during pod startup until the logger starts tailing the container log.
The reason appear to be that read_from_head false is set in the source definition, even though a pos_file that's persisted on the host in /var/log/containers.log.pos is used.
Changing this option to true should solve the issue.
See deis/logger#130 and http://docs.fluentd.org/articles/in_tail#readfromhead for more info.

I've built a test image quay.io/felixbuenemann/fluentd:git-7fb4691 with this change and will test it on one of my clusters.


Gray Coding

I checked out 16-QAM modulation and saw that the constellation is not using gray coding. My question is that will be available in next versions?

Indeed the constellation are at the moment the most basic one. Gray coding could be included in the next version or not. We don't have any precise plan. Added features depends mostly on the PR that we receive. Feel free to have a look to add this, I'll be happy to assist you on this.


Add support for InputStream

Fabrikt already offers support for ByteArray, but when dealing with large files, for example, the usage of ByteArray puts too much pressure in memory.
This MR provides BYTEARRAY_AS_INPUTSTREAM. A new --type-overrides that allows to provide an InputStream when dealing with binary data.

Thanks for the contribution. It'll be Monday before I get to look at this. Unless @averabaq can handle it before then

This is a good one that's been on the radar for some time. I'll try to put some eyes on it over the weekend. Thank you so much for this @ctasada

The server side code-generation looks good to me, no objections on this. On the client side, however, the code generated is incorrect:
    public fun postExample(
        applicationOctetStream: InputStream,
        additionalHeaders: Map<String, String> = emptyMap(),
    ): ApiResponse<Unit> {
        ...

        val request: Request = Request.Builder()
           ....
            .post(objectMapper.writeValueAsString(applicationOctetStream).toRequestBody("application/octet-stream".toMediaType()))
           ....
    }

Supporting streaming on the client side is not that simple. This is only for OkHttp and we also have support for OpenFeign. Since this is a new feature and not a breaking change, I wouldn't mind to go ahead with this, but we should either:

Allow input streams on the models for now and resolve to byte-arrays on request bodies regardless.
Don't allow input streams on client-side generation at all (i.e. ignore the byte_array_as_input_stream cli option)
Add full stream support on client side.

I can't proceed as is, sorry. Let's see what @cjbooms thinks about it  next week.

The server side code-generation looks good to me, no objections on this. On the client side, however, the code generated is incorrect:
    public fun postExample(
        applicationOctetStream: InputStream,
        additionalHeaders: Map<String, String> = emptyMap(),
    ): ApiResponse<Unit> {
        ...

        val request: Request = Request.Builder()
           ....
            .post(objectMapper.writeValueAsString(applicationOctetStream).toRequestBody("application/octet-stream".toMediaType()))
           ....
    }

Supporting streaming on the client side is not that simple. This is only for OkHttp and we also have support for OpenFeign. Since this is a new feature and not a breaking change, I wouldn't mind to go ahead with this, but we should either:

Allow input streams on the models for now and resolve to byte-arrays on request bodies regardless.
Don't allow input streams on client-side generation at all (i.e. ignore the byte_array_as_input_stream cli option)
Add full stream support on client side.

I can't proceed as is, sorry. Let's see what @cjbooms thinks about it next week.

Option 2 sounds good to me. Allow it on server-side generation only

What is need to get this across the line @averabaq ? Could it be merged as is with the configuration option as protection against the client side generation being incorrect?

Could it be merged as is with the configuration option as protection against the client side generation being incorrect?

Yes, I didn't make it go through because I was waiting for getting a PR ready with the required changes, but haven't had the chance to work on it


Allow shell/script to change cursor based on escape sequence

Terminus forces a specific cursor style despite the shell (or programs running in it like vim) specifying a different escape sequence.
Some vim users for example (me included) like to have a block cursor in normal mode, an I-Beam cursor in input mode and the underscore cursor in replace mode - terminus ignores all these escape sequences and forces the app to use the cursor selected in settings
Version: Alpha 77
Backend: xterm
Vim Version: neovim 0.3.4-2

This works as intended when using ConPTY and xterm on the latest alpha 78


Add LitmusChaos: A cloud-native chaos engineering tool

This issue is a:
[ ] Bug Report
[ ] Enhancement suggestion
[*] Feature request
If the issue concerns an existing Marketplace application, please tag the maintainer of the application (found in manifest.yaml) below:
Enhancement suggestions / feature requests
If you are requesting an enhancement to a feature already present, or a new feature, please outline below the feature you would like to see, and how it would benefit you and the wider Civo Kubernetes userbase:
Bug Reports
If the issue is a Bug Report, please detail the following:

Expected behaviour
Encountered behaviour
The steps to recreate the behaviour that you are reporting

If you have logs or screenshots, please include them below.

We will get this added soon

The installation manifest is here.
A recent article by @saiyam1814 around running litmus chaos experiments on civo cloud: https://www.civo.com/learn/chaos-engineering-kubernetes-litmus

Closing as we have it in the marketplace now!!
https://github.com/civo/kubernetes-marketplace/tree/master/litmuschaos


New convention to declare gap gas fractions

New convention to declare gap gas fractions in Bison.  refs idaholab#6

Job VTB Documentation on 1a00e9d wanted to post the following:
View the site here
This comment will be updated on new commits.

@GiudGiud

For this PR to pass we need to update the BISON submodule in the apps/bison directory.
Did the relevant PR in Bison get merged ?

Actually this is a diff on the test result. Did something else than the syntax change in bison?

A submodule update fixed the problem. However, the deprecation was not done properly on the BISON side because a diff happened with no complaining between the new and old syntax.

It should have errored before on unused parameters actually?


Miguelhar.var fix

Numbered examples for concurrent execution.
var.region for provider setup.
bastion.enabled for more direct conditional, reduces errors The "for_each" map includes keys derived from resource attributes that cannot be determined until apply.
Bastion root_block_device kms_key_id takes the arn.
ssm_log_group_name -> eks object.
kms enabled bydefault.

PLAT-6452

test-upgrade is expected to fail.


Fixes button icon and feedback button size in docs

Just started reviewing :) :octocat: Sent from GH.


Define browser compatibility

We need to define browsers we should support.

I like the approach of minimum of {browsersLatestVersion -2}

@mvallim @lnfnunes
Do you know ci.testling.com?

Nop... but looks VERY interesting !!! "free for open source"


CULane evaluator

Thanks for your great work!
I noticed you rewrite a python version CULane evaluator, can I use it in my projects (another opensource lane detection method)? Also, how about the speed compared with the original C++ version? What's the error range of this version? Thanks for your reply.

Yes, you can use it, but please add a link pointing back to this repository if possible. The script has two ways to compute the IoU: using an image (as done by the original C++ version) and using shapes (with the shapely library). The results of the first way are very close to the official code (the errors are in the order of 0.01%, as you can see in the CULane table in this repository) and faster than the official code. The second is faster but deviates more from the original version (in the order of 0.5% I think). I can't remember right now the exact speedup, but I think the Python version is around 2-3x times faster than the C++ version using the first way (with closer results) and ~5x times faster using the second way.


⚠ Bofrost.be has degraded performance

In 12644ad, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 2456 ms

Resolved: Bofrost.be performance has improved in aa4a935.


Zoom In by 2 or More Steps Causing DOM Elements to Flicker

Checklist

[x] I've looked at the documentation to make sure the behavior isn't documented and expected.
[ ] I'm sure this is an issue with Leaflet, not with my app or other dependencies (Angular, Cordova, React, etc.).
[x] I've searched through the current issues to make sure this hasn't been reported yet.
[x] I agree to follow the Code of Conduct that this project adheres to.

Steps to reproduce

Load several geojsons on the map.
Zoom in for 2 or 3 steps from zoom level 2 or so.
Drag the map or use map.setView() to set view without changing zoom.
The document flinks for once.

Additions:
Actually I'm not sure this is an issue totally caused by Leaflet, I'm just looking for help.
The tricky thing is it actually works well at first. But one day, when I zoomed in like step.2, it flickers for once. It never happened before, but since then, it always happen even if I refresh the website or clear the data of this website. The only way is to change a browser, then it will be fine again. But if the browser triggered this issue for once, it will happen every time. I've tested this issue on two Win11 computers with both Edge and Chrome, the same.
My Tauri app of this project encountered the same problem a few days ago. I even tried to uninstall WebView2 and reinstall it, didn't work. I only tested Chromium browsers since it's caused randomly.
Expected behavior
This is the normal behavior. When zooming, the stroke of geojson layers are smooth, and no flicker.
https://github.com/user-attachments/assets/530b80cd-0f09-4e33-8bc8-79e4ba604619
Current behavior
This is the abnormal behavior. When zooming in for 2 (maybe 3) or more steps, the stroke of geojson layers are straight, and the document (not only map) flickers every time I drag or use map.setView(). But if I zoom in for only one step or zoom out, it will become normal again before next zooming in for 2 (maybe 3) or more steps.
https://github.com/user-attachments/assets/606800f8-6638-4614-a3c9-cb84b1e34f67
Minimal example reproducing the issue
No response
Environment

Leaflet version: 1.9.4
Browser (with version): Chrome 131.0.6778.86, Edge 131.0.2903.70, Tauri App 2.0.0rc
OS/Platform (with version): Windows 11 Pro 23H2 22631.4460
Dependency: Vue 3.4.38

I encounter similar issue. Hope this gets resolved 😄

I encounter similar issue. Hope this gets resolved 😄

Now I temporarily resolve this issue by adjusting map container's height by 1px when zooming.
map.on('zoomstart', ()=>{
    setMapHeight('calc(100% - 1px)');
})
map.on('zoomend', ()=>{
    setMapHeight('100%');
})
const setMapHeight = (height) => {
    const mapElement = map.getContainer();
    mapElement.style.height = height;
    setTimeout(() => {
        map.invalidateSize();
    }, 0);
}

Thanks, the temporary solution works 😺
Here I send how it looks in my case. Hopefully it will be useful.
https://github.com/user-attachments/assets/ca5da32a-d2f3-4ef2-80b1-af4ae900b584


Make GitHub Actions to be read-only

Make GitHub Actions to be read-only[0].
[0]https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs
Signed-off-by: Yurii Kolesnykov<EMAIL_ADDRESS>

By default, GHA uses token with write access to some of repo's scopes, so limiting it to a necessary minimum is a good practice.

@yurikoles that makes sense. Just wasn't sure exactly what does it affect 🙂

Oh, I forgot to post a proof, so before this PR GHA logged in Set up job:
GITHUB_TOKEN Permissions
  Actions: write
  Checks: write
  Contents: write
  Deployments: write
  Discussions: write
  Issues: write
  Metadata: read
  Packages: write
  Pages: write
  PullRequests: write
  RepositoryProjects: write
  SecurityEvents: write
  Statuses: write

After:
GITHUB_TOKEN Permissions
  Contents: read
  Metadata: read


After running the plugin, it shows up warnings and a notice

Hi,
After selecting the theme name from the drop-down and clicking on the go button, I get the the following

Notice:  tempnam(): file created in the system's temporary directory in /Applications/XAMPP/xamppfiles/htdocs/breeze-theme/wp-content/plugins/theme-sniffer/vendor/squizlabs/php_codesniffer/CodeSniffer/Reporting.php on line 177

Warning:  fopen(): Filename cannot be empty in /Applications/XAMPP/xamppfiles/htdocs/breeze-theme/wp-content/plugins/theme-sniffer/vendor/squizlabs/php_codesniffer/CodeSniffer/Reporting.php on line 177

Warning:  fwrite() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/breeze-theme/wp-content/plugins/theme-sniffer/vendor/squizlabs/php_codesniffer/CodeSniffer/Reporting.php on line 183

Warning:  stream_get_meta_data() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/breeze-theme/wp-content/plugins/theme-sniffer/vendor/squizlabs/php_codesniffer/CodeSniffer/Reporting.php on line 242

Warning:  file_get_contents(): Filename cannot be empty in /Applications/XAMPP/xamppfiles/htdocs/breeze-theme/wp-content/plugins/theme-sniffer/vendor/squizlabs/php_codesniffer/CodeSniffer/Reporting.php on line 244

Warning:  fclose() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/breeze-theme/wp-content/plugins/theme-sniffer/vendor/squizlabs/php_codesniffer/CodeSniffer/Reporting.php on line 245
Time: 25399106 mins, 9.16 secs; Memory: 16Mb
Also I am attaching the screenshot of the selected standards and options. Please note I am running the plugin on my localhost (XAMPP).
Thanks,
Bilal Ahmed

Hi
This is not the repository for the plugin. Go here instead: https://github.com/WPTRT/theme-sniffer
Make sure that you download the correct version of the plugin that is linked in the readme.


[SPARK-26044][WEBUI]Aggregated Metrics table sort based on executor ID

What changes were proposed in this pull request?
Aggregated Metrics table in the stage page is not sorted based on the executorID properly. Because executorID is string and also the logs of the executors are in the same column.
In this PR, I created a new column for executor logs and converted executor ID to interger, if not "driver".
How was this patch tested?
Before patch:

After patch:

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Test build #98798 has started for PR 23024 at commit d6099e3.

Test build #98800 has started for PR 23024 at commit ad5669c.

Test build #98798 has finished for PR 23024 at commit d6099e3.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/98798/
Test PASSed.

Test build #98800 has finished for PR 23024 at commit ad5669c.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/98800/
Test PASSed.

Test build #98834 has started for PR 23024 at commit 55aebe6.

Test build #98835 has started for PR 23024 at commit 58293b3.

Test build #98835 has finished for PR 23024 at commit 58293b3.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/98835/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/98834/
Test PASSed.

Merged to master

Thank you @srowen


Selected word is not automatically placed in the 'find' field by pressing Ctrl + H

VSCode Version: 1.13.0 - insiders (7403245 Date 2017-05-23T05:14:19.493Z)
OS Version: Windows 10

Steps to Reproduce:

Select a word
Press Ctrl + H
Search field appears, but the selected word is not in the find field.
The focus in the replace field is in the correct place.

The problem does not occur in version 1.12.2

@roblourens It's not a feature-request, it's a bug. Because it works correctly in the stable version, as said above.

I missed that, thanks.


[WIP] Bitfield functions and tests

See #11

Added helper functions has_voted, set_voted, and get_bitfield_length
Added tests for above
Took the liberty to replace ^ (XOR) with | (OR) so that calling set_voted twice doesn't remove the vote
Now waiting for PR #16 to be merged so that I can integrate the helpers to state_transition.py.

Replaced all bitfield calculations with the new helpers (hope I didn't miss any)
Added another little helper get_vote_count
Renamed bitmasks to bitfields and signer_bitmask to notary_bitmask

That should cover everything in #11, so it's ready for review.

You have a merge conflict. Do you mind resolving it?

Rebased

lgtm


Auto-reload tls certs for druid endpoints

More often than not, the certs are refreshed quite frequently. The refresh also takes care of java store files. Druid has capability to work with these files. I would like to know how druid addresses this change at the moment. From what I see in the source code and test/integration cases, druid doesn't support it yet [please correct me if I am missing something].
Jetty has KeyStoreScanner which is capable of reloading the certs based on changes in cert files. This implementation could be very useful here.
I have done some preliminary implementation but before I publish the PR [struggling with test cases for this particular feature], I would like to know what community thinks about this idea.

You can raise a PR to submit this feature. Contribution is welcome.


User-Configurable Margins Between Cards

Zero would lead to special considerations:

How to separate card boundaries - as they're all the same colour.
Whether cards should have curved corners - as that would look odd.

Maybe zero is really 0.05 inches or something like that.

Done in v1.9.5.


feat(host)!: Combine heartbeat and inventory payloads

feat(host)!: change heartbeat payload to inventory
feat(control-interface)!: add heartbeat fields to inventory

Feature or Problem
In https://github.com/wasmCloud/wadm and https://github.com/wasmCloud/lattice-observer, and any other client, after a heartbeat a host inventory query is necessary in order to get enough information to reflect the state of the host. This PR solves this issue, giving any interested client the ability to know the full state of what's running on the host with only the heartbeat or the host inventory.
Related Issues
Fixes #789
Release Information
wasmCloud v0.82.0
control interface v0.33.0
Consumer Impact
The only consumers of the heartbeat payload, noted above, I'll update to work with both the old payload and the new payload. Worth noting that the only deserialize breaking change here is in the heartbeat, changing the actor map into a list and changing the provider "public_key" into "id" which I mitigated by adding a serde alias.
I see this as a test for future compatibility and will try out a strategy to see how we can work with deserializing two possible versions in the future.
Testing

Unit Test(s)
Modified wasmbus test to ensure that the new inventory variables, version, uptime_seconds, uptime_human come back as sensible values.
Acceptance or Integration

Manual Verification

Adding label to hold this back to merge so we can cut 0.81 first. I know we can cherry pick but that just keeps it simple

@connorsmith256 this one is ready for another look, rebased on  #1160 to bring in the u32 changes


Add support for dereferencing $refs

Hi, would you please consider adding support for dereferencing $refs?
I created an openapi-fuzzer that uses OpenAPI Specification to generate structured inputs for fuzzing web service. As for now the ReferenceOr<T> objects often contain only strings with a location of given object. I'd would help me if I could resolve the $refs and directly work with structured data.

I think that's beyond the intended scope of this crate... indeed resolving $refs turns out to be quite involved, and may include opening other files or downloading documents from URLs. You can see an example of how to resolve references here:
https://github.com/oxidecomputer/progenitor/blob/main/progenitor-impl/src/util.rs#L13


database in supabase

Can you help me database in project ?
Thank you

Did you manage to sort out the database issue?


logging configuration options

Is your feature request related to a problem? Please describe.
All logging configuration option should be available.
System  ››  Logs : Configuration : Options
And as matter of priority, the "Audit Logging" setting should be implemented
Describe the solution you'd like
All logging options should be configurable from DO.
And the "Audit Logging" settings on top of the others
Describe alternatives you've considered
none
Additional context
In a very security resctricted env audit logging should be enabled as soon the device is onboarded, including the GUI that by default is disabled.

It looks like many of the logging settings can be configured by modifying data base variables, which Declarative Onboarding supports:
{
    "schemaVersion": "1.10.0",
    "async": "true",
    "class": "Device",
    "Common": {
    	"class": "Tenant",
    	"dbvars": {
    		"class": "DbVariables",
    		"config.auditing": "disable"
    	}
    }
}

However, I cannot figure out how to enable the GUI audit logging through tmsh. Do you happen to know how to configure that setting other than using the management GUI?

Finally found the tmsh command for it:
modify sys global-settings gui-audit enabled
That cannot currently be configured through Declarative Onboarding.

I have created AUTOTOOL-1248 in our internal product backlog for configuring the 3 audit log settings.

This issue has been resolved as part of the 1.13.0 release.


Requests are too protocol chatty, should be optimized.

Every request forms a new INBOX subscription for each request and then tears them down. Since NATS has to flood the interest graph to clusters and possible future bridged clusters, this should be redesigned to reuse a single subscription but still be semantically be the same from a client perspective. One word of caution is that we use the circuit breaker pattern such that the server auto-unsubscribes after N responses (usually 1), so if you are requesting from a large set of normal subscribers, the client may be getting a higher number of responses that will be ignored. However I feel the normal case should be a request is always sent to a queue group, which does not need the circuit breaker assist.
Example trace from a single request / response today.
[TRC] ::1:50431 - cid:2 - ->> [SUB _INBOX.Gmw3KasVkAqYFpskoKCV79  1]
[TRC] ::1:50431 - cid:2 - ->> [UNSUB 1 1]
[TRC] ::1:50431 - cid:2 - ->> [PUB foo _INBOX.Gmw3KasVkAqYFpskoKCV79 4]
[TRC] ::1:50431 - cid:2 - ->> MSG_PAYLOAD: [help]
[TRC] ::1:50426 - cid:1 - <<- [MSG foo 1 _INBOX.Gmw3KasVkAqYFpskoKCV79 4]
[TRC] ::1:50426 - cid:1 - ->> [PUB _INBOX.Gmw3KasVkAqYFpskoKCV79 5]
[TRC] ::1:50426 - cid:1 - ->> MSG_PAYLOAD: [hello]
[TRC] ::1:50431 - cid:2 - <<- [MSG _INBOX.Gmw3KasVkAqYFpskoKCV79 1 5]
[TRC] ::1:50431 - cid:2 - <-> [DELSUB 1]

Resolved with #295


[EDIT] "Millions of dollars of user funds stolen in BitKeep wallet hack" misspelled PeckShieldAlert in link text

Entry

https://web3isgoinggreat.com/single/millions-of-dollars-of-user-funds-stolen-in-bitkeep-wallet-hack
Changes

In the link to the PeckShieldAlert, the d is missing so it's spelled PeckShielAlert. Small change for typo needed
Agreement
By submitting this issue, I irrevocably agree to release my contribution under the CC-BY 3.0 License. I agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.

Thank you!


Smart retry auto disable

This change adds product code and tests to automatically disable smart retry when a DLQ merge is in progress.
Key pieces:

Change to cgCache to lookup single CG visibility, and calculate whether DLQ is merging
Change to isStalled to disable smart retry when the dlqMerging flag is set
Test that verifies a complete dlq merge cycle, runtime 70s (100s w/ race)
Small fix on consConnection to fix metrics spamming that I noticed during testing
Fix for a race in logPumpHealth

Coverage decreased (-0.2%) to 54.715% when pulling ab2e3733a3f0a5969558f71d5688ca052491cc4e on smartRetryAutoDisable into 72c4e25d9d08f28fc4daace2e9785239cd7ec1c0 on metricsTesting.

Would be cool to also expose a dynamic config turn on/off knob for the new feature (as a rollback plan).

Trying to come up with a scenario where this knob would be used is hurting my head. The feature is only active during DLQ merge, which is already quite rare. Using the knob in that situation means that smart retry would be enabled again, which really only makes sense if the customer is 100% sure that all DLQ messages have been properly handled. If they are so attentive, why not just take their group offline when their downstream is down while merging?

Coverage increased (+0.07%) to 54.795% when pulling 24a73f92b7bbd44e47d22b7eb5e14d84b3dc8bd9 on smartRetryAutoDisable into 7e71f595c3b19cc3474319f7e2722119557a1038 on metricsTesting.

Would be cool to also expose a dynamic config turn on/off knob for the new feature (as a rollback plan).

Less worried about the smartRetryDisable during merge; more worried about the additional metadata ReadExtentStats call on every refresh for every CG. Will leave it up to you, it was just a question / suggestion to start the discussion around rollback. Even if we do implement a dynamic config switch, it likely will be temporary (just for rollback).

why can't we make a metdata change to flag an extent in the CGE table as a dlq extent?

We absolutely can. The cost will be:

One change to metadata to add the singleCGVisible flag to the consumer group extents table
Change to metadata client to store the new flag
Change to metadata test to test the new flag
One change to thrift to add the new field to the result consumer group extent
Changes to test to cover the cases around the new field
Change to controller to forward this information
Changes to controller test to test the forwarding
Similar changes to what already exists in outputhost to use the new information
Similar testing for outputhost
Rollback plan(s) for both thrift and metadata changes
Rollback test(s) for both thrift and metadata changes

That will allow us to save:

~30 lines of code in outputhost
~one listextentstats call per extent

I didn't feel the cost was justified for the benefits

Agree with most of your assessment of the no: of small changes everywhere. The reason why I was asking was because we are performing a ReadExtentStats() metadata call (albeit just once per cge) which could introduce another metadata delay (we already are seeing an increased metadata latency in prod).. We can run this and find out the perf impact and determine what to do as well.
Although we need to address the metadata latency issue on it's own, (there are already 900 cuts) I was just wondering if we can avoid adding another cut to it :)

Coverage decreased (-0.1%) to 54.958% when pulling 8eb45f67cc4201b317796c11542f7d5e60a7d145 on smartRetryAutoDisable into 5eefb79554ab2952c96cd22267b03a6bcbe4fe44 on master.


Feature/Option to use OR queries on security-data/alerts search

Adds --or-query option to make the passed in filters be processed in an OR group for both alert and file event searches.

Needs tests and testing instructions, but otherwise LGTM.


ChunkedEncodingError while scraping subreddit submissions

Hi Matt, I'm trying to scrape subreddit posts within a time period of six months, with a limit set to none. After irregular periods of time however, the connection gets broken apparently. Following is the code snippet and the error. I tried restarting it multiple times, but the same issue comes up. Is there any way to ensure that all data is scraped in one go? Thanks
Code :
from pmaw import PushshiftAPI
api = PushshiftAPI()

import datetime as dt
before = int(dt.datetime(2020,9,1,0,0).timestamp())
after = int(dt.datetime(2020,3,1,0,0).timestamp())

subreddit="teenagers"
posts = api.search_submissions(subreddit=subreddit, limit=None, before=before, after=after,mem_safe=True)
print(f'Retrieved {len(posts)} posts from Pushshift')

Error :

ValueError                                Traceback (most recent call last)
/opt/conda/lib/python3.7/site-packages/urllib3/response.py in _update_chunk_length(self)
696         try:
--> 697             self.chunk_left = int(line, 16)
698         except ValueError:
ValueError: invalid literal for int() with base 16: b''
During handling of the above exception, another exception occurred:
InvalidChunkLength                        Traceback (most recent call last)
/opt/conda/lib/python3.7/site-packages/urllib3/response.py in _error_catcher(self)
437             try:
--> 438                 yield
439
/opt/conda/lib/python3.7/site-packages/urllib3/response.py in read_chunked(self, amt, decode_content)
763             while True:
--> 764                 self._update_chunk_length()
765                 if self.chunk_left == 0:
/opt/conda/lib/python3.7/site-packages/urllib3/response.py in _update_chunk_length(self)
700             self.close()
--> 701             raise InvalidChunkLength(self, line)
702
InvalidChunkLength: InvalidChunkLength(got length b'', 0 bytes read)
During handling of the above exception, another exception occurred:
ProtocolError                             Traceback (most recent call last)
/opt/conda/lib/python3.7/site-packages/requests/models.py in generate()
757                 try:
--> 758                     for chunk in self.raw.stream(chunk_size, decode_content=True):
759                         yield chunk
/opt/conda/lib/python3.7/site-packages/urllib3/response.py in stream(self, amt, decode_content)
571         if self.chunked and self.supports_chunked_reads():
--> 572             for line in self.read_chunked(amt, decode_content=decode_content):
573                 yield line
/opt/conda/lib/python3.7/site-packages/urllib3/response.py in read_chunked(self, amt, decode_content)
792             if self._original_response:
--> 793                 self._original_response.close()
794
/opt/conda/lib/python3.7/contextlib.py in exit(self, type, value, traceback)
129             try:
--> 130                 self.gen.throw(type, value, traceback)
131             except StopIteration as exc:
/opt/conda/lib/python3.7/site-packages/urllib3/response.py in _error_catcher(self)
454                 # This includes IncompleteRead.
--> 455                 raise ProtocolError("Connection broken: %r" % e, e)
456
ProtocolError: ("Connection broken: InvalidChunkLength(got length b'', 0 bytes read)", InvalidChunkLength(got length b'', 0 bytes read))
During handling of the above exception, another exception occurred:
ChunkedEncodingError                      Traceback (most recent call last)
/tmp/ipykernel_19/3224342533.py in
1 subreddit="teenagers"
----> 2 posts = api.search_submissions(subreddit=subreddit, limit=None, before=before, after=after,mem_safe=True,safe_exit=True)
3 print(f'Retrieved {len(posts)} posts from Pushshift')
/opt/conda/lib/python3.7/site-packages/pmaw/PushshiftAPI.py in search_submissions(self, **kwargs)
72             Response generator object
73         """
---> 74         return self._search(kind='submission', **kwargs)
/opt/conda/lib/python3.7/site-packages/pmaw/PushshiftAPIBase.py in _search(self, kind, max_ids_per_request, max_results_per_request, mem_safe, search_window, dataset, safe_exit, cache_dir, filter_fn, **kwargs)
266
267             if self.req.limit > 0 and len(self.req.req_list) > 0:
--> 268                 self._multithread()
269
270         self.req.save_cache()
/opt/conda/lib/python3.7/site-packages/pmaw/PushshiftAPIBase.py in _multithread(self, check_total)
100                     self._get, url_pay[0], url_pay[1]): url_pay for url_pay in reqs}
101
--> 102                 self._futures_handler(futures, check_total)
103
104                 # reset attempts if no failures
/opt/conda/lib/python3.7/site-packages/pmaw/PushshiftAPIBase.py in _futures_handler(self, futures, check_total)
131             self.num_req += int(not check_total)
132             try:
--> 133                 data = future.result()
134                 self.num_suc += int(not check_total)
135                 url = url_pay[0]
/opt/conda/lib/python3.7/concurrent/futures/_base.py in result(self, timeout)
426                 raise CancelledError()
427             elif self._state == FINISHED:
--> 428                 return self.__get_result()
429
430             self._condition.wait(timeout)
/opt/conda/lib/python3.7/concurrent/futures/_base.py in __get_result(self)
382     def __get_result(self):
383         if self._exception:
--> 384             raise self._exception
385         else:
386             return self._result
/opt/conda/lib/python3.7/concurrent/futures/thread.py in run(self)
55
56         try:
---> 57             result = self.fn(*self.args, **self.kwargs)
58         except BaseException as exc:
59             self.future.set_exception(exc)
/opt/conda/lib/python3.7/site-packages/pmaw/PushshiftAPIBase.py in _get(self, url, payload)
50     def _get(self, url, payload={}):
51         self._impose_rate_limit()
---> 52         r = requests.get(url, params=payload)
53         status = r.status_code
54         reason = r.reason
/opt/conda/lib/python3.7/site-packages/requests/api.py in get(url, params, **kwargs)
73     """
74
---> 75     return request('get', url, params=params, **kwargs)
76
77
/opt/conda/lib/python3.7/site-packages/requests/api.py in request(method, url, **kwargs)
59     # cases, and look like a memory leak in others.
60     with sessions.Session() as session:
---> 61         return session.request(method=method, url=url, **kwargs)
62
63
/opt/conda/lib/python3.7/site-packages/requests/sessions.py in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json)
540         }
541         send_kwargs.update(settings)
--> 542         resp = self.send(prep, **send_kwargs)
543
544         return resp
/opt/conda/lib/python3.7/site-packages/requests/sessions.py in send(self, request, **kwargs)
695
696         if not stream:
--> 697             r.content
698
699         return r
/opt/conda/lib/python3.7/site-packages/requests/models.py in content(self)
834                 self._content = None
835             else:
--> 836                 self._content = b''.join(self.iter_content(CONTENT_CHUNK_SIZE)) or b''
837
838         self._content_consumed = True
/opt/conda/lib/python3.7/site-packages/requests/models.py in generate()
759                         yield chunk
760                 except ProtocolError as e:
--> 761                     raise ChunkedEncodingError(e)
762                 except DecodeError as e:
763                     raise ContentDecodingError(e)
ChunkedEncodingError: ("Connection broken: InvalidChunkLength(got length b'', 0 bytes read)", InvalidChunkLength(got length b'', 0 bytes read))

@aryamansharma01  I haven't seen this error before, I'll take a look.

I run into this issue as well, nominally with larger amounts. Is there maybe a chance there is some spillover size-wise with the limit parameter?

For me the same issue. I have downloaded several months of Wallstreetbets data without any problem but since a few days ago the issue keeps incurring. Did you already find y solution?

No. I think it's related to the issues with the server of pushshift...

Does anyone have a solution? Can we have the problematic ones skipped? Currently mine just stuck halfway for a scarping.

@ReichYang when i was looking into this before it appeared to be a connection issue between the client and server.
It would help to see any debug logs from when this error occurs to try to pinpoint what is causing this

@ReichYang when i was looking into this before it appeared to be a connection issue between the client and server.
It would help to see any debug logs from when this error occurs to try to pinpoint what is causing this

Thanks for the speedy response. I think mine is also connection error, but I tried several times and it just kept on throwing this error.
ChunkedEncodingError: ("Connection broken: InvalidChunkLength(got length b'', 0 bytes read)", InvalidChunkLength(got length b'', 0 bytes read))
I'm wondering if we can have a parameter that can ensure the scraping won't stop just because of this kind of issue, like skipping the ones that consistently receive connection issues and moving on to the next.

@mattpodolak Hey, I just encountered another one. And here is the error log.
ChunkedEncodingError: ("Connection broken: InvalidChunkLength(got length b'', 0 bytes read)", InvalidChunkLength(got length b'', 0 bytes read))
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
~\AppData\Roaming\Python\Python37\site-packages\urllib3\response.py in _update_chunk_length(self)
    696         try:
--> 697             self.chunk_left = int(line, 16)
    698         except ValueError:

ValueError: invalid literal for int() with base 16: b''

During handling of the above exception, another exception occurred:

InvalidChunkLength                        Traceback (most recent call last)
~\AppData\Roaming\Python\Python37\site-packages\urllib3\response.py in _error_catcher(self)
    437             try:
--> 438                 yield
    439

~\AppData\Roaming\Python\Python37\site-packages\urllib3\response.py in read_chunked(self, amt, decode_content)
    763             while True:
--> 764                 self._update_chunk_length()
    765                 if self.chunk_left == 0:

~\AppData\Roaming\Python\Python37\site-packages\urllib3\response.py in _update_chunk_length(self)
    700             self.close()
--> 701             raise InvalidChunkLength(self, line)
    702

InvalidChunkLength: InvalidChunkLength(got length b'', 0 bytes read)

During handling of the above exception, another exception occurred:

ProtocolError                             Traceback (most recent call last)
~\AppData\Roaming\Python\Python37\site-packages\requests\models.py in generate()
    757                 try:
--> 758                     for chunk in self.raw.stream(chunk_size, decode_content=True):
    759                         yield chunk

~\AppData\Roaming\Python\Python37\site-packages\urllib3\response.py in stream(self, amt, decode_content)
    571         if self.chunked and self.supports_chunked_reads():
--> 572             for line in self.read_chunked(amt, decode_content=decode_content):
    573                 yield line

~\AppData\Roaming\Python\Python37\site-packages\urllib3\response.py in read_chunked(self, amt, decode_content)
    792             if self._original_response:
--> 793                 self._original_response.close()
    794

D:\Python37\lib\contextlib.py in __exit__(self, type, value, traceback)
    129             try:
--> 130                 self.gen.throw(type, value, traceback)
    131             except StopIteration as exc:

~\AppData\Roaming\Python\Python37\site-packages\urllib3\response.py in _error_catcher(self)
    454                 # This includes IncompleteRead.
--> 455                 raise ProtocolError("Connection broken: %r" % e, e)
    456

ProtocolError: ("Connection broken: InvalidChunkLength(got length b'', 0 bytes read)", InvalidChunkLength(got length b'', 0 bytes read))

During handling of the above exception, another exception occurred:

ChunkedEncodingError                      Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_72724/806806213.py in <module>
      1 for sub in subs:
----> 2     posts = api.search_submissions(subreddit=sub, mem_safe=True, after=1559365200, before=1637207011, safe_exit=True)
      3     print(f'{len(posts)} posts retrieved from Pushshift')
      4     post_list = [post for post in posts]
      5     pd.DataFrame(post_list).to_pickle(f"{sub}_COVID_submissions.pkl")

~\AppData\Roaming\Python\Python37\site-packages\pmaw\PushshiftAPI.py in search_submissions(self, **kwargs)
     72             Response generator object
     73         """
---> 74         return self._search(kind='submission', **kwargs)

~\AppData\Roaming\Python\Python37\site-packages\pmaw\PushshiftAPIBase.py in _search(self, kind, max_ids_per_request, max_results_per_request, mem_safe, search_window, dataset, safe_exit, cache_dir, filter_fn, **kwargs)
    266
    267             if self.req.limit > 0 and len(self.req.req_list) > 0:
--> 268                 self._multithread()
    269
    270         self.req.save_cache()

~\AppData\Roaming\Python\Python37\site-packages\pmaw\PushshiftAPIBase.py in _multithread(self, check_total)
    100                     self._get, url_pay[0], url_pay[1]): url_pay for url_pay in reqs}
    101
--> 102                 self._futures_handler(futures, check_total)
    103
    104                 # reset attempts if no failures

~\AppData\Roaming\Python\Python37\site-packages\pmaw\PushshiftAPIBase.py in _futures_handler(self, futures, check_total)
    131             self.num_req += int(not check_total)
    132             try:
--> 133                 data = future.result()
    134                 self.num_suc += int(not check_total)
    135                 url = url_pay[0]

D:\Python37\lib\concurrent\futures\_base.py in result(self, timeout)
    426                 raise CancelledError()
    427             elif self._state == FINISHED:
--> 428                 return self.__get_result()
    429
    430             self._condition.wait(timeout)

D:\Python37\lib\concurrent\futures\_base.py in __get_result(self)
    382     def __get_result(self):
    383         if self._exception:
--> 384             raise self._exception
    385         else:
    386             return self._result

D:\Python37\lib\concurrent\futures\thread.py in run(self)
     55
     56         try:
---> 57             result = self.fn(*self.args, **self.kwargs)
     58         except BaseException as exc:
     59             self.future.set_exception(exc)

~\AppData\Roaming\Python\Python37\site-packages\pmaw\PushshiftAPIBase.py in _get(self, url, payload)
     50     def _get(self, url, payload={}):
     51         self._impose_rate_limit()
---> 52         r = requests.get(url, params=payload)
     53         status = r.status_code
     54         reason = r.reason

~\AppData\Roaming\Python\Python37\site-packages\requests\api.py in get(url, params, **kwargs)
     73     """
     74
---> 75     return request('get', url, params=params, **kwargs)
     76
     77

~\AppData\Roaming\Python\Python37\site-packages\requests\api.py in request(method, url, **kwargs)
     59     # cases, and look like a memory leak in others.
     60     with sessions.Session() as session:
---> 61         return session.request(method=method, url=url, **kwargs)
     62
     63

~\AppData\Roaming\Python\Python37\site-packages\requests\sessions.py in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json)
    540         }
    541         send_kwargs.update(settings)
--> 542         resp = self.send(prep, **send_kwargs)
    543
    544         return resp

~\AppData\Roaming\Python\Python37\site-packages\requests\sessions.py in send(self, request, **kwargs)
    695
    696         if not stream:
--> 697             r.content
    698
    699         return r

~\AppData\Roaming\Python\Python37\site-packages\requests\models.py in content(self)
    834                 self._content = None
    835             else:
--> 836                 self._content = b''.join(self.iter_content(CONTENT_CHUNK_SIZE)) or b''
    837
    838         self._content_consumed = True

~\AppData\Roaming\Python\Python37\site-packages\requests\models.py in generate()
    759                         yield chunk
    760                 except ProtocolError as e:
--> 761                     raise ChunkedEncodingError(e)
    762                 except DecodeError as e:
    763                     raise ContentDecodingError(e)

ChunkedEncodingError: ("Connection broken: InvalidChunkLength(got length b'', 0 bytes read)", InvalidChunkLength(got length b'', 0 bytes read))

Hi guys, original poster here. I played around with the libraries a bit and found that when i installed different version of urllib3 and requests, the error no longer appeared. Also I think it might help if one tries to scrape small amounts of data at a time.
!pip install urllib3==1.23
!pip install requests==2.19.1

Hope this helps!


hadley may suggest to store tests in inst, but I'd rather have coverage

BTW Hadley no longer suggests storing tests in inst, that's an antiquated habit.  See http://r-pkgs.had.co.nz/inst.html and http://r-pkgs.had.co.nz/tests.html.  tests/testhat is indeed the correct standard.

Correct

Coverage increased (+37.02%) to 37.02% when pulling 1514e01d91b6ffd915f86e7e33f110ac3c2ed42c on kirillseva:coverage into 67a8a7e73021f59a62ac8e6050205ea6de762a31 on robertzk:master.

MERGE PLS :neckbeard:


Feature to save after every apply

This would be good for debugging, since it would allow us to visualize intermediate states, and we could also turn the series of images into videos.
Maybe:
$ degenerate autosave rotate:0.125 x for:8 apply loop
$ ls *.png
0.png
1.png
2.png
3.png
4.png
5.png
6.png
7.png

We could later add some way of customizing the titles, but for now just counting up from zero is probably good enough.

Done!


 LAN connection works perfectly. I am new to HTTP and certificate stuff. What is the problem here and how can I fix it?

I second that, it is poor usage of hterm code resulting in unpredictable response over the internet.

I'd be willing to look into it.
If you guys send me URL, videos and other help on how to debug http/ssh
with JavaScript.
On Wed, May 23, 2018, 2:23 AM alexw1982<EMAIL_ADDRESS>wrote:

via a nginx reverse proxy appears to be fine performance wise...can not
speak for the direct https implementation though.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/krishnasrinivas/wetty/issues/74#issuecomment-391281183,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACEkoOrsVCr9cPKiQgIt4EXJNGzx7VwWks5t1Sp2gaJpZM4J5qDz
.

I get following error consistently when deployed internet.

WebSocket connection to 'ws://
guna.paripath.com/wetty/socket.io/?EIO=3&transport=websocket&sid=23WiB10dCgcGHvCKAAAY'
failed: Error during WebSocket handshake: Unexpected response code: 400

Local connection works fine.
On Wed, May 23, 2018 at 4:12 PM, Rohit Sharma<EMAIL_ADDRESS>wrote:

I'd be willing to look into it.
If you guys send me URL, videos and other help on how to debug http/ssh
with JavaScript.
On Wed, May 23, 2018, 2:23 AM alexw1982<EMAIL_ADDRESS>wrote:

via a nginx reverse proxy appears to be fine performance wise...can not
speak for the direct https implementation though.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/krishnasrinivas/wetty/issues/74#issuecomment-391281183,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACEkoOrsVCr9cPKiQgIt4EXJNGzx7VwWks5t1Sp2gaJpZM4J5qDz
.


Re-check Subject weighings before next social02 exp

I'll go down with @glopesdev one day and do a set of systematic tests with the RC cars.
What we were seeing during social02 is not as often subject weights being logged as we'd expect.

Related to #493

Seems good


Getting npm output even with -q option

When running the scan an output similar to this is being shown:
added 1 package, and audited 3 packages in 761ms

found 0 vulnerabilities
npm notice
npm notice New major version of npm available! 8.6.0 -> 10.2.5
npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.2.5>
npm notice Run `npm install -g<EMAIL_ADDRESS>to update!
npm notice

Even when using the --quiet (-q) option

adding the --quiet option to npm install seems to do the trick.. will further investigate.

hey @orsifacundo - this may be fixed with my recent merged PR #34 ; would you mind testing to see if this is still ongoing when using the latest main branch content?

Totally, it's fixed now. Thanks @scrthq.. closing this issue.


error: : Reference to unknown builtin or existing type 1 error generated when creating/updating a type

What is the feature you'd like to have?
When creating a new type if there's an error it would be nice to know on which line the source code the error is on.
Is your feature request related to a problem?
When I create/edit a type and hit the Create/Update button I get the message error: <unknown>: Reference to unknown builtin or existing type 1 error generated.
Are any alternative solutions acceptable?
n/a
Additional Information:
binja version: 3.6.4709-dev (715fcd79)
os: macos 14.1.2

Could you please provide repro steps?

sent via binja slack

Binary Shared internally Fast Rabbit Pumpkin Breakfast


demo site is broken

i see

A Vue 2 component for the the dead simple inline editor toolbar by yabwe.

Try highlighting this text.

instead of the component

nm


Enable JDK 20 in builds

Signed-off-by: Ashley<EMAIL_ADDRESS>

Codecov Report

Merging #262 (4dcd351) into main (2b3a210) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #262   +/-   ##
=======================================
  Coverage   70.91%   70.91%
=======================================
  Files          72       72
  Lines        2537     2537
  Branches      237      237
=======================================
  Hits         1799     1799
  Misses        671      671
  Partials       67       67


[Summarize YouTube Videos with AI] Expand on item

Extension
https://www.raycast.com/iKasch/summarize-youtube-video-with-ai
Description
Love this extension. Would be great if I could ask the extension to expand upon a certain part of the summary, based on the content of the video. Or possibly take me to the related part of the video.
Who will benefit from this feature?
No response
Anything else?
No response

@christianmagill Jumping to the part of the video is a great idea, I will look into this! I do have the timestamps of the things being said but connecting them to the summarized part you are looking at will be very tricky.
What exactly do you mean by "expand"? Do you want to get more info about this section or talk to AI about the context you "expand on"?
Thanks for the kind words ✌

Got it, thanks. Right now the summarisation process is pretty "dumb" and not context aware. It's a nice idea though, I will try to come up with a way to get more out of the context. Thanks for the ideas!

@christianmagill it's been some time, but there was a bigger update to the extension now which should do pretty much what you asked for. https://github.com/raycast/extensions/pull/15972
Hope you like it!