Tab icon based on property

Hi and thanks for your plugin!
I have some Obsidian plugins installed, for example Excalidraw.
What I would like to have is an sort of auto-iconize feature based on properties.
When creating a new excalidraw document, the excalidraw plugins creates the excalidraw document with an "excalidraw-plugin" property with a value "parsed".
I'd be great if we can have an option for your plugin where we can have a list to add properties with values (in your settings page) + an option there for adding an icon/emoji there for the previous added properties with its value.
For example if I want to add the "excalidraw-plugin" property with a value "parsed" inside your settings plus add a drawing pen as an emoji, then every new created excalidraw document will get this tab icon independently of the file name.

Sorry for this FR, I found it already supported in another plugin. You can use the icon property in the iconize plugin: FlorianWoelki/obsidian-iconize#38 https://github.com/FlorianWoelki/obsidian-iconize/releases/tag/2.7.0

No problem! Yeah, Iconize can do something similar, just not quite as fine-grained as the feature you're describing. Automating things based on properties is cool though, so I'll actually re-open this to see if anyone else needs the same functionality. Thanks for suggesting this!

this will be so cool

I would love this feature for this use case, managing tasks as file using icons:

@KhangHLe Now I'm convinced! I love this example so much.
I'll add this to the roadmap for 1.1, since that update already involves changing icons based on file contents.

I was able to get this feature working by using Supercharged Links + Custom CSS, the additional bonus is that it works with links like Iconize does as well! I think doing some sort of integration with Supercharged Links + Style Settings will be the easiest and most flexible way to handle this feature.

P.S. It was a PITA to get the icons to appear on the side in file explorer without messing other links. If you need the CSS I did let me know

@KhangHLe You can totally share this if you want, other people might find it useful!
The good news is we'll probably have this feature in Iconic before October ends, since I've already started working on it. It's been cooking for a while because rule-based logic systems are pretty crazy to design.
Icons inside notes (like Iconize) are still a few months away, though.


there isn't any tower for race mod

the buttons are not in the game

the buttons are not in the game

same for me!


Don't need to vendor burrow package itself

When setting up the project locally I notice the burrow package itself was included in the dependency file, which to me makes no sense. Maybe I'm mistaken but I don't see the need for it.
For the tests to pass I needed to update the import statements so burrow is import in lowercase right now.
cc @toddpalino
➜  burrow git:(remove_self_dependency) ✗ go test ./...
ok  	github.com/linkedin/burrow	0.011s
?   	github.com/linkedin/burrow/core	[no test files]
ok  	github.com/linkedin/burrow/core/internal/cluster	0.128s
ok  	github.com/linkedin/burrow/core/internal/consumer	0.034s
ok  	github.com/linkedin/burrow/core/internal/evaluator	2.243s
ok  	github.com/linkedin/burrow/core/internal/helpers	2.321s
ok  	github.com/linkedin/burrow/core/internal/httpserver	0.232s
ok  	github.com/linkedin/burrow/core/internal/notifier	2.573s
ok  	github.com/linkedin/burrow/core/internal/storage	0.316s
ok  	github.com/linkedin/burrow/core/internal/zookeeper	0.117s
?   	github.com/linkedin/burrow/core/protocol	[no test files]
go test ./...  20.14s user 3.39s system 360% cpu 6.525 total

The uppercase/lowercase is specific to your checkout. The repository is uppercase Burrow, and so all the imports should have that as well. For whatever reason, you have it checked out as lowercase burrow.

I think burrow is the first golang project I encounter having an uppercase in it's name 😛
But besides the uppercase "issue", I still think removing Burrow from dependency list is a good thing, don't you?

Yeah. I had meant to do a clean build somewhere and make sure that it works fine (we'll be getting CI enabled shortly). It was probably just an oversight in creating the deps in the first place.

In theory, if you were to adjust this PR to have just the change to the Gopkg toml and lock files, it will build against Travis CI now so it will test it for me.

Fixed this up myself in #294. Thanks for the fix!


Backend test fails on correct params

Context & versions

CI

Steps to reproduce

Execute backend test on test env on CI

Actual behavior

https://github.com/IntersectMBO/govtool/actions/runs/10162188932/job/28102333675?pr=1622

Expected behavior

Should be working

Checking further on this, this test is failing on test branch because of the test environment is not up-to-date. The epoch params returned by the API on the test stack is not correct, most values are zeros. After the test environment is synced and up-to-date, this test should pass again.


"required" keyword raise error

input

select required from tab

https://stackoverflow.com/questions/64572919/why-lexer-rule-name-word-cause-parse-error

fix with #26


Get more consistent views of outstanding corpus changes.

Codecov Report
Base: 25.54% // Head: 25.54% // No change to project coverage :thumbsup:

Coverage data is based on head (5e6c1a9) compared to base (710b9fb).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##           stable     #888   +/-   ##
=======================================
  Coverage   25.54%   25.54%
=======================================
  Files          70       70
  Lines        5833     5833
  Branches      313      313
=======================================
  Hits         1490     1490
  Misses       4281     4281
  Partials       62       62

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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


chore: adds Deduplicating Tokens setting section

Description

adds Deduplicating Tokens setting section

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

:tada: This PR is included in version 1.29.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


feat(graph): open in editor while clicking node

@brenner8023 Hey, thanks for your contribution 👏 ! Already implemented this feature in #99 , and that PR uses a better resolution that will not install a new dependency. You can check it out!

Oh no, we did the same thing

@brenner8023 Hey, thanks for your contribution 👏 ! Already implemented this feature in #99 , and that PR uses a better resolution that will not install a new dependency. You can check it out!

Oh no, we did the same thing, u can close my pr.

Thanks for the PR, let's track it in #99.


Incomplete deletion of instances

Software and hardware versions
Survey 2.0.5, Tables 2.0.5, Services 2.0.5
Problem description
When images, videos, recordings, or signatures are added through Survey, that attachment is recorded to a content provider. This record doesn't get deleted when the instance is deleted.
Steps to reproduce the problem

Open Example Form (or any form with attachment) in Survey
Capture a photo or choose an image
Finalize
Delete that instance from either Survey, Tables, or Services
Browse the content provider, for example through Survey's Choose Image, and notice the deleted instance.

Expected behavior
Attachment record gets deleted when the instance is deleted. Alternatively, never put attachment records in the content provider.
Other information
We have 3 activities (MediaDelete*Activity) in Survey they handle removing records from the content provider but they are being called.
Relevant snippet
MediaChooseImageActivity.java#L166-L175
      // Add the new image to the Media content provider so that the
      // viewing is fast in Android 2.0+
      ContentValues values = new ContentValues(6);
      values.put(Images.Media.TITLE, newMedia.getName());
      values.put(Images.Media.DISPLAY_NAME, newMedia.getName());
      values.put(Images.Media.DATE_TAKEN, System.currentTimeMillis());
      values.put(Images.Media.MIME_TYPE, MEDIA_CLASS + extension.substring(1));
      values.put(Images.Media.DATA, newMedia.getAbsolutePath());

      mediaURI = getContentResolver().insert(Images.Media.EXTERNAL_CONTENT_URI, values);

Hey team!
I'm Collins HAYA, one of the newly minted contributors in the Outreachy December 2024 cohort, and I'm eager to roll up my sleeves and dive into this issue. The incomplete deletion of attachments (#69) caught my attention — especially with those elusive Delete[Media]Activity methods not being triggered.
I have experience in Android development and content providers, and I'm confident I can dig into the JavaScript hook-ups in odkCommon.js and figure out what's going wrong. If you’re open to it, I’d love to take the lead on fixing this!
Assign me the issue, and I’ll get straight to work!
Cheers,
Collins HAYA
GitHub | LinkedIn
@wbrunette , @linl33 , @khmermenten


Add upload timeout when using disk buffer to maintain fresh logs on s3.

Description
Adds a timeout when using disk buffer to maintain fresh logs on s3. Previously only disk buffer size was considered for upload criteria.
Smaller changes include cleaning up the format of the plugin's logs, and adding newlines in IR messages to make decompressed output more readable.
Next PR will add a guard preventing the same disk buffer path for two output instances. For now I just put a warning in the README.
Timeout goroutines
Adding a timeout is non-trivial. For example, consider a scenario where an application writes a few logs and never writes again. The logs will be stored in the disk buffer, and then the plugin will return execution to Fluent Bit engine. Since there are no more writes, the plugin never regains execution to send these logs. I could not think of an easy way to solve this problem.
The solution in this PR spawns goroutines for each tag. The goroutine will listen for a timeout event, and when received will send logs to s3.
Unfortunately, this multithreaded structure introduces synchronization problems. Mutexes were also added to prevent an upload while writing.
Next, I added wait groups to ensure goroutines are closed by plugin when program receives a kill signal. Without wait groups, goroutines will be terminated by OS. Could help avoid scenario where IR/Zstd postamble is added, then plugin is terminated and stream not yet uploaded to S3. On restart, the stream would have a double postamble. Probably overkill..., but trying to be safe.
Lastly, this PR should also bring some performance improvement. Not planned, just a result of design. Since the uploading is done in its own goroutine, the plugin can pass execution back to FluentBit engine sooner. This is one reason why disk buffer size is also using goroutine. Similarly why the goroutine is also used with memory buffer even though there is no timeout so not required.
Log format
Made the log format consistent for all logs. They all now start with "[out_clp_s3] ".
IR msg changes
Decompressed IR streams appear as one concatenated string. I added a space separating the log from the timestamp. I also added a new line that separates logs from each other. I spoke about newline with Kirk earlier but only added now.
Validation performed
Tested that timeout worked correctly

I guess this PR is waiting for changes from @davemarco?


vue3: SyntaxError: The requested module '/node_modules/element-resize-detector/src/element-resize-detector.js?v=820a0926' does not provide an export named 'default' (at GridLayout.vue:1:194)

Software version (please complete the following information):
vue："3.2.37",  vite:"2.6.4"   "vue-grid-layout-v3": "^3.0.3",
Describe the bug
SyntaxError:The requested module '/node_modules/element-resize-detector/src/element-resize-detector.js?v=820a0926' does not provide an export named 'default' (at GridLayout.vue:1:194)

I have this same issue, did anyone get it working?

I have this same issue, did anyone get it working?

I have this same issue, did anyone get it working?

I have this same issue, did anyone get it working?

https://blog.csdn.net/zhoudingding/article/details/128183788
vite.config.ts添加配置
    optimizeDeps: {
      include: ['element-resize-detector']
    }


Include captured logging in test standard output.

Hm, something wrong with integration tests. But I can't understand what the problem is. Could you please take a look at the proposed change?

How your code is supposed to work in absence of captured logging?

Anyway, please add integration test about captured logging

I see, this update can't be so simple :) I'll look at it closer.


Support Ready State + Start Count Down

What's needed:

Players can click on a button in their producer page to state they are ready, ready state propagates to views and admin page (this is new, normally producer pages do not send commands)
Views shows a ready state for the players who are ready (new type of curtain overlay, like the curtain and the profile page)
Admin has a Start Count Down button of some sort, which when clicked, shows the countdown in the views, 5s will do, as specified by Kingsman here
When count down hits 0, curtain overlay disappears, and gameplay shows as per normal
Count down should be communicated to players visually (and with Text to speech?) in their producer page in real time to facilitate a synchronous start amongst players (same behaviour as the twitch count down bot)

Bonus:

producer page can show a simplified view of the entire game room for all players, so players can see each other's game in real time, which is better than relying on the (much delayed)  twitch stream -> possibly hard to support all the view and room types...

To decide:

If over-enthusiastic players starts game before countdown is over, do we:

immediately show the gameplay? (i.e. hide the count down overlay immediately)
keep the count down curtain up and only hide it to reveal the game in progress when reaching 0 -> artificial sync of all players
(not recommended) buffer play frames from all players to actually make the game start at the same time (not real time any more, introduces delay between camera and gameplay)

Should the setReady call be remembered on the server, or only be a view property?

view property means that when the view receives the signal it, shows what it needs to show, but if the view needs to be refreshed, the player would have to click "ready" again, because neither the fresh view nor the server would know/remember that the player is ready (easier but more fragile)
storing data on server is more resilient, but now we must handle synchrony between view and server.

Note: This is somewhat related to the Round PR, where the admin can specify a start and end of a "round", and information from the games recorded during the round can then be retrieved from the DB (e.g. average scores, max score, num maxouts, etc.)

Done with PR https://github.com/timotheeg/nestrischamps/pull/164
Somenotes:

count down stops as soon as player starts his/her game
0 is not shown, the counter disappears as we wait for the player game to start
Admin can remove the comp messages if needed
The ready state and count down states are not stored on the server for now.


fix(templatesConfig): helpers are now following Mustache spec

Hogan still hasn't fixed it, so we implemented our own fix, but we weren't following the Mustache(5) spec either.
Changes the helper syntax from:
helpers: function (renderedText) {
  return '
' + renderedText + '
';
};

to:
helpers: function (text, render) {
  return '
' + render(text) + '
';
};

Also replaced the fat arrow of the wrapping closure by a simple function to allow Hogan to bind the currently rendered object. (This is unspecified by the Mustache spec, but is really useful)

I don't have an use case for the exposed render, even if I see some possible benefits (custom delimiters, dynamic attribute without modifying the root object, etc.) but I believe we should stick with the spec.
About the binding however, I'm using it in mutliple Shopify helpers. It might not be a "best-practice", since this means I'm doing some assertions on how the object is structured, but my best example is a "discount" percentage, that I'm calculating based on two attributes, and something like
{{# discount }}{{/ discount }}

is way more elegant than
{{# discount }}{{ price }} | {{ discounted_price }}{{/ discount }}

with a regex in the lambda to split the parameters + parsing from string to number.

LGTM

LGTM, we normally should wait for #160 but this one is currently a PR-proposal, so we merge right now


ParentDir and CurrentDir segments in the base aren't always correctly handled

Once the loop hits this arm of the match, it will ignore any ParentDir segments in the base path:
https://github.com/Manishearth/pathdiff/blob/a78acde0955a556b2bdf11e6a9efae459c4bcf80/src/lib.rs#L66
The following fails:
let path = "some/path";
assert_eq!(pathdiff::diff_paths(path, "some/foo/baz/path"), PathBuf::from("../../../path"));

// this fails and returns "../../../../../path" instead.
assert_eq!(pathdiff::diff_paths(path, "some/foo/bar/../baz/path"), PathBuf::from("../../../path"));

Yeah I'd accept a PR fixing this


creationTime in timeseriesinsights is in wrong format and is causing SDK malfunctions

Original issue
The problematic field is defined here
The default format of date-time is RFC3339Nano however the value being sent over-the-wire is RFC1123, see the creationTime field in the response below:
{
    "sku": {
        "name": "S1",
        "capacity": 1
    },
    "kind": "Standard",
    "location": "eastus2",
    "tags": {},
    "properties": {
        "dataRetentionTime": "P30D",
        "storageLimitExceededBehavior": "PurgeOldData",
        "creationTime": "Tue, 10 Mar 2020 22:21:46 GMT",
        "provisioningState": "Succeeded",
        "requestApiVersion": "2018-08-15-preview",
        "dataAccessId": "dataID",
        "dataAccessFqdn": "dataFQDN",
        "partitionKeyProperties": null
    },
    "id": "resourceId",
    "name": "resourceName",
    "type": "Microsoft.TimeSeriesInsights/Environments"
}

This also causes problem in Python SDK.
In the rest spec of timeseriesinsights, creationTime is defined as
https://github.com/Azure/azure-rest-api-specs/blob/b7a0dc7872810dc0659f16ceaf54c4205b7ba8b4/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json#L1199
This makes Python SDK being generated as
https://github.com/Azure/azure-sdk-for-python/blob/7a1fdd3f52de6158a266895e461ebc3c96def60c/sdk/timeseriesinsights/azure-mgmt-timeseriesinsights/azure/mgmt/timeseriesinsights/models/_models_py3.py#L2129
'creation_time': {'key': 'properties.creationTime', 'type': 'iso-8601'},

For GET API, the returned creation_time is actually in RFC 1123 which doesn't comply with the spec.
For PUT API, creation_time returned from the server differs depending on the status code:

For a newly created environment (PUT request with response status code 201), creationTime is in ISO 8601:
"creationTime":"2020-03-17T10:16:15+00:00"

This is because (according to service team) the response is not being deserialized from storage so it isn’t going through the conversion.

For an existing environment (PUT request with response status code 200), creationTime is in RFC 1123:
"creationTime":"Tue, 17 Mar 2020 10:16:15 GMT"

The correct value for RFC 1123 datetime in rest spec should be:
"format": "date-time-rfc1123"

@ArcturusZhang @akning-ms - any progress on this? we are blocked from implementing IOT time series in tf until this is fixed.

@ArcturusZhang @akning-ms - any progress on this? we are blocked from implementing IOT time series in tf until this is fixed.

Hi @katbyte the service team told me that they have fixed this on the service side, now the returned creationTime could comply with ISO-8601 as expected.
Therefore this issue should have been fixed without any swagger changes or SDK upgrade. Could you please have a check if this issue remains?

Hi @ArcturusZhang and @katbyte ,
The issue is now fixed on the service side. You may perform tests to validate it if you want.
We can close the issue.

Closing this issue...
Hi @katbyte if this issue persist, please feel free to reopen, thanks!


how to load simple config without sections?

I have following config sample:
#
# Use this file to override default entries in /usr/share/web/WEB-INF/classes/app.properties
#
app.web.serverURL=https://app.host.org
securitySalt=l56MPNX9I1XnTghgkRaCjlxfzyPZJR6zOjCQ3vBF8

I can not load it with any parser

With TOML you should put the values inside quotes. Example:
settings.toml file:
#
# Use this file to override default entries in /usr/share/web/WEB-INF/classes/app.properties
#
app.web.serverURL = "https://app.host.org
securitySalt = "l56MPNX9I1XnTghgkRaCjlxfzyPZJR6zOjCQ3vBF8"

script.py file:
from dynaconf import Dynaconf

settings = Dynaconf(settings_file="settings.toml")

print(settings.app.web.serverURL)
print(settings.securitySalt)

With yaml the quotes are optional but you must have attention with the spaces:
settings.yml
#
# Use this file to override default entries in /usr/share/web/WEB-INF/classes/app.properties
#
app.web.serverURL: https://app.host.org
securitySalt: l56MPNX9I1XnTghgkRaCjlxfzyPZJR6zOjCQ3vBF8


An attempt at bringing more discipline and per-stage error reporting to the reconciliation.

What does this PR do?
We chose to report the state of a remote secret using conditions that describe what is happening with it in more detail than just phase, reason and error.
This PR tries to bring more order into the reconciliation by splitting it into distinct stages, each of which perists its own condition in the status.
What issues does this PR fix or reference?
none
How to test this PR?
Apply the samples/remote-secret.yaml sample. Notice there should be two conditions in its status: one saying that the spec is valid (result of the validation stage) and another saying that the data has not yet been obtained.
status:
    conditions:
    - lastTransitionTime: "2023-05-16T10:40:32Z"
      message: ""
      reason: Valid
      status: "True"
      type: SpecValid
    - lastTransitionTime: "2023-05-16T10:40:32Z"
      message: The data of the remote secret not found in storage. Please provide
        it.
      reason: AwaitingData
      status: "False"
      type: DataObtained

After you provide data to the remote secret, e.g. by applying the samples/remote-secret-secret.yaml, you should see 3 conditions: the spec is valid, the data has been obtained and the secrets deployed.
status:
    conditions:
    - lastTransitionTime: "2023-05-16T10:40:32Z"
      message: ""
      reason: Valid
      status: "True"
      type: SpecValid
    - lastTransitionTime: "2023-05-16T10:41:02Z"
      message: ""
      reason: DataFound
      status: "True"
      type: DataObtained
    - lastTransitionTime: "2023-05-16T10:41:02Z"
      message: ""
      reason: Injected
      status: "True"
      type: Deployed
    targets:
    - namespace:
        namespace: test-target-namespace
        secretName: secret-from-remote-lr6bg
        serviceAccountNames:
        - sa-from-remote-h5925

quay.io/redhat-appstudio/pull-request-builds:spi-controller-603
quay.io/redhat-appstudio/pull-request-builds:spi-oauth-603

I was unable to pull the automatically built image so I built my own. If anyone wants to test: quay.io/pbaran/spio:remotesecret-reconcile-in-stages


Update setup.py method for retrieving the version of alluxio-py

The current method of specifying the version requires that the user
already have the requests module installed. This prevents adding
this module to any requirements.txt file.
Since other parts of the system actually use alluxio.__version__,
I have replaced how setup.py gets the current version. Using this
mechanism does this with minimal change to the rest of the tools.
I have also updated the project homepage to point to the correct
Github URL.

Thanks for the fix @pedersen


z plugin doesn't work

I update to the latest version. z plugin doesn't work after I restart the fish terminal.
I got this error:
fish: Unknown command 'z'
if I run fisher u, then it works again.

@seagle0128
You are probably just missing snippet support.

https://github.com/fisherman/fisherman#what-is-the-required-fish-version
What is the required fish version?

=2.2.0.

For snippet support, upgrade to >=2.3.0 or append the following code to your ~/.config/fish/config.fish.

for file in ~/.config/fish/conf.d/*.fish
source $file
end

Thanks for the solution!

@seagle0128 One more thing:

https://github.com/fisherman/fisherman/issues/241

If you've updated from 1.5 to 2.0, please refer to the linked issue.


test: rename late loaded metadata into custom

To distinguish between creating a custom metadata from loading it later

Current dependencies on/for this PR:

main

PR #334   👈

This stack of pull requests is managed by Graphite.


Rename getState -> useState

getState() is meant to be used as React hook, so we may use more compatible name useState(). This would for example enable proper detection as hook by eslint-plugin-react-hooks.

Sorry, I've noticed that there's a PR related to this issue: https://github.com/lukashala/react-simply/pull/6 so feel free to close this or keep as a reference.


Gitea doesn't open more than 5 tabs in browser

Gitea version (or commit ref):
1.12.0
Git version:
2.17.1
Operating system:
Ubuntu 18.04.3 LTS
Database (use [x]):

[x] PostgreSQL
[ ] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] Not relevant

Log gist:

Description
I open pull request with multiple commits, then i open 5 new tabs in browser with each commit. Everything is ok. When i open the sixth tab and further they hang with message "Waiting for available socket..." until i close one of the previously opened tabs.
It can be reproduced in any browser.
What can this be connected to?
Screenshots

can't reproduce in https://gitea.com

Updated description.

@lakostin
Just checked myself, Gitea 1.12.0, GIT 2.26.2, MySQL, hosted on Synology.
Created PR with >5 commits, opened PR and each commit multiple times. No issues.

I have this isssue on multiple instances and even on different versions. All server by docker btw

Can confirm, opening any new tabs after 6 have loaded for me results in awaiting for socket. Hosting on Docker as well.

I had same issue here, just after updating to v1.12.
It's not related just to PR's - in my case I've just opened new tabs of issues of my project - loading just stucks... and it stucks for many minutes.
CPU usage stays at typical level, logs shows that database (MySQL in my case) also respond in typical time.
Now I've just figured out, that restarting gitea didn't solved problem, but restarting proxy (apache2) does.
After restarting I cannot now reproduce it :-1:
@lakostin are you using proxy at front of gitea?

@dexterxx-pl Tried restarting my proxy in front of gitea to no effect.

I think it is related to events endpoint that uses sockets for getting events about new notifications. We should probably somehow limit sockets count per user probably

Same problem. But I could not reproduce this issue without a reverse proxy server (nginx in my case).
By the way, in Firefox pages stop loading after five clicks on the site in one tab.

Yeah I suspect this is EventSource issues.

So I don't think this is the server holding things up but rather the browser. It looks like Firefox is blocking instead of just failing out.

I can confirm this. It happened first after upgrading to 1.12. I am running gitea on Windows 10 2004 with an apache reverse proxy on Ubuntu 18.04.
I am able to reproduce this with Firefox and Chrome.

Can anyone reproduce this on try?

Can anyone reproduce this on try?

It seems I do. Both in Firefox and in Chromium.
I just have to Login and from the Dashboard open multiple commits in tabs. If then I click on "View source" it will not load until I close enough(about 5 tabs are left open) tabs.
It seems to be about 5 tabs in each browser, as I could test Chromium while Firefox tabs were still open.

Reproduced also in Gitea Version: 1.12.1 running with systemd.
Do not use any proxy server in front.

Also Reproducible
version: 1.12.1
proxy: apache 2.4
env: docker container

5-6 clicks and gitea hangs, but when I open a private window and login, gitea works and is accessible again.
Then I tried to reproduce this issue within a private window -> no chance
Its interesting that in the debugger inside a private window I can see connections to /user/events (See the curl cmd below) while navigating, but not within a regular browser tab
When doing the last click, no communications occur (Checked proxy access logs)

curl 'https://GITEA_HOST/user/events' -H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:77.0) Gecko/20100101 Firefox/77.0' -H 'Accept: text/event-stream' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'DNT: 1' -H 'Connection: keep-alive' -H 'Cookie: lang=en-US; i_like_gitea=33dxxxxxxxxx270; _csrf=zIz1_5HrJzMfqWC4XXXXXXXXXXXXXXXXXXXXXOTQyNw' -H 'Pragma: no-cache' -H 'Cache-Control: no-cache'

This also happens while normally browsing gitea, you do not need to open 5 different tabs at the same time. I have ran into this problem just by navigating through my commits and repository files, and have been running into it since at least version 1.11. I am now using 1.12.1 with the same identical problem.
Gitea is running behind an Apache2 reverse proxy, no docker. MySQL database. Ubuntu 20.04 LTS.

I can also reproduce this, the /user/events  keep pending.
Related to https://developer.mozilla.org/en-US/docs/Web/API/EventSource and HTTP/2.
I've patched my own gitea to disable javascript going to /user/events and everythings works fine now.
There should be an option to disable this when people don't have access to HTTP/2 loadbalancers.

I was seeing this issue in Firefox, clicking around gitea a bunch would eventually cause requests to hang and never complete, essentially freezing the app. I noticed in the network debugger a lot of the requests were being fulfilled by the Service Worker.
I was able to fix my issue by going into about:debugging and unregistering the service worker for my gitea domain. Now I can't reproduce the issue. The service worker appeared there after I re-opened for the first time, but all seems good now.

Same here with Firefox and Chrome too.

Sorry about this. This one is my fault.
There are two workarounds:
[ui.notification]
EVENT_SOURCE_UPDATE_TIME=0

or use HTTP/2.0.
I've finally managed to hack up a fix and will push up a PR to push the EventSource stuff into a SharedWorker but it will need review.

Sorry about this. This one is my fault.
There are two workarounds:
[ui.notification]
EVENT_SOURCE_UPDATE_TIME=0

or use HTTP/2.0.
I've finally managed to hack up a fix and will push up a PR to push the EventSource stuff into a SharedWorker but it will need review.

Very weird, since my server only allows HTTP 2.0 connections and I still manage to have this issue... Are you sure about the second fix? I'm starting to doubt that my configuration could be faulty, even though the Firefox dev console says I'm using HTTP 2.0...

[ui.notification]
EVENT_SOURCE_UPDATE_TIME=0

Doesn't appear to work for me, not sure if I just did something wrong.. Will try and figure out switching to HTTP/2.0.

@ChaseHall try -1 instead of 0?

@zeripath -1 just results in a 503. Nothing useful in docker logs about it..

I can second that, same issues as @ChaseHall

@ChaseHall @42wim - sorry you're right - that's another bug with this too. :disappointed:

OK #12095 will fix that too. Setting EVENT_SOURCE_UPDATE_TIME=-1 will disable all EventSources from that point.


apiv1.IdentityMappingRequest should not require authentic_source_person_id

The identity element of the /identity/mapping API spec is based on the Model.Identity in which authentic_source_person_id is required. However the point of the API call is to get the authentic_source_person_id. The type of identity element in the apiv1.IdentityMappingRequest should therefore be different.

authentic_source_person_id, family_name, given_name or date_of_birth is not required, that has been change as it seems. I would like to avoid multiple types that does pretty much the same thing since it's easy to miss.


Replace hyper with reqwest?

Since reqwest 0.9 is based on hyper 0.12 and offers a stable async client wouldn't it useful to replace the hyper client with reqwest.
Benefits:

cleaner code with the removed type parameters
redirects handled by reqwest
proxy support
rustls support

the changes are straightforward: https://github.com/nickelc/hubcaps/tree/reqwest

That diff looks like all win to me, except for the jsonwebtoken dependency.

+timeouts. I'd be up open to a pr for this

That diff looks like all win to me, except for the jsonwebtoken dependency.

i know. jsonwebtoken 6 from the next branch is required at the moment because of its ring dependency and the requirements of the reqwest deps.
next version is on the way: https://github.com/Keats/jsonwebtoken/pull/75

+timeouts.

?


Set default language to None.

This would make the default behaviour of the CLI to auto-detect the language.
To-Do:
-> Recommend people to set explicit language.

Made a new release!


[SoftJSException]  Strange symbol   ..le..

"SoftJSException":"undefined is not a function (evaluating 'l[e]()')",
le this is so strange.I can not get any clue to solve this issue..And this issue is not happen 100%.
I got the log from 2% user. I want to know how to find some clue to solve this issue?
Thank you.

Do you have any code to support this illustrating where it might be happening? You haven;t included much information.

Hi @Nirvana-icy! Agreed with @MossP above, this is a bit hard to trace. That said, it looks like this is some code on your end that is throwing an exception that is running through here: https://github.com/facebook/react-native/blob/0.8-stable/React/Modules/RCTExceptionsManager.m#L39-L48
@sahrens it looks like there is a lingering TODO in there, perhaps not relevant to OSS

@brentvatne Thank you.I got the clue in the jsBundle which is compressed.As the log from user is match with the compressed js file.So it made a little difficult to debug.
Do we have bettter ways to debug in this situation?
Finally thank you all for the support.

@Nirvana-icy - we definitely need some better tracing here, being discussed in #2040


Prefixes in subsections are removed from rendering

The problem
I moved my custom section from v3 to v4. What my section does is similar to the hg section, but instead of showing the branch, it shows the commit name as I work in an environment with stacked diffs instead of branches, hence the first line of the commit is what is like my branch name. (hg branch returns default so I cannot use that, but that's besides the question.)
This is what I'm expecting it to output when I have untracked changes:
on ☿ COMMIT TITLE [?]

But this is what it outputs:
on ☿ COMMIT TITLE?]

This seems to be due to calling spaceship::section::render on sections multiple times?
This is the section that gets created in status_section from the code below:

(·|·red·|·[·|·]·|··|·?·|·).

When that is passed to spaceship::section::render it outputs:

%{%B%}[%{%b%}%{%B%F{red}%}?%{%b%f%}%{%B%}]%{%b%}.

At this point we still have the prefix. If we then pass it again to spaceship::section we get:

(·|··|··|··|··|·%{%B%}[%{%b%}%{%B%F{red}%}?%{%b%f%}%{%B%}]%{%b%}·|·)

Finally if we pass that again to spaceship::section::render we get:

%{%B%F{}%}%{%B%}[%{%b%}%{%B%F{red}%}?%{%b%f%}%{%B%}]%{%b%}%{%b%f%}

I'm not entirely sure whether it's misinterpreting it at the last or second to last step. But it seems to be going wrong in one of those because when returning the first section part, the prefix is still there.
Relevant Zsh configuration
This is hg_commit.zsh that I source and add as a section to my prompt:
# ------------------------------------------------------------------------------
# Configuration
# ------------------------------------------------------------------------------

SPACESHIP_HG_COMMIT_ASYNC="${SPACESHIP_HG_COMMIT_ASYNC=true}"
SPACESHIP_HG_COMMIT_SHOW="${SPACESHIP_HG_COMMIT_SHOW=true}"
SPACESHIP_HG_COMMIT_PREFIX="${SPACESHIP_HG_COMMIT_PREFIX="on "}"
SPACESHIP_HG_COMMIT_SUFFIX="${SPACESHIP_HG_COMMIT_SUFFIX=" "}"
SPACESHIP_HG_COMMIT_SYMBOL="${SPACESHIP_HG_COMMIT_SYMBOL="☿ "}"
SPACESHIP_HG_COMMIT_COLOR="${SPACESHIP_HG_COMMIT_COLOR="magenta"}"

SPACESHIP_HG_STATUS_SHOW="${SPACESHIP_HG_STATUS_SHOW=true}"
SPACESHIP_HG_STATUS_PREFIX="${SPACESHIP_HG_STATUS_PREFIX=" ["}"
SPACESHIP_HG_STATUS_SUFFIX="${SPACESHIP_HG_STATUS_SUFFIX="]"}"
SPACESHIP_HG_STATUS_COLOR="${SPACESHIP_HG_STATUS_COLOR="red"}"
SPACESHIP_HG_STATUS_UNTRACKED="${SPACESHIP_HG_STATUS_UNTRACKED="?"}"
SPACESHIP_HG_STATUS_ADDED="${SPACESHIP_HG_STATUS_ADDED="+"}"
SPACESHIP_HG_STATUS_MODIFIED="${SPACESHIP_HG_STATUD_MODIFIED="!"}"
SPACESHIP_HG_STATUS_DELETED="${SPACESHIP_HG_STATUS_DELETED="✘"}"

# ------------------------------------------------------------------------------
# Section
# ------------------------------------------------------------------------------

commit_title() {
    local curr_hash="$(hg whereami)"
    if [ "$curr_hash" != "$__HG_CACHED_HASH" ]
    then
        local log_output=$(hg log -r . -T '{node} {desc|firstline}\n')
        if [ -n "$log_output" ]
        then
            __HG_CACHED_HASH="${log_output%% *}"
            __HG_CACHED_TITLE="${log_output#${__HG_CACHED_HASH} }"
        fi
    fi
    echo "$__HG_CACHED_TITLE"
}

spaceship_hg_commit() {
    [[ $SPACESHIP_HG_COMMIT_SHOW == false ]] && return

    spaceship::is_hg || return

    local 'hg_info'

    if ! hg_info=$(hg log -l1 | sed "4q;d" | cut -d' ' -f 2- | awk '{$1=$1};1' | awk -v len=60 '{ if (length($0) > len) print substr($0, 1, len-3) "..."; else print; }'); then
        # Failed, show no section.
        return
    fi

    if [[ -z $hg_info ]]; then
        return
    fi

    local prefix_section=$(spaceship::section --color white $SPACESHIP_HG_COMMIT_PREFIX)
    local commit_section=$(spaceship::section --color $SPACESHIP_HG_COMMIT_COLOR --symbol $SPACESHIP_HG_COMMIT_SYMBOL $hg_info)

    local INDEX=$(hg status 2>/dev/null)
    local hg_status=""

    # Indicators are suffixed instead of prefixed to each other to
    # provide uniform view across git and mercurial indicators
    if $(echo "$INDEX" | grep -E '^\? ' &> /dev/null); then
        hg_status="$SPACESHIP_HG_STATUS_UNTRACKED$hg_status"
    fi
    if $(echo "$INDEX" | grep -E '^A ' &> /dev/null); then
        hg_status="$SPACESHIP_HG_STATUS_ADDED$hg_status"
    fi
    if $(echo "$INDEX" | grep -E '^M ' &> /dev/null); then
        hg_status="$SPACESHIP_HG_STATUS_MODIFIED$hg_status"
    fi
    if $(echo "$INDEX" | grep -E '^(R|!)' &> /dev/null); then
        hg_status="$SPACESHIP_HG_STATUS_DELETED$hg_status"
    fi

    local status_section=" "

    if [[ -n $hg_status ]]; then
        status_section="$(spaceship::section --color $SPACESHIP_HG_STATUS_COLOR --prefix $SPACESHIP_HG_STATUS_PREFIX --suffix $SPACESHIP_HG_STATUS_SUFFIX $hg_status)"
    fi

    spaceship::section \
        "$(spaceship::section::render $prefix_section)$(spaceship::section::render $commit_section)$(spaceship::section::render $status_section)"
}

You can replace the last section command with:
spaceship::section \
        "$(spaceship::section::render $status_section)"

If you want to focus on the prefix problem addressed here.

Linux
Do you use any Zsh framework or plugin manager?
oh-my-zsh
Which terminal emulator do you use?
kitty / VS Code Integrated Terminal
Additional information
You can find my dotfiles here: https://github.com/AndreasBackx/dotfiles.
Also additional question: I tried to convert this to something similar to what the latest hg section looks like, but I cannot seem to use spaceship::precompile due to it not being initialised yet. Is there a way for custom sections to use these APIs? I thought it would be more ideal to change this code to use subsections, but I cannot find much documentation on that besides a reference to the hg and docker sections at the bottom of this page: https://spaceship-prompt.sh/api/section/.

Hey! Thanks for reaching out.
We have recently changed how our subsections are being rendered. We recommend using spaceship::refresh_section --sync for that matter. You can also use spaceship::core::compose_order to take advantage of order composing and to be able to compose a section with spaceship add|remove.

@denysdovhan thanks for getting back. I've been wanting to improve this, unfortunately from what I can tell there is not documentation available for most of these functions? Is it possible to document this? If it's there, please let me know as I've been unable to find it so far hence me asking about it (and the precompile stuff for custom user sections) in the additional information section of the issue. 😅

@denysdovhan apologies, would it be possible to have a look? I would love to give feedback on possible documentation. Trying my hand at rewriting my custom section using the documentation. :)


Swift Lint

Description

Added swift lint and updated Swift syntax to comply to RW guide style.
Main changes to existing code:

Favour type inference
Remove use of self when not needed
Remove trailing white spaces

Updated Readme example documentation to match new Swift 3.0 syntax
Updated changelog

Status

[x] Review

Current coverage is 100% (diff: 100%)

Merging #22 into master will not change coverage

@@           master   #22   diff @@
===================================
  Files           6     6
  Lines          87   101    +14
  Methods         0     0
  Messages        0     0
  Branches        0     0
===================================
+ Hits           87   101    +14
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update 993b806...7bc924a


Support symbol and non-enumerable properties when comparing objects

This replaces use of Object.keys with Reflect.ownKeys which lists also symbol and non-enumerable keys.
Example:
const o = {
  [Symbol.match]: true
}

Object.defineProperty(o, 'key', { value: 'example });

Object.keys(o)
// -> []

Reflect.ownKeys(o)
// -> ["key", Symbol(Symbol.match)]

Hey @robinpokorny,
Thank you for the PR, but there is a problem. We're trying to make our lib compatible with Internet Explorer 11, but it looks like neither your solution, nor any of ours allow to iterate over Symbols.
Even so I like your implementation, it won't work in IE11. I think we can't merge your PR, sorry 😞


Relax requirements

This PR makes general requirements more flexible and removes some of the deprecated code and packages from the codebase.

Decrease in coverage b/c of a deleted file


Provide build for WASM on node

Issue Description
I would like to run face-api using tensorflow in WASM.
Steps to Reproduce
When loading face-api, it automatically requires tfjs-node, which loads libtensorflow, which is not compatible with my architecture.
Expected Behavior
I'd like to have a node.js build that requires tfjs, so I can setBackend(wasm)
**Environment

Module version? 1.5
Built-in demo or custom code? custom
Type of module used (e.g. js, esm, esm-nobundle)? js
Browser or NodeJS and version (e.g. NodeJS 14.15 or Chrome 89)? Node.js 14.x
OS and Hardware platform (e.g. Windows 10, Ubuntu Linux on x64, Android 10)? Ubuntu Linux
Packager (if any) (e.g, webpack, rollup, parcel, esbuild, etc.)? -

ive added nodejs with wasm target, library is in dist/face-api.node-wasm.js
it expects that '@tensorflow/tfjs' and '@tensorflow/tfjs-backend-wasm' are manually imported before faceapi
Compile: { name: 'faceapi/node/wasm', format: 'cjs', platform: 'node', input: 'src/index.ts', output: 'dist/face-api.node-wasm.js', files: 162, inputBytes: 234871, outputBytes: 174962 }

Thank you so much :)


⚠ Bofrost.fr has degraded performance

In 40fc494, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1873 ms

Resolved: Bofrost.fr performance has improved in 9b040ef after 14 minutes.


Markup immediately before =cut crashes Emacs (eats all RAM)

This probably isn't an issue of tree-sitter-pod, but I'd like to narrow it down.
If I open a file with the following two lines in Emacs and parse it with tree-sitter, it eats all RAM and then gets killed.
C<
=cut

This is invalid POD, but it "just happens" when I type any markup immediately before the line containing =cut.
The same incomplete markup causes no problem when there's an empty line before =cut:
C<

=cut

...In Emacs, this gives the parse result of (ERROR (sequence_letter) (cut_directive)), which seems fine.
Could somebody please try the same invalid POD in neovim to narrow down whether the culprit is on the side of Emacs or on the side of Tree-sitter?  Or alternatively tell me what I'm supposed to do with the neovim snippet at https://github.com/tree-sitter-perl/tree-sitter-perl?

Thanks so much for this test case!
I can confirm that it loops infinitely even using the tree-sitter command line (tree-sitter parse $filename in the repo).
Will dig into this

@HaraldJoerg I just pushed a PR that should fix this. Can you try out that branch and confirm?

Thanks for the fix!  I applied your PR ... and it works fine!
I forked the repository so that I could push a "release" branch containing src/parser.c and re-installed it using the Emacs procedure.
(Also, I should have thought of the tree-sitter command line)


Use Black code formatter

On the one hand, I understand, that 2 commits are easier to read, on the other, first commit then will not pass checks by itself, hence not self-contained. I prefer to leave this as is, especially, since it's less than 100 LOC.


Error encounter when running script in SQL AWS RDS

Description of the issue
Our master user encounter an error while running the IndexOptimize.sql in SQL Server AWS RDS.
SQL Server version and edition
Execute SELECT @@VERSION
Microsoft SQL Server 2017 (RTM-CU19) (KB4535007) - 14.0.3281.6 (X64)
Jan 23 2020 21:00:04
Copyright (C) 2017 Microsoft Corporation
Enterprise Edition: Core-based Licensing (64-bit) on Windows Server 2016 Datacenter 10.0  (Build 14393: ) (Hypervis
Version of the script
Check the header of the stored procedure
Version: 2020-12-31 18:58:56
What command are you executing?
IndexOptimize.sql
What output are you getting?
CREATE PROCEDURE permission denied in database 'master'.
Msg 208, Level 16, State 6, Procedure IndexOptimize, Line 1 [Batch Start Line 11]
Invalid object name 'dbo.IndexOptimize'.

You can't use the master database on RDS for this. Create an alternative database such as utility and add
USE utility to the start of the script.


UI  - Should flip card to default state

add
@blur = "flipped = false"
in CreaditCard.vue at 'input' on line 59 would be great.
This is going to set the card view to default state (front) when click out of cvv field.

add
@blur = "flipped = false"
in CreaditCard.vue at 'input' on line 59 would be great.
This is going to set the card view to default state (front) when click out of cvv field.

thanks, will add it!


When muting the user still appears as unmuted in the web app

When muting the user still appears as unmuted in the web app although the user really is muted and just appears not to be.

Will probably be fixed by #124


Weird Error with UglifyJS Plugin

I'm a recent convert to webpack.
I have the following config file.
var webpack = require("webpack"),
    path = require("path");

var hotloader = function(file) {
    var loader = [
        "webpack-dev-server/client?http://localhost:3000", "webpack/hot/only-dev-server"
    ];

    if (Array.isArray(file)) {
        loader.concat(file);

    } else {
        loader.push(file);
    }

    return loader;
};

module.exports = {
    entry: {
        "vendor": [
            "react",
            "alt",
            "immutable",
        ],
        "app1": hotloader("./src/app1.js"),
        "app2": hotloader("./src/app2.js")
    },
    output: {
        path: path.join(__dirname, "dev"),
        filename: "[name].js",
        sourceMapFileName: "[name].js.map",
        publicPath: "http://localhost:3000/dev/"
    },
    module: {
        loaders: [
            {
                test: /\.js$/,
                loaders: ["react-hot", "babel?stage=0"],
                include: path.join(__dirname, "src")
            }
        ]
    },
    devtool: "source-map",
    external: {
        react: {
            root: "React",
            commonjs2: "react",
            commonjs: "react",
            amd: "react"
        },
        jquery: {
            root: "jQuery",
            commonjs2: "jquery",
            commonjs: "jquery",
            amd: "jquery"
        }
    },
    plugins: [
        new webpack.HotModuleReplacementPlugin(),
        new webpack.NoErrorsPlugin(),
        new webpack.optimize.OccurenceOrderPlugin(),
        new webpack.DefinePlugin({
            "process.env": {
                "NODE_ENV": JSON.stringify("production")
            }
        }),
        new webpack.optimize.UglifyJsPlugin({
            compressor: {
                warnings: false
            },
            mangle: false
        }),
        new webpack.optimize.CommonsChunkPlugin({
            name: "vendor",
            filename: "vendor.js",
            minChunks: Infinity
        })
    ]
};

When I comment out the UglifyJS Plugin, the compiled code errors like could not read 'Symbol()' of undefined. Otherwise everything works fine
The error is thrown from a file from alt plugin.

@vkbansal Can you try with the current version?

Closing due to inactivity. You could try Stack Overflow if this is still relevant.


Use net472 instead of net461

As TargetFramework

Thanks @vanillajonathan for help updating this! #sign-off


Updated gitignore to remove VC.opendb files...

Hi @alecont, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Ale Contenti). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;


Building hue fails in no-internet env

Building hue fails, trace is below. Need your help!
I'm building in a no-internet environment. All components are in desktop/core/ext-py/, but it tries to download them from internet. How can I fix it?! OS is centos-7.
Thanks in advance

--- Building egg for cryptography-1.3.1
make[2]: Leaving directory /ws/build/hue/rpm/BUILD/hue-release-4.1.0/desktop/core' make[1]: Leaving directory /ws/build/hue/rpm/BUILD/hue-release-4.1.0/desktop'
RPM build errors:

Task :hue-rpm FAILED
Download error on https://pypi.python.org/simple/cffi/: [Errno 101] Network is unreachable -- Some packages may not be found!
Couldn't find index page for 'cffi' (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [Errno 101] Network is unreachable -- Some packages may not be found!
No local packages or download links found for cffi>=1.4.1
Traceback (most recent call last):
File "", line 1, in
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 238, in run_setup
raise
File "/usr/lib64/python2.7/contextlib.py", line 35, in exit
self.gen.throw(type, value, traceback)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 191, in setup_context
yield
File "/usr/lib64/python2.7/contextlib.py", line 35, in exit
self.gen.throw(type, value, traceback)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 162, in save_modules
saved_exc.resume()
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 137, in resume
compat.reraise(type, exc, self._tb)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 150, in save_modules
yield saved
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 191, in setup_context
yield
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 235, in run_setup
DirectorySandbox(setup_dir).run(runner)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 265, in run
return func()
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 234, in runner
_execfile(setup_script, ns)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/sandbox.py", line 46, in _execfile
exec(code, globals, locals)
File "setup.py", line 335, in
**keywords_with_side_effects(sys.argv)
File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
_setup_distribution = dist = klass(attrs)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/dist.py", line 265, in init
self.fetch_build_eggs(attrs['setup_requires'])
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/dist.py", line 311, in fetch_build_eggs
replace_conflicting=True,
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/pkg_resources/init.py", line 797, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/pkg_resources/init.py", line 1047, in best_match
return self.obtain(req, installer)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/pkg_resources/init.py", line 1059, in obtain
return installer(requirement)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/dist.py", line 378, in fetch_build_egg
return cmd.easy_install(req)
File "/ws/build/hue/rpm/BUILD/hue-release-4.1.0/build/env/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 617, in easy_install
raise DistutilsError(msg)
distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('cffi>=1.4.1')
make[2]: *** [/ws/build/hue/rpm/BUILD/hue-release-4.1.0/desktop/core/build/cryptography-1.3.1/egg.stamp] Error 1
make[1]: *** [.recursive-env-install/core] Error 2
make: *** [desktop] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.hVcKwa (%build)
Bad exit status from /var/tmp/rpm-tmp.hVcKwa (%build)
5 actionable tasks: 5 executed

FAILURE: Build failed with an exception.

Where:
Script '/ws/packages.gradle' line: 469

What went wrong:
Execution failed for task ':hue-rpm'.

Process 'command 'rpmbuild'' finished with non-zero exit value 1

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 40s

Can you confirm you installed all dependencies https://docs.gethue.com/latest/administrator/installation/dependencies/ ?

Can you confirm you installed all dependencies https://docs.gethue.com/latest/administrator/installation/dependencies/ ?

Yes, i confirm. i have two absolutely identical machines, the only difference is that one has internet connection and can download and install dependencies (like ['cffi>=1.4.1'] and others) and another cannot. But all these dependencies are already in desktop/core/ext-py/ and it is possible to install them manually one by one, but i need them to be installed automatically, as it was planned. But i can't understand why builder doesn't see them...

Thanks for the infos and should get much simpler after https://issues.cloudera.org/browse/HUE-8737


Uncaught Error: autobahn.Connection required

Trying to reuse the solution from this example (https://github.com/brycedarling/poloniex-ticker/blob/master/src/configureStore.js). But I get the error

This is my store creator:
import { createStore, applyMiddleware, compose } from 'redux';
import { routerMiddleware } from 'react-router-redux';
import thunk from 'redux-thunk';
import createHistory from 'history/createBrowserHistory';
import rootReducer from './reducers/root.js';
import { Connection } from 'autobahn-browser';
import reduxAutobahn from 'redux-autobahn-js';

const configureStore = (initialState = {}) => {
  const connection = new Connection({
    url: 'wss://niwamp.comhem.com/ws',
    realm: 'realm1'
  });

  const middleware = [
    thunk,
    routerMiddleware(history),
    reduxAutobahn.middleware(connection)
  ];
  const enhancers = [];

  if (process.env.NODE_ENV === 'development') {
    const devToolsExtension = window.devToolsExtension;

    if (typeof devToolsExtension === 'function') {
      enhancers.push(devToolsExtension());
    }
  }

  const composedEnhancers = compose(
    applyMiddleware(...middleware),
    ...enhancers
  );

  const store = createStore(rootReducer, initialState, composedEnhancers);

  return store;
};
export const history = createHistory();
export default configureStore;

The only difference I see between yours and mine is this line, from yours:
import { Connection } from 'autobahn-browser';

And from my poloniex-ticker project:
import { Connection } from 'autobahn';

In redux-autobahn-js/src/middleware.js it imports Connection from autobahn and uses it in an instanceof check on line 336:
import { Connection } from 'autobahn';
.....
const createMiddleware = (connection) => {
  assert(connection instanceof Connection, 'autobahn.Connection required');

I think a "good enough" fix might be to replace that assert (assuming both of the Connection objects we are using are interchangeable here)... perhaps:
const createMiddleware = (connection) => {
  assert(typeof connection === 'object', 'autobahn.Connection required');

I'm at work right now, so if you are up to giving it a try and see if it fixes it for you, a PR would be appreciated! :)

Thanks for the response @brycedarling, trying it out.

After looking at it again, a safer check would probably be:
assert(connection && typeof connection.open === 'function' && typeof connection.close === 'function', 'autobahn.Connection required');


Post schedule

Sometime I write my post at night and forgot to publish it. Have a post schedule plugin would be great.
AFAIK only wardrobe have this feature. But wardrobe are outdated (latest commit Apr 2014).

Actually Grav already supports this.  Simply set a `publish_date' in the future and your post will get published appropriately. http://learn.getgrav.org/content/headers#publish-date


mitigation for falco#1909 - fix(k8s-client): handle network related exceptions

Signed-off-by: Aldo Lacuku<EMAIL_ADDRESS>
What type of PR is this?

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

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

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

/area API-version

/area build

/area CI

/area driver-kmod

/area driver-bpf

/area driver-modern-bpf

/area libscap-engine-bpf

/area libscap-engine-gvisor

/area libscap-engine-kmod

/area libscap-engine-modern-bpf

/area libscap-engine-nodriver

/area libscap-engine-noop

/area libscap-engine-source-plugin

/area libscap-engine-savefile

/area libscap-engine-udig

/area libscap

/area libpman

/area libsinsp

/area tests

/area proposals

Does this PR require a change in the driver versions?

/version driver-API-version-major

/version driver-API-version-minor

/version driver-API-version-patch

/version driver-SCHEMA-version-major

/version driver-SCHEMA-version-minor

/version driver-SCHEMA-version-patch

What this PR does / why we need it:
When Falco is configured to fetch the metadata from a k8s cluster it fetches all the metadata(pods, deployments, nodes, namespaces, replicasets, daemonsets, replicationcontrollers and services) at start-up time and then watches for new events from the api-server.
For each k8s object, there is a different handler that opens a connection toward the api-server. It could happen that sometimes the api-server throttles the requests causing falco to crash falcosecurity/falco#1909.
This PR is an initial effort to handle the case when the api-server throttles the initial meta-data fetching by handling the error and retrying next time when Falco collects the k8s metadata. The proposed solution is lightweight since it does not delete and recreate all the handlers (k8s_handler and socket_handler) but just resets their state in order to be reused (switch to watching mode) the next time Falco collects the k8s metadata (the default options set the k8s metadata collection to be done every 1 second).
Testing:
I was able to set up a k8s cluster which throttles the falco requests when retrieving pods' metadata:
Thu Sep 15 13:07:23 2022: [libs]: Socket handler (k8s_pod_handler_state) Retrieving all data in blocking mode ...
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler (k8s_pod_handler_state)::collect_data() error [https://<IP_ADDRESS>:6443], receiving data from /api/v1/pods?fieldSelector=status.phase!=Failed,status.phase!=Unknown,status.phase!=Succeeded,spec.nodeName=control-plane&pretty=false... m_blocking_socket=1, m_watching=0 SSL Socket handler (k8s_pod_handler_state): Connection closed.
...
Thu Sep 15 13:07:23 2022: [libs]: Socket handler (k8s_pod_handler_state) Retrieving all data in blocking mode ...
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler adding event, (k8s_pod_handler_state) has 0 events from https://<IP_ADDRESS>:6443
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler added event, (k8s_pod_handler_state) has 1 events from https://<IP_ADDRESS>:6443
...
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler (k8s_pod_handler_state) switching to watch connection for https://<IP_ADDRESS>:6443/api/v1/pods?fieldSelector=status.phase!=Failed,status.phase!=Unknown,status.phase!=Succeeded,spec.nodeName=control-plane&pretty=false
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler (k8s_pod_handler_event) k8s_handler::connect() adding handler to collector
Thu Sep 15 13:07:23 2022: [libs]: Socket collector: handler [k8s_pod_handler_event] added socket (25)
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler (k8s_pod_handler_event)::collect_data(), checking connection to https://<IP_ADDRESS>:6443
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler (k8s_pod_handler_event) check_enabled() enabling socket in collector
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler (k8s_pod_handler_event)::collect_data() [https://<IP_ADDRESS>:6443], requesting data from /api/v1/watch/pods?fieldSelector=status.phase!=Failed,status.phase!=Unknown,status.phase!=Succeeded,spec.nodeName=control-plane&pretty=false... m_blocking_socket=0, m_watching=1
Thu Sep 15 13:07:23 2022: [libs]: k8s_handler (k8s_pod_handler_event) sending request to https://<IP_ADDRESS>:6443/api/v1/watch/pods?fieldSelector=status.phase!=Failed,status.phase!=Unknown,status.phase!=Succeeded,spec.nodeName=control-plane&pretty=false
Thu Sep 15 13:07:23 2022: [libs]: Socket handler (k8s_pod_handler_event) socket=25, m_ssl_connection=94519583057200
Thu Sep 15 13:07:23 2022: [libs]: GET /api/v1/watch/pods?fieldSelector=status.phase!=Failed,status.phase!=Unknown,status.phase!=Succeeded,spec.nodeName=control-plane&pretty=false HTTP/1.1
...

We can see that the error is logged but falco did not exit. It retries later and after the initial metadata fetching it switches to the watching mode for the k8s_pod_handler and process all the pods..
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
The branch is temporarily based on the 0.7.0 to easily test it with Falco 0.32.2 (a released version affected by the bug).
Does this PR introduce a user-facing change?:

NONE

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: alacuku
Once this PR has been reviewed and has the lgtm label, please assign gnosek for approval by writing /assign @gnosek in a comment. For more information see:The Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

@leogr @LucaGuerra @Andreagit97 @FedeDP @jasondellaluce

Updated the PR description with some info regarding the testing.

/milestone 0.9.0

As discussed with @Andreagit97 and @FedeDP
we are too late to test this, unfortunately, so:
/milestone 0.10.0

Same as https://github.com/falcosecurity/libs/pull/591
I would give it an attempt, let's see if during the release process we are enough confident to merge it
/milestone 0.9.0

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

Needs approval from an approver in each of these files:

OWNERS [leogr]

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

LGTM label has been added.  Git tree hash: 4e7375b74cc9640b6475ddf6cd26c548c57d9654

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

Needs approval from an approver in each of these files:

OWNERS [LucaGuerra,leogr]

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


wrong cast to string in DialKDBTimeout

In https://github.com/sv/kdbgo/blob/master/kdb.go#L208 the port, which is an int value is casted to a string by string(port).
This is not correct.
Consider using strconv.Itoa(port) or fmt.Sprintf.

This is non-issue in https://github.com/sv/kdbgo/blob/v1beta/kdb.go branch. Will fix in current

fixed in https://github.com/sv/kdbgo/commit/588f574a29a2f1456de0505b063ccdcc535e3208


fix: check for options.cleanupFiles

I noticed that files were still being cleaned up after setting options.cleanupFiles to false

Great find @duncannah and thanks for the PR 😊


[BUG] Drag and drop text should show depending on OS.

Description
I tried resizing my browser to smaller screen, but the drag and drop text disappears.
I think the text should remain, but only disappear if the website is being view from Tablet or mobile phone.
Screenshots

Additional information
No response
🥦 Browser
Google Chrome
👀 Have you checked if this issue has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Contributing Guidelines?

[X] I have read and understood the rules in the Contributing Guidelines

Are you willing to work on this issue ?
Yes I am willing to submit a PR!

Well technically that should be the case, user wise, it doesn't make sense as much, here's why I think so:

90% of users will likely not do this, except they have a very tiny screen.

Let me know if you still don't agree

Actually, You're right. I just felt everything needs to look almost perfect.
You may close the issue.

Alright awesome


i cant edit kubernetes-dashboard anymore after changing the type to nodeport

Summary
i changed the type of kubernetes-dashboard to nodeport but now everytime i try to use edit it opens the file but when i do :wq i get the error "error: services "kubernetes-dashboard" is invalid"
What Should Happen Instead?
it should just change what i want it to change
Reproduction Steps
do microk8s kubectl -n kube-system edit service kubernetes-dashboard and try to :wq

Hi @tgk-be
What is the output of microk8s kubectl get service -n kube-system kubernetes-dashboard -o yaml? What change are you trying to apply?

apiVersion: v1
kind: Service
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"k8s-app":"kubernetes-dashboard"},"name":"kubernetes-dashboard","namespace":"kube-system"},"spec":{"ports":[{"port":443,"targetPort":8443}],"selector":{"k8s-app":"kubernetes-dashboard"}}}
creationTimestamp: "2022-11-01T21:33:49Z"
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kube-system
resourceVersion: "84780"
uid: 02f85e3e-e264-4cb2-bbb4-72e4608fc0e9
spec:
clusterIP: <IP_ADDRESS>
clusterIPs:

<IP_ADDRESS>
externalTrafficPolicy: Cluster
internalTrafficPolicy: Cluster
ipFamilies:
IPv4
ipFamilyPolicy: SingleStack
ports:
nodePort: 32426
port: 443
protocol: TCP
targetPort: 8443
selector:
k8s-app: kubernetes-dashboard
sessionAffinity: None
type: NodePort
status:
loadBalancer: {}

well when i use edit it shows me this and i edit the nodeport and then i get the error
"error: services "kubernetes-dashboard" is invalid
A copy of your changes has been stored to "/tmp/kubectl-edit-3854180713.yaml""

Are you trying to change the service type to something else from NodePort? I would suggest trying to remove the nodePort:  fields as well in this case. Also, apologies but the formatting from github does not help me read the yaml properly

i am trying to change the nodeport like the port its on. but the issue is
basically everytime i change anything it says that its not a valid
service even tho it shows me the yaml when i do edit.
also if you want i can mail it over to you so you have it normally
Op za 5 nov. 2022 om 13:05 schreef Angelos Kolaitis <
@.***>:

Are you trying to change the service type to something else from NodePort?
I would suggest trying to remove the nodePort: fields as well in this
case. Also, apologies but the formatting from github does not help me read
the yaml properly
—
Reply to this email directly, view it on GitHub
https://github.com/canonical/microk8s/issues/3540#issuecomment-1304521838,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOOQ6X27UMTEA2QQO5MDQKDWGZERDANCNFSM6AAAAAARWMC6EA
.
You are receiving this because you were mentioned.Message ID:
@.***>

like i want nodeport:xxxxx to become nodeport:10443
Op za 5 nov. 2022 om 17:27 schreef Tommy Van Haute <
@.***>:

i am trying to change the nodeport like the port its on. but the issue is
basically everytime i change anything it says that its not a valid
service even tho it shows me the yaml when i do edit.
also if you want i can mail it over to you so you have it normally
Op za 5 nov. 2022 om 13:05 schreef Angelos Kolaitis <
@.***>:

Are you trying to change the service type to something else from
NodePort? I would suggest trying to remove the nodePort: fields as well
in this case. Also, apologies but the formatting from github does not help
me read the yaml properly
—
Reply to this email directly, view it on GitHub
https://github.com/canonical/microk8s/issues/3540#issuecomment-1304521838,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOOQ6X27UMTEA2QQO5MDQKDWGZERDANCNFSM6AAAAAARWMC6EA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Note that nodeport:10443 is not valid yaml indeed, you need to make sure there is a space, i.e. change it to nodePort: 32413. Also note that by default the node port range is defined as 30000-32767, and you need to change the API server argument --service-node-port-range to allow others.

Op zo 6 nov. 2022 om 20:40 schreef Angelos Kolaitis <
@.***>:

Note that nodeport:10443 is not valid yaml indeed, you need to make sure
there is a space, i.e. change it to nodePort: 32413. Also note that by
default the node port range is defined as 30000-32767, and you need to
change the API server argument --service-node-port-range to allow others.
See
https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/
and look for the --service-node-port-range flag
—
Reply to this email directly, view it on GitHub
https://github.com/canonical/microk8s/issues/3540#issuecomment-1304877089,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOOQ6X4IBVXMJOF6ML7R6FTWHACSXANCNFSM6AAAAAARWMC6EA
.
You are receiving this because you were mentioned.Message ID:
@.***>


projects/source API does not support proxy field

The store has no storage for the proxy setting, so it is ignored. It should store it, and pass it to rpm/dnf along with the rest of the repository details. It should store it, and pass it to rpm/dnf along with the rest of the repository details.
Also see #401 for discussions about a global proxy setting.

How high a priority is this? Is this about performance only, or would some usecases break? Either way it makes sense to me to add. Does it make sense to add this to composer to do the depsolving without also adding the same to osbuild to download the RPMs?
My gut feeling is that though this makes sense it isn't necessarily the highest priority?

I don't have any way to evaluate how important it is :) But I do know that certain users only use our tools via proxy with no direct access to the outside network. And personally I have a polipo cache setup locally that I use with Fedora content to speed things up on repeated runs.

My org has zero non-proxy access to external sites so it's not a simple performance issue. The tool unfortunately is dead in the water until this feature appears. As a possible solution, could the tool inspect the global proxy= settings in /etc/dnf/dnf.conf and allow the builder process use them directly or copy them into the repo files it's generating?

Update, got further by adding proxy environment to osbuild-composer.service so depsolve now works, but the compose process is calling curl without seeing the proxy env variables. I can see the SYN-SENT in ss -tn sessions going direct to an internet address.

name: Set osbuild Proxy
blockinfile:
path: "/usr/lib/systemd/system/osbuild-composer.service"
backup: yes
create: yes
mode: 0644
insertafter: "^Environment="
block: |
Environment="HTTP_PROXY=http://{{ PROXY }}:{{ PROXY_PORT }}"
Environment="HTTPS_PROXY=http://{{ PROXY }}:{{ PROXY_PORT }}"
Environment="NO_PROXY=http://{{ PROXY }}:{{ PROXY_PORT }}"
Environment="http_proxy=http://{{ PROXY }}:{{ PROXY_PORT }}"
Environment="https_proxy=http://{{ PROXY }}:{{ PROXY_PORT }}"
Environment="no_proxy=http://{{ PROXY }}:{{ PROXY_PORT }}"

Output bug:
Output:
[/usr/lib/tmpfiles.d/journal-nocow.conf:26] Failed to resolve specifier: uninitialized /etc detected, skipping
All rules containing unresolvable specifiers will be skipped.
[/usr/lib/tmpfiles.d/rpcbind.conf:2] Unknown user 'rpc'.
[/usr/lib/tmpfiles.d/setroubleshoot.conf:1] Unknown user 'setroubleshoot'.
Failed to create file /sys/fs/selinux/checkreqprot: Read-only file system
imported gpg key
imported gpg key
fetching sources
Traceback (most recent call last):
File "/run/osbuild/lib/stages/org.osbuild.rpm", line 161, in
r = main(args["tree"], args["sources"], args["options"])
File "/run/osbuild/lib/stages/org.osbuild.rpm", line 101, in main
osbuild.sources.get("org.osbuild.files", checksums)
File "/run/osbuild/lib/osbuild/sources.py", line 87, in get
raise RuntimeError(f"{source}: " + reply["error"])
RuntimeError: org.osbuild.files: curl: error downloading {'url': 'https://cdn.redhat.com/content/dist/rhel8/8/x86_64/baseos/os/Packages/l/libevent-2.1.8-5.el8.x86_64.rpm', 'secrets': {'ssl_ca_cert': '/etc/rhsm/ca/redhat-uep.pem', 'ssl_client_key': '/etc/pki/entitlement/516878095454885961-key.pem', 'ssl_client_cert': '/etc/pki/entitlement/516878095454885961.pem'}}: error code 28
I tried one of the curl commands cut-n-paste into my shell and it worked fine, so it's likely that my shell has the proxy env set.

@mattpielm thanks for your report. As a work-around, are you able to insert the same env vars in<EMAIL_ADDRESS>as you did in /usr/lib/systemd/system/osbuild-composer.service?

That did work, thanks for tip! For anyone reading, take the Ansible play above and apply to both /usr/lib/systemd/system/osbuild-composer.service and<EMAIL_ADDRESS>(and systemctl daemon-reload)

Thanks for confirming @mattpielm (and for suggesting the env vars in the first place).

Hat tip to @liveaverage on the env vars, he suggested it separately.


[ownership] Some small fixes from Andy's review.

I merged the original PR since it was rather large. These are the remaining
small fixes.
Follow up from #34683.

@swift-ci smoke test

@swift-ci smoke test linux platform


Allow send() to take a callback as 3rd argument

Fixes #467

One point of contention may be that we could/should use process.nextTick on these callbacks. Feedback welcome.

my gut says avoid process.nextTick when it comes to dong send() and recv(). would need to look at perf

We can ponder it later I guess.

oh wow that was fast, it's ready to test!
giving send() an optional callback nice, in the event of an error it seems there's a direct reference to the outbound buffer only one call away (or at least more local) on the stack
One question, why pass a null param to send? Can't we do that business as a 1st param to cb?

sorry maybe I'm missing something having to do with the msg framing and envelope stuff..

Sorry for the quick merge (sort of a hair-on-fire situation).
Why pass a null param? You mean in the test? Those are the flags that you may send along with a send() call.

Those are the flags that you may send along with a send() call. The callback comes after that.

ah i see. ok that's cool, thanks for clarifying


Update THPAudioDecode.c

these three functions should be static

The functions are forward declared and all functions appear as they should be in the symbol map, so i don't think this would do anything? closing it for now


[wasi] fd_filestat_get linkcount should be a u64

Looks like the linkcount in the struct should be 64 bits wide.
I believe this is the correct alignment for this struct (i64's should be 8-byte aligned? maybe? unclear) but let me know if I'm wrong and it's supposed to be aligned to 4 bytes or something.

That seems right, however the PR is changing the alignment of two fields, not just linkcount.
Have you tested it?

Before, since filetype is a u8 and linkcount was a u32, linkcount could be aligned to the next 4th byte, and size could follow just 4 bytes later and still be properly 8-byte aligned.
Now with linkcount being a u64, it needs to be stored at the next 8-byte alignment.
I tried to chart it out.

I tested it using AssemblyScript, basically like this:
let stats = __alloc(64)
let filestats = changetype<filestat>(stats)
let err = fd_filestat_get(fd, filestats)

and accessing filestats.filetype, filestats.nlink, filestats.size, and filestats.atim all give me the correct results.

Assemblyscript uses a not-common memory layout. I'm not sure if that might affect the alignment.
Have you tried it with a C/Rust WASI program that makes use of this syscall?

Alright, I wrote a Rust program to try it out, and it works properly:
use wasi;

fn main() -> Result<(), wasi::Error> {
    unsafe {
        let fd = match wasi::path_open(3, 1, &"foo.txt", 1, wasi::RIGHTS_FD_FILESTAT_GET, 0, 0) {
            Ok(fd) => fd,
            Err(e) => return Err(e)
        };

        let stats = match wasi::fd_filestat_get(fd) {
            Ok(stats) => stats,
            Err(e) => return Err(e)
        };

        println!("dev: {} \nino: {} \nfiletype: {} \nnlink: {} \nsize: {} \natim: {} \nmtim: {} \nctim: {}",
            stats.dev,
            stats.ino,
            stats.filetype,
            stats.nlink,
            stats.size,
            stats.atim,
            stats.mtim,
            stats.ctim
        );
    }
    Ok(())
}

With foo.txt containing foo, bar, & baz and the current directory preopened, running this with Node.js produces
dev: 16777220
ino: 50977513
filetype: 4
nlink: 1
size: 16
atim:<PHONE_NUMBER>123514
mtim:<PHONE_NUMBER>841209
ctim:<PHONE_NUMBER>841209

Awesome, thanks a lot for checking. Merging the PR :)

I actually hadn't tried this on the previous version, but I ran it for fun and it outputs this:
dev: 16777220
ino: 50977513
filetype: 4
nlink: 16
size:<PHONE_NUMBER>064640
atim:<PHONE_NUMBER>841209
mtim:<PHONE_NUMBER>841209
ctim: 0

Looks like an improvement!


[HOTFIX][ZEPPELIN-2011] Add lib/interpreter to classpath to fix interpreter installer

What is this PR for?
Interpreter installation fail with NoClassDefFoundError error when zeppelin is built as distribution package. This PR fixes it by adding lib/interpreter to classpath.
What type of PR is it?
Bug Fix | Hot Fix
What is the Jira issue?
ZEPPELIN-2011
How should this be tested?

Build distribution package

mvn clean package -DskipTests -pl zeppelin-interpreter,zeppelin-zengine,:zeppelin-display_2.10,:zeppelin-spark-dependencies_2.10,:zeppelin-spark_2.10,zeppelin-web,zeppelin-server,zeppelin-distribution -am -Pbuild-distr

Change working directory

$ cd zeppelin-distribution/target/zeppelin-0.8.0-SNAPSHOT/zeppelin-0.8.0-SNAPSHOT

Run bin/install-interpreter.sh and see if error is gone.

Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

Tested and it was working well, LGTM!

LGTM


Loading PDF for parsing takes about 2 minutes to complete. How can we speed up the process

Loading PDF for parsing takes about 2 minutes to complete. How can we speed up the process

Hi @shuaihutianxie - are you able to share the document that is taking a long time to process? How many pages is it?


Release notes for 2.3.0

Signed-off-by: Eric Wei<EMAIL_ADDRESS>Description
Release notes for 2.3.0.
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

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

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #1003 (b9e19f2) into main (e755d2b) will increase coverage by 16.11%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##               main    #1003       +/-   ##
=============================================
+ Coverage     55.75%   71.87%   +16.11%
  Complexity      291      291
=============================================
  Files           263       42      -221
  Lines          8829     2311     -6518
  Branches       2021      240     -1781
=============================================
- Hits           4923     1661     -3262
+ Misses         3732      509     -3223
+ Partials        174      141       -33

Flag
Coverage Δ

dashboards-observability
?

opensearch-observability
71.87% <ø> (ø)

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

Impacted Files
Coverage Δ

...cs/components/config_components/service_config.tsx

...hboards-observability/common/constants/explorer.ts

...omponents/common/helpers/ppl_docs/commands/head.ts

...tebooks/components/helpers/legacy_route_helpers.ts

...es/config_controls/config_color_palette_picker.tsx

...-observability/common/constants/trace_analytics.ts

...lic/components/visualizations/charts/text/text.tsx

...trace_analytics/components/common/color_palette.ts

...lic/components/common/helpers/add_sample_modal.tsx

...ponents/event_analytics/explorer/sidebar/field.tsx

... and 211 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Example to demo differences between the image shader and mesh

Closes: https://github.com/pygfx/pygfx/issues/799

I wonder if a grid would be useful here to show the 0.5 pixel offset?

I didn't want to be too negative about the grid object, but I currently find it quite jarring.
Moving around in the example i can generate the following displays:
$ python examples/feature_demo/line_plot.py

It makes me really lose track of what the grid is about, and so I was hoping to take a look at it eventually before using it in a real example.
My attempt at providing a visual guide is with a red line at the top.

Just 2 typos. Otherwise looks like a nice addition to the gallery!

ps. you can just push in these case to avoid you having to come back to this PR. your choice.


Unable to Remove FunctionAssociations

What happened?

I added a Cloudfront Function to the defaultCacheBehavior.functionAssociations.items. Now I cannot remove it and I get this error:
The Distribution "my-cdn" is invalid: spec.forProvider.distributionConfig.defaultCacheBehavior.functionAssociations.items.functionARN: Invalid value: "null": spec.forProvider.distributionConfig.defaultCacheBehavior.functionAssociations.items.functionARN in body must be of type string: "null"

Once again every issue will cause the Composition to start looping the Distribution into constant Deploying state and never becomes ready. Now because I can't remove the function I can't stabilize the distribution.
How can we reproduce it?

First create a simple distribution with no Functions. Then add a function to the defaultCacheBehavior like so:
        functionAssociations:
          items:
            - eventType: viewer-request
              functionARN: arn:aws:cloudfront::123456789:function/rewriter
          quantity: 1

Now try and remove it.
What environment did it happen in?
Crossplane version:

Ermm, this is totally blocking me now. I can't update any value in any of the entire Distribution object. I get this error even if I try to add a label. This error is completely preventing the Composition from changing any values at all.

which provider-aws version you using ?

Sorry it was caused by something I did. It was posting the functionAssociations like so:
functionAssociations:
  items: []
  quantity: 0

I discovered you must remove the entire key to not have any functions. It can't just be empty like that.


simulateKeyDownEvent ENTER throwing exception in integration tests Desktop

Steps to reproduce
Just use await simulateKeyDownEvent(LogicalKeyboardKey.enter) in a integration test targeting desktop platform (linux or windows)
Expected results
Simulate a KeyDown event from a Logical Key enter
Actual results
Every test using the aforementioned function call to simulate enter key thrown an error.
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following assertion was thrown running a test:
A KeyDownEvent is dispatched, but the state shows that the physical key is already pressed. If this
occurs in real application, please report this bug to Flutter. If this occurs in unit tests, please
ensure that simulated events follow Flutter's event model as documented in `HardwareKeyboard`. This
was the event: KeyDownEvent#1c7d8(physicalKey: PhysicalKeyboardKey#e14a9(usbHidUsage: "0x00070028",
debugName: "Enter"), logicalKey: LogicalKeyboardKey#2604c(keyId: "0x10000000d", keyLabel: "Enter",
debugName: "Enter"), character: null, timeStamp: 0:00:00.000000)
'package:flutter/src/services/hardware_keyboard.dart':
Failed assertion: line 505 pos 16: '!_pressedKeys.containsKey(event.physicalKey)'
Either the assertion indicates an error in the framework itself, or we should provide substantially
more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
  https://github.com/flutter/flutter/issues/new?template=2_bug.yml
When the exception was thrown, this was the stack:
#2      HardwareKeyboard._assertEventIsRegular.<anonymous closure> (package:flutter/src/services/hardware_keyboard.dart:505:16)
#3      HardwareKeyboard._assertEventIsRegular (package:flutter/src/services/hardware_keyboard.dart:520:6)
#4      HardwareKeyboard.handleKeyEvent (package:flutter/src/services/hardware_keyboard.dart:643:5)
#5      KeyEventManager.handleRawKeyMessage (package:flutter/src/services/hardware_keyboard.dart:1164:37)
#6      BasicMessageChannel.setMessageHandler.<anonymous closure> (package:flutter/src/services/platform_channel.dart:235:49)
#7      TestDefaultBinaryMessenger.handlePlatformMessage (package:flutter_test/src/test_default_binary_messenger.dart:99:42)
#8      KeyEventSimulator._simulateKeyEventByRawEvent.<anonymous closure> (package:flutter_test/src/event_simulation.dart:655:79)
#11     TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:71:41)
#12     KeyEventSimulator._simulateKeyEventByRawEvent (package:flutter_test/src/event_simulation.dart:653:27)
#13     KeyEventSimulator.simulateKeyDownEvent.simulateByRawEvent (package:flutter_test/src/event_simulation.dart:740:14)
#14     KeyEventSimulator.simulateKeyDownEvent (package:flutter_test/src/event_simulation.dart:760:23)
#15     simulateKeyDownEvent (package:flutter_test/src/event_simulation.dart:883:48)
#16     startDialogAndSupplyValidOperatorLogin (file:///C:/repositorios/VRCheckout/integration_test/modules/initial/initial_integration_test.dart:3022:9)
<asynchronous suspension>
#17     main.<anonymous closure> (file:///C:/repositorios/VRCheckout/integration_test/e2e_integration_test.dart:301:5)
<asynchronous suspension>
#18     testWidgets.<anonymous closure>.<anonymous closure> (package:flutter_test/src/widget_tester.dart:183:15)
<asynchronous suspension>
#19     TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1017:5)
<asynchronous suspension>
<asynchronous suspension>
(elided 5 frames from class _AssertionError, dart:async, and package:stack_trace)

Code sample
Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
[√] Flutter (Channel stable, 3.22.0, on Microsoft Windows [versÆo 10.0.22631.3527], locale pt-BR)
    • Flutter version 3.22.0 on channel stable at C:\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5dcb86f68f (6 days ago), 2024-05-09 07:39:20 -0500
    • Engine revision f6344b75dc
    • Dart version 3.4.0
    • DevTools version 2.34.3

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at C:\Users\Fernando-Moraes\AppData\Local\Android\sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jbr\bin\java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-10027231)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop Windows apps (Visual Studio Community 2019 16.11.32)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.11.34301.259
    • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2022.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-b2043.56-10027231)

[√] VS Code (version 1.89.1)
    • VS Code at C:\Users\Fernando-Moraes\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.88.0

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [versÆo 10.0.22631.3527]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 124.0.6367.203
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 124.0.2478.67

[√] Network resources
    • All expected network resources are available.

• No issues found!

Hi @fernandomoraesvr, how are you running your integration tests? If you are using flutter driver, this may be a limitation. See https://github.com/flutter/flutter/issues/9383

@

Hi @fernandomoraesvr, how are you running your integration tests? If you are using flutter driver, this may be a limitation. See #9383

Hi, i'm using the integration test driver, i was not able to reproduce my issue in 3.19.6, await simulateKeyDownEvent(LogicalKeyboardKey.enter) is throwing exception after update to 3.22

Hi @fernandomoraesvr, please provide a complete minimal runnable code sample so that we can properly investigate this.
Thank you

Hi @fernandomoraesvr, please provide a complete minimal runnable code sample so that we can properly investigate this.
Thank you

I created a new Flutter project using version 3.22 and was able to reproduce the issue with the newly created project, without changing code in the initial generated project, i wrote the following integration test:
void main() {
  IntegrationTestWidgetsFlutterBinding.ensureInitialized();

  testWidgets("test", (widgetTester) async {
    app.main();

    await widgetTester.pumpWidget(MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(
        title: "test",
      ),
      localizationsDelegates: const [
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
        GlobalCupertinoLocalizations.delegate,
      ],
      supportedLocales: const [
        Locale('en', 'US'),
      ],
    ));

    await widgetTester.pumpAndSettle();

    await simulateKeyDownEvent(LogicalKeyboardKey.enter);

    await widgetTester.pumpAndSettle();

    await simulateKeyDownEvent(LogicalKeyboardKey.enter);

    await widgetTester.pumpAndSettle();

    expect(true, true);
  });
}

It looks like it requires two await simulateKeyDownEvent(LogicalKeyboardKey.enter) to thrown an error, as the minimal runnable code suggests, it does not require KeyboardListener (Alltough it throws with an listener too).
MyHomePage in the sample code is the MyHomePage created by flutter create command. I'm running the integration test in Windows, but in Linux is throwing as well.

@danagbemava-nc
I did a deep investigation and found out that the change made by this PR https://github.com/flutter/flutter/pull/143847 was causing this issue.
Reverting the transitMode in event_simulation.dart fixed the issue:
  static const KeyDataTransitMode _defaultTransitMode =
      KeyDataTransitMode.rawKeyData;

The test above simulates two key down events on the same key, this is why it triggers an error (previously, with version 3.19, the error was not thrown due to a bug).
There are two ways to fix this test:

calling simulateKeyUpEvent before simulating the second press.
relying on tester sendKeyEvent which simulates a down event followed by an up event.

Thanks for trying these.

The test above simulates two key down events on the same key, this is why it triggers an error (previously, with version 3.19, the error was not thrown due to a bug).
There are two ways to fix this test:
* calling simulateKeyUpEvent before simulating the second press.

* relying on tester sendKeyEvent which simulates a down event followed by an up event.

Thanks for trying these.

I did not remember why we're using simulateKeyDownEvent instead of tester sendKeyEvent, sendKeyEvent worked fine in our integration tests rn (So obviously that a Up is needed to remove from keyPressedEvents and i didn't noticed lmao)
Thank you bleroux, this issue can be closed now.
TL;DR: Fixed after changing simulateKeyDownEvent to sendKeyEvent or using and Up after Down.


Add "Compare" link/button

Feature Description
Good day!
I feel lack of the Compare link/button.
Don't really understand, how do I compare (as a user) two commit's or release's sources? What should I click?
Propose to add the Compare link/buttons on the commit pages, at least.
Thanks!
Screenshots
No response

I don't see any associated Gitea documentation (which maybe should be there), but you can compare two commits/tags/branches by following the steps mentioned in the GitHub docs.
It was introduced in #6991, and after manually testing it by following these docs it works fine.
This does not mean we should blindly follow GitHub; I would welcome some way to access this compare web UI in a more convenient way.


Suggestion: Update Documentation of Solo.setDatePicker

From<EMAIL_ADDRESS>on June 20, 2011 01:12:14
The method
Solo.setDatePicker(int index, int year, int monthOfYear, int dayOfMonth)
should have a hint in its documentation, that the value for monthOfYear goes from 0 to 11, not 1 to 12.
since the method
android.widget.DatePicker.updateDate(int year, int month, int dayOfMonth)
is called eventually.
Original issue: http://code.google.com/p/robotium/issues/detail?id=120

From<EMAIL_ADDRESS>on June 20, 2011 04:37:47
Thanks for this. It will be updated in the next release.
Status: Accepted
Owner<EMAIL_ADDRESS>

From<EMAIL_ADDRESS>on July 13, 2011 10:26:33
This has been corrected in Robotium 2.4.
Status: Verified

From<EMAIL_ADDRESS>on July 26, 2011 16:06:59
When I try to use solo.setDatePicker(...), I get an error that says: setDatePicker is undefined for solo. Any suggestions? Thanks.

From<EMAIL_ADDRESS>on March 10, 2012 13:56:34
Hello,
I think this bug may still be open – I just ran into this problem myself with Robotium 3.1.
It appears as though I need to subtract one from the month in order for setDatePicker() to work correctly, as 0 is January and 11 is December. I didn't see any mention of this in the documentation.
Thanks!


LargeSplitRowIT.automaticSplitLater - increase timeout and other improvements

This IT has failed a few times due to timeout (here and here). This PR primarily increases the timeout for the failing IT.
While editing this file i saw a few places for improvements so I also added the following changes to this PR:

adds resources to try-with-resources blocks
make use of Arrays.fill()
create and use variables with descriptive names
make use of NewTableConfiguration to set properties where possible
simplify logic where possible

I'm all in favor of simplicity of user new API methods. I have no issue with what you did here, I was just curious if there was a reason you couldn't do the same thing.

in 17c37e7 I opted to use Map.of() in the places mentioned. @dlmarion, Thanks for the review, I'll merge this in once the checks pass.