Gradle Dependency Management

Knowing that Gradle's dependency management uses either Groovy DSL (AST is painful of course) or Kotlin DSL (along with the new TOML version catalogs), it would be useful to be have the same dependency management transformations available for Gradle users.

We do want to do this. Keep an eye on this issue on our roadmap! https://github.com/openrewrite/rewrite-roadmap/issues/7

Good to hear from you again @shanman190!

Closing this for now. We'll be doing this soon. Keep an eye on our roadmap entry: openrewrite/rewrite-roadmap#7

@sambsnyd , the roadmap link you mentioned doesn't seem to work anymore. I get a 404. I found this issue as I was looking to see if the gradle version catalog toml file would be supported. Is this still on the roadmap somewhere? Is there a different link to it that you could share?
Thanks!


[help wanted] how to make this work on cloudflare workers?

Great job!!!
getting stream information with this package, and then warping the video stream from youtube to my own web with miniget package, my app works fine in Heroku.
for Heroku is a little slow in my country, so I  use Cloudflare as a load balancer
Then I thought about whether Cloudflare workers could be used directly to complete these tasks. There are several advantages to using Cloudflare workers directly:

Don’t worry about server dormancy (Heroku server will sleep on its own after a period of time and wake up when requested)
Request information from youtube from different machines to avoid being blocked by youtube, when the request volume is large.

I tried to rewrite your code and use fetch instead of miniget. This can basically be done. But I found that you use the vm2 module in the player class, and it feels like you want to change the string from the intercepted string to runnable code. I don't know whether the vm2 module can be run directly in Cloudflare worker, it seems to use the built-in module of node js. So I want to use the new Function() of js to convert the string to runnable code, but I found that this function seems to be disabled by the Cloudflare worker.
I don’t know your code logic very well, I can only look for some clues in the code. If you can explain the whole design logic in detail, or give a code that can run on Cloudflare workers, I would be very grateful

You could replace player.js with the player.js from version 2.1.0  which uses the nodejs vm instead of vm2. While vm2 is much more secure and vm has some vulnerabilities, it is highly unlikely that Google will put malicious code in their player. The interface is the same.
Essentially, player.js scans the session's base.js youtube player file for the decipher and n-transform code blocks. It parses the blocks and directly uses the code from base.js to create functions that can then be executed on each of the streams that the library encounters. Not all streams require the decipher function but virtually all streams require the n-tranform to avoid throttling.

thanks


splash and new icon art

Opps - selected your master for this PR for testing.
It has been rebased.


IE: docs: header doesn't seem to be aligned

There seemed to be more bottom padding applied to the header in IE.

Can't we just live with it ? :)
I doubt many people will notice this TBH


Use requests.Session for http calls

Use session object instead of direct requests calls to allow
customization of the session, e.g. setting http proxy.
Fixes #128.

Pull Request Test Coverage Report for Build 350

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 345:
0.0%

Covered Lines:
375

Relevant Lines:
375

💛  - Coveralls

Pull Request Test Coverage Report for Build 350

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 345:
0.0%

Covered Lines:
375

Relevant Lines:
375

💛  - Coveralls


build-url includes scheme

Problem
(build-url {:scheme      :https
                     :server-name "some.host"
                     :server-port 1234
                     :uri         "/path"})
;; => "://some.host:1234/path"

As a result, the Sentry web interface simply didn't show the :uri on the web interface.
Additionally, I also added logic to omit the default port number for the :https scheme too, not just the :http scheme.
I've provided some tests, but just in a rich comment block, since there is not test tooling anyway.

Thank you.
I've created trunk branch especially for merging this. I mostly agree with whole your changes but wanna do my best to add also tests and to check it prior to releasing.
Also I'm going to avoid using http-kit and cheshire - we have a lot of services where another libraries are used.

I've just copied your code into our codebase exactly for those reasons. I'm trying to avoid depending on cheshire, because most of the time we don't need its performance or fancy object mapping features, but it touches on the jacksonxml dependency hairball and that has already caused issues with Datomic Cloud.
httpkit I like in general, but I don't think this library needs to have a hard dependency on it.
you could just provide a function, which returns the httpkit compatible request map and let the consumers do the actual htttpkit.client/request call.
btw, we are using https://github.com/oliyh/martian for most of our http client needs. it's very nice and pluggable. we have learnt a lot from it!

same for me here - I'm fine with using http-kit in general, but...
seems there is only the way of splitting the library between J1.8 and J11.
J1.8 will still use http-kit whihc is pretty fine and mostly have no external deps and implemented mostly on native Java.
And then wrapping JDK11's java.net.http.HttpClient. to an internal client helper.
Regarding JSON I'm thinkng about using of pjson.core/write-str here. It is extremely fast and all its trade-off are in parcer.


TypeError: type 'CharField' is not subscriptable

I was trying to reproduce the setup from a DjangoCon 2022 talk about type checking Django with pyright and django-types.
At around minute 26:16 you can see some code where a CharField gets subscripted with a literal string type.
For some strange reason that code causes a TypeError when I run python manage.py runserver complaining that the type CharField is not subscriptable.
I thought, maybe I have to install django-types directly from GitHub instead of pip but it didn't work either. Does anyone maybe have a hint what I have to do to make it work?

are you monkey patching Django to allow for the indexing?
# in settings.py
from django.db.models import ForeignKey
from django.db.models.manager import BaseManager
from django.db.models.query import QuerySet

# NOTE: there are probably other items you'll need to monkey patch depending on
# your version.
for cls in [QuerySet, BaseManager, ForeignKey]:
    cls.__class_getitem__ = classmethod(lambda cls, *args, **kwargs: cls)  # type: ignore [attr-defined]

@sbdchd I thought it's not necessary because I run Django 4.1.5 and the documentation says:

You'll need to monkey patch Django's QuerySet, Manager (not needed for Django 3.1+) and ForeignKey (not needed for Django 4.1+) classes so we can index into them with a generic argument. Add this to your settings.py:

Just to make sure I put the monkeypatch in my settings.py and sadly the error doesn't go away:

Oh I didn't have all the classes in the snippet, if you include CharField (or it's parent class maybe?) does it work?

Yes, that works. Thank you. Now I get what that note in the monkey-patch snippet means.

NOTE: there are probably other items you'll need to monkey patch depending on your version

Is there a list of things that generally make sense to get monkey-patched?

I basically only monkey patch when something explodes at runtime
I think you can avoid it for most things, but the ORM needs a decent amount of it unfortunately


invalid blocks when forwarding message blocks between channels

Description
all I do is listen to messages on the channel and forward them to another
const channelMirroring = async ({ payload, message, context, client }) => {
  console.log(JSON.stringify(message.blocks))
  const blocks = JSON.stringify(message.blocks)
  await client.chat.postMessage({
    blocks: blocks,
    channel: context.targetChannel,
  });
}

this is an example of a log of a msg with the text z
[{"type":"rich_text","block_id":"AHdW3","elements":[{"type":"rich_text_section","elements":[{"type":"text","text":"z"}]}]}]

I'm getting an invalid_blocks error, even tho this must be valid blocks since they are generated by slack themselves.
any ideas here?
I also tried to remove the block_id but got the same result.
What type of issue is this? (place an x in one of the [ ])

[x] bug
[ ] enhancement (feature request)
[ ] question
[ ] documentation related
[ ] example code related
[ ] testing related
[ ] discussion

Requirements (place an x in each of the [ ])

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

Bug Report
Filling out the following details about bugs will help us solve your issue sooner.
Reproducible in:
package version: "@slack/bolt": "^1.6.0"
node version: v11.15.0
OS version(s): https://glitch.com/
Steps to reproduce:

listen to an incoming messages
get the message blocks
use postMessage with those blocks

Expected result:
the same message should be send successfuly
Actual result:
What actually happened
invalid_blocks error
Attachments:

Hi @goldylucks, thanks for writing in!
Unfortunately, all the rich_text blocks are only available for 1st party Slack clients (meaning Desktop, iOS, Android Slack apps). If your app would like to post the same message, please remove the blocks when any rich_text ones are included. As long as the text parameter is valid, you can expect the same message posted in a channel.
See also:

https://api.slack.com/changelog/2019-09-what-they-see-is-what-you-get-and-more-and-less
https://github.com/slackapi/java-slack-sdk/issues/876#issuecomment-956557504

I hope this helps!

oh gotcha, thanks!

Wait, but the message will not include links or formatting as the original had. Is there any utility to parse the rich text to mrkdwn or anything?

This is really broken, IMO.  This makes returning the blocks content in the public API close to useless unless someone writes a third party "adapter".

As long as the text parameter is valid, you can expect the same message posted in a channel.

This isn't exactly true. Try entering something in bold that contains a bare asterisk into the Slack UI, e.g., "The equation is 2 * 2 = 4", and then replaying the text parameter through the API - you get something like "The equation is 2 2 = 4*".
The text field comes out as The equation is *2 * 2 = 4*, and the rich_text blocks are
{"type": "text", "text": "The equation is "},
{"type", "text": "text": "2 * 2 = 4", "style": {"bold": "true"}},

It would be useful for Slack to support at least a subset of rich text blocks through third-party clients. Apart from the problem where incoming messages don't round-trip back through the API, there are things you simply can't send through the third-party API.

Seconding @geofft's point—in general, mrkdwn cannot represent the full space of rich text possible via rich_text blocks (and what can be composed via the WSYWIG editor), which is illustrated by examples like the one from @geofft where mrkdwn produces incorrect rich text semantics relative to the intended outcome.
Interestingly enough, I did find that Slack silently supports rich_text block types for posting messages via incoming webhooks:
$ curl \
    -H 'Content-type: application/json' \
    -d '{"blocks":[{"type":"rich_text","elements":[{"type":"rich_text_section","elements":[{"type":"text","text":"Hello "},{"type":"text","text":"World","style":{"bold":true}}]}]}]}' \
    https://hooks.slack.com/services/...
ok

Result:

Like @goldylucks, I have also previously witnessed how Slack rejects the exact same payload containing rich_text blocks when it is supplied via chat.postMessage, which is inconsistent with incoming webhooks.
However, when I tried it again just now, much to my surprise, I see that Slack now actually supports rich_text blocks in chat.postMessage as well!
$ curl \
    -H 'Content-type: application/json' \
    -H 'Authorization: Bearer ...' \
    -d '{"channel":"...","blocks":[{"type":"rich_text","elements":[{"type":"rich_text_section","elements":[{"type":"text","text":"Hello "},{"type":"text","text":"World","style":{"bold":true}}]}]}]}' \
    https://slack.com/api/chat.postMessage
{"ok":true,...}

Cross-checking against similar issues to this one, it looks like the underlying change to Slack's API is officially confirmed! https://github.com/slackapi/deno-slack-sdk/issues/197#issuecomment-1767027853


Upddate to azure-stack-registration.md

Added AzureUSGovernment support

@wfayed : Thanks for your contribution! The author, @jeffgilb, has been notified to review your proposed change.

This branch has conflicts. I've already resolved this in the docs in a separate PR.

@please-close


Crash when trying to import KML

Describe the bug
A clear and concise description of what the bug is.
Crash while trying to import a KML generated by Foreflight
To Reproduce
Steps to reproduce the behavior:
Import KML
Expected behavior
KML is able to open
It wont let me upload the KML reach out and I can send it over email

Thanks for reporting this issue.
I think you should be able to compress the KML file into a ZIP file and attach this ZIP archive to this issue.
Let me know if this still does not work.

Note to myself: quite likely the same issue as
https://github.com/till213/SkyDolly/issues/179


Load file + tests & fixes

Closes #15
This extends #15 and adds some tests and errno checking.

One nitpick, but thanks for adding the test

fixed
On Thu, Oct 27, 2016 at 7:41 PM, Mitchell Hashimoto <
<EMAIL_ADDRESS>wrote:

One nitpick, but thanks for adding the test
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mitchellh/go-mruby/pull/38#issuecomment-256822802,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABJ6xqTD_3cHxY1fuGn-rX29bC0Xpynks5q4WD3gaJpZM4KjBYN
.

I'm going to merge this if that's OK. Let me know if you object and I will revert/re-patch.


Error when packaging with git dependencies without version

If cargo package is run on a package that specifies a git dependency
without a version, cargo will error. This should help with clarifying
that git dependencies will be stripped when packaging, and that the
dependency has to be fetched from a registry.
Closes #9442

r? @Eh2406
(rust-highfive has picked a reviewer for you, use r? to override)

Essentially what I've done is perform the same checks that are performed when publishing, when packaging (as seen here). This wont fix all of the potential confusion arising from the dependency stripping when publishing/packaging, but hopefully it catches a few more.

@bors: r+
Looks reasonable to me, thanks!

:pushpin: Commit 4e1910d9d308d1d181472ed754d21910eff8e156 has been approved by alexcrichton

:hourglass: Testing commit 4e1910d9d308d1d181472ed754d21910eff8e156 with merge 4c27c96645e235d81f6c8dfff03ff9ebaf0ef71d...

:sunny: Test successful - checks-actions
Approved by: alexcrichton
Pushing 4c27c96645e235d81f6c8dfff03ff9ebaf0ef71d to master...


The add-stub-dependency command should automatically add (if not yet added) an import to the caller's worlds

This will be easier to implement with wit-encoder 0.216.0+ which will have support to load the AST fromwit-parser's output.
Unfortunately this latest wit-encoder version is not published yet, and updating to the new versions of wit-parser is also not trivial because of the introduction of multiple package definitions per WIT file.
Because of this I'm removing this from the Golem 1.0 milestone.


Fix around elapsed time formatter

Current formatting elapsed time has 2 issues.

Bug: It calls Date constructor with given second as a milliseconds, it makes unexpected time if given seconds is large number.
Not good: Using String.prototype.substr(), it is a deprecated method.

So this PR does...

Prevent to use deprecated methods anymore, it checked in eslint plugin
Add tests
Fix the formatting method

I'll merge this for following task!


Add support for html-webpack-plugin >= 4

Hi, @djaax  this PR did:

Add html-webpack-plugin (v4+) compatibility support (https://github.com/jantimon/html-webpack-plugin/blob/master/CHANGELOG.md#breaking-changes)
Fix options undefined bug
Refactor

awesome, I use this pr to correct my plugin code


Fix typos, remove unused imports, and adjust setup and pydoc type

Hi Bruni,
thanks for your corrections. Very much appreciated!
Best,
Dani


Fix wasm onLog

Signed-off-by: gargnupur<EMAIL_ADDRESS>For an explanation of how to fill out the fields, please see the relevant section
in PULL_REQUESTS.md
Commit Message: Don't return in log, if request is not started. We miss cases like localReply in that scenario
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]

/retest

@gargnupur @jplevyak is asan failure real?

@gargnupur @jplevyak is asan failure real?

@mandarjog : looks like not...

Seems like a timeout @mandarjog


[SPARK-10731][SQL] Delegate to Scala's DataFrame.take implementation in Python DataFrame.

Python DataFrame.head/take now requires scanning all the partitions. This pull request changes them to delegate the actual implementation to Scala DataFrame (by calling DataFrame.take).
This is more of a hack for fixing this issue in 1.5.1. A more proper fix is to change executeCollect and executeTake to return InternalRow rather than Row, and thus eliminate the extra round-trip conversion.

Merged build triggered.

Merged build started.

Test build #42876 has started for   PR 8876 at commit 778c2fd.

Test build #42876 has finished for   PR 8876 at commit 778c2fd.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds no public classes.

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

Merged build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #42891 has started for   PR 8876 at commit 267ffa7.

Test build #42891 has finished for   PR 8876 at commit 267ffa7.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

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

Merged build finished. Test FAILed.

Test build #1793 has started for   PR 8876 at commit 267ffa7.

Test build #1793 has finished for   PR 8876 at commit 267ffa7.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build triggered.

Merged build started.

Test build #42920 has started for   PR 8876 at commit c52ff7e.

LGTM

Test build #42920 has finished for   PR 8876 at commit c52ff7e.

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

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

Merged build finished. Test PASSed.


Answer provided

When I click on the challenge the answer is completed for me.

If this is the case that means you or someone else has already either visited that challenge from another users profile or already completed the challenge. Challenges are pulled from localStorage, so this is not something we can influence.
In the future please file a more informative bug by following our guide


Separate User ID modules on downloads page

There are a lot of user id modules now and on the Downloads page (https://docs.prebid.org/download.html) they are are bundled up under "Modules" and it's sort of hard to find the one you're looking for:

Can we create a new section for "User ID Modules" and list them all there?

Thanks for the suggestion @smenzer - User ID modules split out into their own section.

Thanks for the suggestion @smenzer - User ID modules split out into their own section.


Added TCPDF PDF generation library.

TCPDF library for generating PDFs via PHP:
https://tcpdf.org/

I don't think that this commit has anything to do with the Travis CI build failing.  It looks like that problem is to do with expired certs.


Optimize related records count by Replacing "before count()" with "countDistinct()"

Description
Issue
Initially, the criteria query used "before count()" to calculate related record counts for a parent entity, which led to incorrect counts due to the presence of duplicate parent IDs in the result set.
Resolution:
In this pull request, I have optimized the criteria query by replacing the "before count()" method with "countDistinct()" to accurately count related records. This modification ensures that duplicate parent IDs no longer impact the count, resulting in more precise counts for related records.

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

Hi @reguiegyounes, please create a Jira ticket with a description of the bug.

Hi @psmagin ,How can I acces to JIRA?

Expression<Long> countDistinct(Expression<?> x);
This method creates an aggregate expression that applies the COUNT(DISTINCT) operation to the specified expression. It counts the number of distinct (unique) values in the specified expression, ignoring duplicates.
SQL Equivalent: COUNT(DISTINCT column_name)
However, the use of DISTINCT in SQL queries can lead to performance degradation for several reasons:
Reasons for Performance Degradation with DISTINCT:

Sorting and Deduplication: The DISTINCT keyword forces the database to sort the result set and remove duplicate values. This process involves additional computational overhead, especially when dealing with large datasets.
Index Usage: Although indexes can help with the performance of DISTINCT queries, the process of deduplication can still be resource-intensive. If the column(s) used in the DISTINCT clause are not indexed or if the query involves multiple columns, the performance can degrade significantly.
Resource Consumption: The deduplication process requires more CPU and memory resources. For large tables, this can lead to increased query execution time and higher load on the database server.

@TarasSpashchenko, do you suggest declining these changes as they could worsen things?

Yes


Dynamic memory allocation in queue might fail

queue_init_with_spinlock calls calloc but does not check that it succeeds (i.e. does not return null). This means the user has to check that the data field is non-null afterwards. It would be good to have a public API for this, either by having queue_init_with_spinlock and its wrappers return a bool/status code, or by adding a queue_is_valid function.

Closing this for the same reason as #427 - with the default compile definitions, calloc will halt the program and provide a clear error message if memory allocation fails. If someone sets PICO_MALLOC_PANIC to 0, they have presumably also verified that all the dynamic memory allocations in the program are safe.


refactor: WF.fix: use WellFoundedRelation.fixBy

this defines
WellFoundedRelation.fixBy {α : Sort u} {β : Sort v} [WellFoundedRelation β] (f : α → β)
  {C : α → Sort w} (F : ∀ x, (∀ y, WellFoundedRelation.rel (f y) (f x) → C y) → C x) (x : α) : C x

based on WellFounded.fix, WellFoundedRelation and InvImage. This
moves some logic from meta code in WF.Fix to this definitions, so mostly
a conceptual simplicification, with the effect that invImage should
no longer show up to the user (even with #5016 disabled.)

There is some rather hackish way in which WF.Fix recognizes which termination goals belong to which function in the case of mutual recursion, and this break with this refactoring. I’ll put this on hold until I have a better solution there.

With #5234 for now off the roadmap, this refactoring isn’t so pressing anymore. Maybe some other time.


We are unable to connecte thur Docker Hub

Expected behavior
Actual behavior
Information about the Issue
Steps to reproduce the behavior

...
...

Please provide additional information about the issue as the template is suggesting it. This is not actionable and your issue can't be solved.

No information provided - Closing


Special caracteres don't render correctly on some CV models

Special characters like "ç" and "é", don't get rendedered correctly in Modern CV and Software Engineer models.

Modern CV

Software Engineer

Modern CV happens only on specific areas apparently

Trying to isolate it now


Age bypassing

Age bypassing is very critical because many videos has an age restriction.
Age restriction on YouTube is working by using signatureCipher, which currently
for my knowledge it needs to be decrypted, and the decryption algorithm is in plain JS.
After decryption, it needs to be added to the video (googlevideo) URL.

Age bypassing is not based at all on the signatureCipher which that's what I thought.
the signature cipher is just a way to make it harder to stream/download videos outside
of YouTube website.
Currently the only workaround I know is by sending a c parameter with a "ANDROID_EMBED" data to some URL.


Using dBm now instead of RSSI in app

Disscused with Marko: we decided to add another string for "Signal Strength (dBm)" and leave existing string to show in More info on Sensor Settings.


add IntervalMap::remove_select()

When IntervalMap::force_insert() has been used, the map may contain several entries with identical Intervals.  IntervalMap::remove() removes a randomly-selected one of these entries.
This commit adds a new function which allows the consumer to select which entry (with identical Interval) to remove, based on its value.

Hi @tprodanov thanks for making this crate!  I've looked at all the interval-tree crates and yours is the most well suited to my use case, specifically the tree is Send.  Adding this feature will make it more efficient for my use case.  Currently I am not using identical intervals, instead using  IntervalMap<K, Vec<V>> with multiple entries in the value, but usually there is only a small number of entries in the Vec so this is much less efficient than being able to use IntervalMap<K, V> with multiple identical intervals.

Dear @ahrens ,
Thank you for your suggestion! I used your code as a base, but implemented the function slightly differently.
You can check out the function remove_where, also I implemented values_at and values_mut_at methods, that you can find useful.
Please write if you encounter any more problems!

That's awesome, thanks!  I had thought about doing the iterators, and Entry API, but hadn't gotten to it.  I look forward to using the next release with these features!


Fix router to only check rbac on endpoints with security

Auth service were raising 500 on endpoint with no security definition (/auth/v1/tokens) when RBAC is enabled.
Since RBAC always require auth to be enabled, no reason to check RBAC and authentication flags independently.
Also, all RBAC related tests should now flip auth flag too.

Is it also possible to add some kind of test case for it?

You want me to do a test case for a test case? With the changes I made in st2common/st2common/router.py  the test now fails and this is the reason I've added the property - to fix broken test.


A big one - Refactoring & WebSocket Client Improvements

This is a much bigger set of changes than I was intending to include in a single PR, but here it goes. I think it is time to start getting these changes looked at by a wider group. Ideally we can get these tested & merged in.
This has done a pile of refactoring to remove duplication in the plugin for how it was reading the status for devices. As part of this, and adding experimental support for getting the device status with WebSockets (#74), the approach to loading data has been separated out. In lib, there is now an api.js file which handles all the API operations which the plugin was performing. This then internally deals with working out what needs to go to the REST, WebSockets and Lan mode APIs depending on the feature flags enabled.
These feature flags are now documented in the README file, which is worth reading to get a feel for the changes being introduced.
There is also an additional fakeFan setting which I have been using to allow testing of Fan type devices. This refactoring has removed a lot of duplication in how the fan Active and Light statuses were being loaded, as these were just switches.
This has introduced for the LAN and WebSocket clients caching of device status information (albeit for a short period for the latter), which should help with issues where the websocket is closed due to too many quick requests being made for the same device.
The main area I have been unable to test changes in is for Blinds, so hoping someone is able to try some pre-release code to check if my branch functions.

Wow thank you @dhutchison ! That's a lot of hard work! It would take some time for me to review this before merging.

Any tentative date for merging this?

Hi @prasad-edlabadka please try https://github.com/bwp91/homebridge-ewelink which is more active and better.


Remove students' question answers from the repo

We're going to have students answer questions in some other medium going forward, and as such the LABTASKS.md, among other files, needs to be rewritten to reflect this.

Turns out this is a non-issue for this lab, as this lab has never had any questions associated with it.


Problems with Ansible-galaxy

Hello everyone,
I'm just posting a problem I encountered. Pls don't be tought with me, I'm new to using Raspberry Pi, Linux and installing this kind of stuff. The problem may be very silly for majority of people but maybe newcomers like me appreciate this contribution.
The problem is that I couldn't use ansible command, even after installing it via pip3. I thought it was some kind of Python version problems for what I've read in other issue (that wasn't actually realated to mine directly).
The solution I found is so simple, just installing Ansible via  sudo apt-get install ansible.

I installed installed it with adding sudo pip3 instead of pip3

If you install it via pip3, you have to add additional directories to your $PATH environment variable, or specify it via its full path, which I think is ~/.local/bin/ansible? If you install it via sudo pip3, you can just use ansible because it's installed into /usr/local/bin.
This is one of many assumptions about more general Linux knowledge, and isn't always explained in an individual project's documentation. This project assumes a functioning sysadmin level of knowledge. It doesn't require you to be educated in containers, multiple networks, etc. to use, but it does require a basic level of usage familiarity.
Yes, you're new, I'm not blaming you, but it's not strictly necessary that Geerling should have to elaborate on the specific details of operation post-installation. Project authors should generally document their expected path, any deviation is then on the runner. This is just an education/lack-of-familiarity problem, something that you are still learning.

If you install it via pip3, you have to add additional directories to your $PATH environment variable, or specify it via its full path, which I think is ~/.local/bin/ansible? If you install it via sudo pip3, you can just use ansible because it's installed into /usr/local/bin.
It works after sudo apt install ansible for the same reason sudo pip3 would have worked.
This is one of many assumptions about more general Linux knowledge, and isn't always explained in an individual project's documentation. This project assumes a functioning sysadmin level of knowledge. It doesn't require you to be educated in containers, multiple networks, etc. to use, but it does require a basic level of usage familiarity.
Yes, you're new, I'm not blaming you, but it's not strictly necessary that Geerling should have to elaborate on the specific details of operation post-installation. Project authors should generally document their expected path, any deviation is then on the runner. This is just an education/lack-of-familiarity problem, something that you are still learning.

Thanks for the details of how pip3 and sudo pip3 works. I'm not blaming Geerling for not explaining this kind of things to newcomers, I'm just trying to help to someone facing same problem as me with the solution I found.


How to complete visualization

Hello! Your work is extremely excellent and has been of great help to me.
I have successfully run your train and test files and obtained the trained best.pth and verified accuracy and other information. However, I noticed that at the end of your paper, there are visualized results for classification (i.e., image display). May I ask how can I generate the visualized images?

These results are obtained by transferring a open-world detector Detic to event data (as stated in the figure caption). They are not included in the main repo which focuses on a classification model CLIP. Unfortunately, there is no plan for releasing their code at the moment.


[REQUEST] Add avidemux

Can you please add avidemux?
It can be downloaded from https://www.fosshub.com/Avidemux.html.
The actual webpage for the project is http://fixounet.free.fr/avidemux/download.html, but there the download for windows points to an older version.
Thanks a lot.

See https://github.com/chocolatey-community/chocolatey-coreteampackages/tree/master/automatic/avidemux


Parameters are not working

MySQL.Async.fetchAll("SELECT * FROM user WHERE username = '@username'", {['@username'] = str} ...

When the command executes, it does not replace the @username to variable 'str'
Server console prints SELECT * FROM user WHERE username = '@username'
If the Command.Parameters.AddWithValue(Param, Parameters[Param]) function in Utils.lua is replaced by Command.CommandText = string.gsub(Command.CommandText, Param, Parameters[Param]), then it seems to work fine without having the problem.

Hey you must remove the quote around @username like said in the upgrading guide

Thank your quick reply, I can get it works now!
I also noticed that the server does not print the full query string with parameters. It may be better by adding something like:
function MySQL.Async.wrapQuery(next, Connection, Message, params)
if type(params) == "table" then
	for param in pairs(params) do
		Message = string.gsub(Message, param, "'"..params[param].."'")
	end
end

So the wrapQuery accepts params table and print the full query string to the server console.

Yes, maybe, would prefer a way to retrieve directly the executed query from the underlying lib, instead of doing all this.


Thanks

thanks for sharing! this sore my question

Cannot understand what does this mean "this sore my question".
Sorry


Fix Postgres "idle in transaction" when getting current user

When interacting with a Postgres database, particularly during the process of querying user info, I found that the database connection remains persistently open in an idle in transaction state. This issue may lead to inefficient resource utilization and potential database locks. So I propose to add explicit rollback command after the query operation. This will change connection state to a standard idle
Steps to reproduce

Clone fastapi-users sqlalchemy examples
Make breakpoint in some auth-only endpoint, for example in this one
Open Postgres console and query active sessions:

SELECT state, query FROM pg_stat_activity WHERE client_addr IS NOT NULL;
-- | state                | query                 |
-- | -------------------- | --------------------- |
-- | idle in transaction  | SELECT "user".id, ... | <--- here
-- | active               | SELECT state, ...     |

@frankie567 friendly ping on this

I'm not sure the behavior you describe is accurate. If you breakpoint inside the execution of an endpoint, then yes, your session will be idle. However, after the endpoint execution, FastAPI will release the SQLAlchemy session (that's the purpose of the yield):
async def get_async_session() -> AsyncGenerator[AsyncSession, None]:
    async with async_session_maker() as session:
        yield session

https://github.com/fastapi-users/fastapi-users/blob/ff9fae631cdae00ebc15f051e54728b3c8d11420/examples/sqlalchemy/app/db.py#L28-L30

Yes, after the endpoint execution, FastAPI will release the SQLAlchemy session. This problem exists only during the execution of an endpoint. For example, when the endpoint has some long tasks that takes several seconds, especially IO-bound tasks that don't require a database connection

I see. Given that's it's a quite specific use-case, I'm not really confident into adding a rollback here in all cases. If those idle transactions really are a problem for you (TBH, with a standard PostgreSQL server, I don't think it's a real problem at standard scale), I would suggest to either run your IO tasks in the background or tweak SQLAlchemy settings to open a session that's not inside a transaction.


Set up SonarCloud for easey-testing repo

[ ] Add Sonar project properties file to configure SonarCloud

Worked with Yefim and seeing the following error in the logs when running sonar scan:
_```
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@1877ab81
/home/runner
Invalid file: '/home/runner/work/Testing/Testing/src/main/resources/sample/SampleStarterAPITestData.csv', enter a valid one
java.io.FileNotFoundException: /home/runner/work/Testing/Testing/src/main/resources/sample/SampleStarterAPITestData.csv (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)

Yefim mentioned that the repository is out of date and he will be updating it. After the update, this issue should be resolved.

Worked with Yefim and seeing the following error in the logs when running sonar scan:
_```
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@1877ab81
/home/runner
Invalid file: '/home/runner/work/Testing/Testing/src/main/resources/sample/SampleStarterAPITestData.csv', enter a valid one
java.io.FileNotFoundException: /home/runner/work/Testing/Testing/src/main/resources/sample/SampleStarterAPITestData.csv (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)

Yefim mentioned that the repository is out of date and he will be updating it. After the update, this issue should be resolved.

@srinivasaregeti to update quality gate to require 0% coverage

Jason modified quality gate to accept 0% coverage


boards: native: nrf_bsim: Add system.c file

Add system.c file to include SystemCoreClock
Enables more boards to use BabbleSim

Isn't this just a dup of https://github.com/BabbleSim/ext_nRF_hw_models/blob/main/src/nrfx/mdk_replacements/system.c ?

Oh, yes, I didn't find it in Zephyr, so that's why I added it. But I guess this PR can be closed then and I just need to figure out how to add this ext_nrf_hw to the project

But I guess this PR can be closed then and I just need to figure out how to add this ext_nrf_hw to the project

Note this file should be already built in the project if you are running with a new enough version of the HW models


why go.sum listed in .gitignore file?

As my understanding go.sum is like npm package-lock.json which guarantees the dependencies versions be exactly same as author machine
Why it listed in .gitignore file?
When i run go mod download to install dependencies go command updates libs so I have to commit the changes (go.mod) which I don't want to do it!
I saw other go repos that contains this file
Please include it if there is no specific reason for that, Thanks

There is no need to do this.
If you use build.sh to compile libXray, it will delete the go.mod file and always use the latest Xray-core version.
You can find the codes here:
prepare_go() {

There is no need to do this. If you use build.sh to compile libXray, it will delete the go.mod file and always use the latest Xray-core version. You can find the codes here:
prepare_go() {

@yiguous The Xray-core version isn't the problem at all, the problem is updating go.mod after running the build script, it should install the dependencies without updating any files IMO

I know what you mean. If I remove go.sum from .ignore file, the updating of dependencies will depend on when I build the libXray. It is an annoying job. And I always use latest Xray-core version when developing libXray, so there is no difference between what I do and what you say. The dependencies will be updated frequently.

I know what you mean. If I remove go.sum from .ignore file, the updating of dependencies will depend on when I build the libXray. It is an annoying job. And I always use latest Xray-core version when developing libXray, so there is no difference between what I do and what you say. The dependencies will be updated frequently.

@yiguous Let me give you an example
I as a developer using libXray for my own app and I create a tag for my repo (ex v2.0.0)
If someone wants to build my app from its source for v2.0.0 (git checkout v2.0.0) the output build wouldn't be same as I build it and upload it to my repo releases (build's md5sum definitely would be different)

OK. I see it. I will remove go.sum from .ignore file and publish a new tag.


Consider using Parcel for build

Now that we're using npm workspaces, we can't run the build scripts in parallel. This is slow.
Parcel has a monorepo build script we can use. I have a draft in branch "parcel".
The main issues at the moment:

it doesn't like prop-types missing from dependencies, which will be resolved in #949
it doesn't like building api-docs, which assumes it is being run in a node environment, and complains about process not being in dependencies (perhaps this can be resolved with engines metadata in package.json)

Getting a lot of issues trying to use parcel 2 rc or nightly:
directoryExists is not a function
need to downgrade to TypeScript 3, or upgrade to  @parcel/transformer-typescript-tsc@, both of which paths present further issues:
https://github.com/parcel-bundler/parcel/issues/6893
got unexpected undefined
known issue
https://github.com/parcel-bundler/parcel/issues/6815
Cannot find name ***
Can be resolved by adding "lib": ["es2015"] to tsconfig.json, though this isn't needed by the normal TS build.
https://github.com/parcel-bundler/parcel/issues/6956

I think it's best to come back to this once parcel@2 has an official release


Export valid placement options list

Just a simple static property that lists all the valid placement alternatives.

addressed


Fix to occlusion culling where all math is based on Euclidean distance.

Alternative solution to #94210. Main discussion can be found here #97712
The occlusion culler uses a point to compare with the depth mipmap to determine if an object is occluded or not. The occlusion culler currently chooses the point with the shortest Euclidean distance to the camera. While not entirely inaccurate, it can drift when compared to the actual closest point to the camera in terms of depth.
This inaccuracy increases when an object's AABB is skewed (relative to the camera perspective) and partially occluded by other objects, as seen in the MRP in #94210 and the 2D example below.

There were two possible solutions to this problem, and this PR implements the first solution.
Possible solutions:

Convert the entire occlusion culling algorithm to use Euclidean distance.
Select the closest point based on depth. (#97712)

This PR converts the depthmap used for occlusion culling to euclidean distance. Additionally logic is then added for an orthogonal camera.
bugsquad edit: Fixes https://github.com/godotengine/godot/issues/94210

Although I was initially thinking #97712 would be simpler, having had a look at that PR last night, there are a number of gotchas with that method that are unresolved. This PR on the other hand ends up being simpler than expected, and sidesteps these gotchas, so on balance I now would be thinking of trying this method first.
Of course we will only know snags after some trial in the wild.

Looks good to me. I also tested locally and can confirm that the overocclusion issues in the MRP are fixed and there is no noticeable increase in false negatives (from eyeballing).
Let's go ahead with this PR and see if things improve in the wild.

Thank you! And great work everyone!


[Bug] Pressing shift-enter to make new lines results in repeat line numbering

Pressing shift-enter creates a vertical tab that acts as a line break and Notepads shows all new lines created in this manor as being the same line.
I created a new text document inside a folder through the Windows context menu. I opened the document in Notepads and typed the following:
012
014
Notepads inserts a vertical tab to act as a line break when pressing shift-enter. You can see the break next to 012. The break pushes 014 down to a new line but Notepads shows any new lines using this break as being the same line. Here is a link to the text file I created: https://www.dropbox.com/s/zrat14nqt7gwlmy/Missing Videos.txt?dl=1

Thanks for catching it! It is unwanted behavior and I fixed it here: https://github.com/JasonStein/Notepads/commit/6807ec0ed58a0c23b97fd7f1ee2931d9ebc66409

Closing this ticket since it has been shipped.


Refactor of Game Synchronizer

The game synchronizer had 4 lists that used PeerId as key, I moved all of these into it's own object along with a lot of the logic. This was just to make the game synchronizer more understandable. No logic has been changed.

I added a synchronization state to the synchronizer and updated MDReplicatedMember so it respects this, this fixes #47


Failed Ray server left orphan templates [Bug]

Search before asking

[X] I searched the issues and found no similar issues.

Component
Library/kfp
What happened + What you expected to happen
When Ray cluster creation fails, its template is not removed.
Reproduction script
Run e.g a noop pipeline, and specify the number of replicas to 1 ( min_replicas = 2), so the Ray cluster creation fails with the message:

raise RuntimeError(f"min_replicas {min_replicas} is can't be greater then replicas {replicas} ")
RuntimeError: min_replicas 2 is can't be greater then replicas 1

Another question, why do we need specify replicas, min_replicas and max_replicas
Anything else
No response
OS
Other
Python
3.11
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

The system works as expected; the issue was opened mistakenly.


Add monitoring of container image deployments

@nathancashmore would you mind if I hi-jacked this PR and fixed the raised review issues? I'd really appreciate having the bot notify us about new deployments!

@phillipj go for it.

Alrighty, thanks. I'll for sure credit you as the author in the commit!

Updates after having done some initial testing of this; we decided to send a Slack message from our deployment script with a cURL command instead. Looks something like this:

That in combination with the already existing monitors that will tell us about containers having trouble, covers our needs.
Bottom line, I was a little quick saying I'll hijack this PR with the goals of getting it merged. Sorry for those who waited in vain.

This may be a little unnecessary for some, this should be conditional with a configuration flag.


[FEATURE] Addition of S-AES (Simplified AES) cipher in ciphers directiory.

Detailed description
Addition of S-AES cipher for a better understanding of AES structure and algorithm. S-AES (Simplified AES) was developed by Professor Edward Schaefer of Santa Clara University and several of his students. It is an educational rather than a secure encryption algorithm. It has similar properties and structure to AES with much smaller parameters. It is intended to be used as a teaching tool for students to learn about AES and block ciphers in general. It is not intended to be used for any other purpose.
Difference between S-AES and AES
S-AES is a simplified version of AES. It has a smaller key size and a smaller number of rounds. It is not secure and should not be used for any purpose other than educational purposes. It is not a replacement for AES.
S-AES Parameters :
Block Size: 64 bits
Key Size: 64 bits
Number of Rounds: 4
Number of Subkeys: 4
Number of S-Boxes: 4
Number of S-Box Bits: 4
Number of S-Box Inputs: 16
Number of S-Box Outputs: 16

S-AES Algorithm
The encryption algorithm takes a 16-bit block of plaintext as input and a 16-bit key and produces a 16-bit block of ciphertext as output. The S-AES decryption algorithm takes a 16-bit block of ciphertext and the same 16-bit key used to produce that ciphertext as input and produces the original 16-bit block of plaintext as output. The encryption algorithm involves the use of four different functions, or transformations: add key, nibble substitution (NS), shift row (SR), and mix column (MC), whose operation is explained subsequently. We can concisely express the encryption algorithm as a composition of functions: image Each function operates on a 16-bit state, treated as a matrix of nibbles, where one nibble is a 4-bit number. The initial state matrix is the 16-bit plaintext, State is modified by each subsequent function in the encryption process, producing after the last function the 16-bit ciphertext.
Context
I am raising this issue to propose the addition of the S-AES (Simplified Advanced Encryption Standard) cipher to the ciphers directory as a simpler demonstration model for AES, making it easier to understand and implement for beginners. By incorporating S-AES into this repository, it would serve as a valuable resource for students, educators, and enthusiasts venturing into the realm of encryption. Its simplicity against the full-fledged AES offers a gradual learning curve, making cryptographic concepts more accessible to a broader audience.
Possible implementation
No response
Additional information
No response

Please assign the task of implementing S-AES to this repository.


Mirror Cloudfront add cache origin and failover

Add a new origin to the Mirror CloudFront distributions to use the cache
origin in first place and failover to the mirror bucket when 5xx errors
are detected.
Requires https://github.com/alphagov/govuk-aws/pull/1036, origin_group is only supported in provider > 2.3.0

We can't implement this solution right now


Headless use of raspiblitz

I wan't to suggest to set a digital output pin to high for controlling a green LED to indicate 100% sync and to read a digital input pin (push button) for shutting down the raspiblitz.

The new RP5 will have an on/off button (for headless) and basically the later goal for the LCD is to renebale Touchscreen with an Off-Button.


Dialogflow example failed.

Rasa NLU version (0.10.3):
Used backend / pipeline ( spacy_sklearn, ...):
Operating system (windows, osx, ...):
Linux - Ubuntu
Issue:
Try to use dialogflow examples with new format.

Some intents are missing when use dialogflow sample,
Only 2 intents found. No logs or errors in train result to explain why some file are not read.

INFO:rasa_nlu.utils.spacy_utils:Trying to load spacy model with name 'en'
INFO:rasa_nlu.components:Added 'nlp_spacy' to component cache. Key 'nlp_spacy-en'.
INFO:rasa_nlu.converters:Training data format at ./dialogflow is api
INFO:rasa_nlu.training_data:Training data stats:
        - intent examples: 12 (2 distinct intents)
        - found intents: 'hi', 'inform'
        - entity examples: 5 (2 distinct entities)
        - found entities: 'cuisine', 'location'

In rasa_nlu/data/test/dialogflow_en_converted_to_rasa.json, intents are also missing.

Content of configuration file (if used & relevant):
{
  "pipeline": "spacy_sklearn",
  "data" : "./dialogflow",
  "path" : "./models",
  "log_level": "DEBUG",
  "response_log" : "./logs",
  "language" : "en"
}

The format reading has been updated in the meantime (your log still show Training data format at ./dialogflow is api).


Validation of FileDescriptorSets

Currently FileDescriptor::new performs some sanity checking on the FileDescriptorSet, for example checking that all referenced types can be resolved. However there are many checks that protoc does and we do not.

Known error cases which we could check for but currently don't:

[ ] Invalid message/enum reserved ranges (invalid field number, start greater than end, overlapping ranges)
[ ] Use of reserved message/enum names
[ ] Re-use of the same field number for multiple extensions to the same message
[ ] Extending a non-options type in proto3
[ ] Using a proto2 enum in a proto3 message
[ ] Use of message/enum names which are defined but not imported into the currently file (either directly or transitively through import public

I found that some of the work you've done on this item has caused the 0.10.x revisions to break for my use case.  The validation fails on DuplicateFieldJsonName being the empty string.
DuplicateFieldJsonName { name: "", first: Label { file: "google/protobuf/descriptor.proto", path: [4, 1, 2, 0, 1], span: Some([60, 18, 60, 22]) }, second: Label { file: "google/protobuf/descriptor.proto", path: [4, 1, 2, 1, 1], span: Some([61, 18, 61, 25]) } }
It's a huge spam of seemingly every field in the proto.  My understanding of the spec is that if a JSON field name is not specified it should default to the proto field name lowerCamelCase.

@mrpopogod How are you generating the FileDescriptorSet? With protoc 3.19.1, it sets the json_name field in the descriptor even if the name isn't set explicitly in the .proto file

In my case it's being generated by a schema registry owned by another team; you pass in a plaintext file and it will generate the FileDescriptorSet itself.  I want to say it might still be proto2, but with no support for required fields (those get validated out).

I've published 0.10.2 which should resolve this by setting the json_name to the camel-cased field name if it isn't set

Awesome, no longer getting the build error and my generated .rs files look good.  Appreciate the fix.


super-productivity: 9.0.5 -> 10.0.2

Description of changes
Github release is 10.0.2 as of 7:26 9/9/2024 (GMT+3)
https://github.com/johannesjo/super-productivity/releases/tag/v10.0.2
Comparison:
https://github.com/johannesjo/super-productivity/compare/v9.0.5...v10.0.2
Home Page:
https://super-productivity.com/
Things done
Updated the package version and hash and replaced the older sha256

Built on platform(s)

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

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

Why close it? The rest of the PR is probably fine

Why close it? The rest of the PR is probably fine

becasue i can't figure out how to commit to this PullRequest it's an issue on my part so i am sorry

i made a PR with the exactly the needed changes just now so check it instead


Upgrading Pico 0.x to 1.0.0

(@PhrozenByte - upgrade.md mentions that users that have trouble upgrading should see a corresponding discussion here, which does not yet exist.  Made this issue to reserve the issue number, and I'll remove this comment later.)
Having trouble with your upgrade to 1.0.0?  If you've already checked out the Documentation and could still use a hand, leave a comment below.  We'll check it out and see if we can't walk you through any difficulties.
Found a bug? Create a new issue instead, so we can get to the bottom of it.

Hmm, what sentence do you mean exactly? The current content of the "What's new" section is meant to exist just temporarily and should be replaced completely. If someone experiences a problem while upgrading, he/she should refer to the "Getting help" section, use GitHubs search engine and open a new Issue when necessary. Solving all problems in a single Issue (at worst multiple problems at the same time) makes things just more complicated, or what do you think?

At the very end of the file (in the commented section).  I'm trying to rework the whole document at the moment.  The discussion seemed like an okay idea.  Something to keep open for a little while during the transition.  A place for people to go "Help, I deleted my config accidentally and now my site won't load", or other issues that aren't tied to a bug.  I don't see it being busy enough to get too complicated, and wouldn't be any more difficult than a forum thread would anywhere else.
If you'd like though, I can rework it to reference the "Getting Help" section or just point to the Issues GitHub page.

Ah, I see. The problem is that a ordinary user usually doesn't know how to differ between "I have a question/a problem" and "This is a bug" - it's up to the developers to decide this. #272 is a good example for this :wink:
As long as everybody knows the difference it indeed makes things easier, but as soon as a user reports a bug in this Issue, we get into a hell of a mess. Using separate Issues also makes the whole process a little bit more structurized and makes linking to a specific problem and its solution easier.
Please always link to the "Getting Help" section, as this section describes how a user can help himself first before creating a new Issue.

Okay.  Sounds like a plan. :+1:


runtime org.gnome.Sdk branch 44 is end-of-life

The GNOME 44 runtime is no longer supported as of March 20, 2024. Please update org.gnome.Sdk.

Fixed in 6c28e79


Add exceptions to xml doc comments for common APIs

Documentation:
The current Entity Framework 7 API documentation does not specify which exceptions are thrown by the EF7 methods. This documentation is important, because then users of EF7 can design their exception handlers accordingly.
Design:
Currently EF7 does not wrap SqlExceptions into dedicated EF7 exception types. When DbContext.SaveChanges() is called and a connection to the database is not possible (wrong server name or missing network connection) a pure SqlException is thrown. This should be wrapped by EF7 into an EF7 exception type which is provider independent. At least EF6 ("six") wraps this SqlException into an System.Data.Entity.Core.EntityException.
This also leads to the question of how EF7 will differ from EF6 in terms of the exception design. One example of a difference already found between EF6 and EF7 for example is that EF7.DbUpdateExcption directly inherits from System.Exception, whereas EF6.DbUpdateException inherits from  System.Data.DataException.
Are there any estimates when the documentation of exceptions in Entity Framework 7 will be available?

Agreed on the documentation. When we throw an EF specific exception that can be helpful to catch and handle in user code, then we should document it in the xml doc comments.

Currently EF7 does not wrap SqlExceptions into dedicated EF7 exception types. When DbContext.SaveChanges() is called and a connection to the database is not possible (wrong server name or missing network connection) a pure SqlException is thrown. This should be wrapped by EF7 into an EF7 exception type which is provider independent. At least EF6 ("six") wraps this SqlException into an System.Data.Entity.Core.EntityException.

In EF7 we only wrap where we can provide additional value. For example, when an exception occurs saving a particular row of data, then we wrap in a DbUpdateException and provide the corresponding state entries. However, if the database connection fails to open etc. then there is nothing useful for us to add to the exception. Another way of looking at this, if you just want to handle any exception from SaveChanges, then there is no advantage to us providing a dedicated exception type to catch (with no additional details) vs. you just catching Exception in your code.

This also leads to the question of how EF7 will differ from EF6 in terms of the exception design. One example of a difference already found between EF6 and EF7 for example is that EF7.DbUpdateExcption directly inherits from System.Exception, whereas EF6.DbUpdateException inherits from System.Data.DataException.

DataException is specific to ADO.NET but the core of EF has no dependency on ADO.NET (or relational databases for that matter). Given DbUpdateExcption is part of core, it can not depend on an ADO.NET specific type.

Clearing up milestone of this issue so that we can determine its priority in triage.

This item has been closed. But I cannot see any "justification" for closing it.
Does this mean that the documentation of EF will not be improved with regards to exceptions?
Or is this postponed?

We decided that in general we don't see much value in doing this. We may chose to selectively do this as we document things, but we are not going to spend the time adding them to most APIs.


Limit listed connection based on user access.

The current UI pulls all connections regardless of access this changes that by only returning connections that the user has access to.
Condition to get connections.

user has role admin, no access checks are executed and you get all connections.
user must have a connection exposed through access menu by an admin.

The user access list is retrieved by using the current user.id or the magic consts.EVERYONE_ID.
If the user's access list contains consts.EVERY_CONNECTION_ID all connections are returned.
Otherwise the connection.id must be contained in the user access list

Thanks @JstDust!


Update core-xe-version

Description

1. Why the change?

2. User API changes

3. Summary of the change

4. How to test?

[ ] N/A
[ ] Unit test: Please manually trigger the PR Validation here by inputting the PR number (e.g., 1234). And paste your action link here once it has been successfully finished.
[ ] Application test
[ ] Document test
[ ] ...

5. New dependencies

[ ] New Python dependencies
- Dependency1
- Dependency2
- ...
[ ] New Java/Scala dependencies and their license
- Dependency1 and license1
- Dependency2 and license2
- ...

Hi @SANKHA1 We noticed that you've created several PRs recently. Could you please let us know the purpose behind these? Also, is there any chance that some of them might have been created by mistake?


Adding integration test to make sure master health is correct

after external reparent.
@enisoc @guoliang100 Trying to reproduce the bug, can't so far.

LGTM


do not trigger provisioning when selecting hosts for masters

Assume a master has already been provisioned and do not set the image
or user data so we avoid triggering provisioning.

This is based on our discussion from earlier in the week, but now that I have it worked out I don't know how important it is. If we assume we're going to import the master hosts and machines pre-populated, we shouldn't need to worry about provisioning being triggered.

I had this thought while starting to review this PR:
We've talked about specifying the image in the provider spec on the machine. That way it can be defined on the MachineSet, and that gives a reasonable API for the installer or some other actor to set and/or change the value.
Maybe that's where this decision should happen. Rather than hard-coding that machines with the particular label should not have their image set, what do you think about letting that decision be made by whatever creates the Machines for masters? They would just leave that field of the provider spec empty. Then if someone has other machines they don't want provisioned, this would support that. Or if someone figures out how to provision masters using the machine-api, this would already work for them. Thoughts?

I had this thought while starting to review this PR:
We've talked about specifying the image in the provider spec on the machine. That way it can be defined on the MachineSet, and that gives a reasonable API for the installer or some other actor to set and/or change the value.
Maybe that's where this decision should happen. Rather than hard-coding that machines with the particular label should not have their image set, what do you think about letting that decision be made by whatever creates the Machines for masters? They would just leave that field of the provider spec empty. Then if someone has other machines they don't want provisioned, this would support that. Or if someone figures out how to provision masters using the machine-api, this would already work for them. Thoughts?

I like that. Where does that happen? Do we have any of that implemented, yet?

I like that. Where does that happen? Do we have any of that implemented, yet?

Not yet. We need to implement our own provider spec. I've seen some actuators have a "provider config" instead but I haven't looked closely to see what the difference is. Either way, something in the installer is going to create a MachineSet, and that's the thing that will need to have information like this.

I'll abandon this one and we can write another patch when we're ready to do this with values coming from the machine set.


Mathematics course

could you please add a precalculus

My favorite precalculus courses are
https://modernstates.org/course/precalculus/ and https://www.edx.org/course/precalculus-asux-mat170x

I just finished taking the modernstates precalculus course.
The videos are good for condensed fast access to equations and principal
logic, but the textbook that comes with the course really lays out from
base to peak the concepts you need.
The negatives are the videos have some minor irritating bloopers, and of
the 90 or so questions at the end, I found just one that had an incorrect
solution. All in all I highly recommend. I am well ready for any
precalculus CLEP exam or test.
[image: Mailtrack]
https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&
Sender
notified by
Mailtrack
https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&
03/25/19,
12:02:09 PM
On Mon, Mar 25, 2019 at 5:15 AM jacksonb2913<EMAIL_ADDRESS>wrote:

My favorite precalculus courses are
https://modernstates.org/course/precalculus/ and
https://www.edx.org/course/precalculus-asux-mat170x
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ForrestKnight/open-source-cs/issues/27#issuecomment-475995505,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AiqkZOfzo2Fu_uAAo99DS51g1gI7-JTIks5vZ9zbgaJpZM4cFuNB
.

Thank you very much I appreciate it.
On Sun, Mar 24, 2019 at 11:05 PM Joel Morancy<EMAIL_ADDRESS>wrote:

I just finished taking the modernstates precalculus course.
The videos are good for condensed fast access to equations and principal
logic, but the textbook that comes with the course really lays out from
base to peak the concepts you need.
The negatives are the videos have some minor irritating bloopers, and of
the 90 or so questions at the end, I found just one that had an incorrect
solution. All in all I highly recommend. I am well ready for any
precalculus CLEP exam or test.
[image: Mailtrack]
<
https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&

Sender
notified by
Mailtrack
<
https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&

03/25/19,
12:02:09 PM
On Mon, Mar 25, 2019 at 5:15 AM jacksonb2913<EMAIL_ADDRESS>wrote:

My favorite precalculus courses are
https://modernstates.org/course/precalculus/ and
https://www.edx.org/course/precalculus-asux-mat170x
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<
https://github.com/ForrestKnight/open-source-cs/issues/27#issuecomment-475995505
,
or mute the thread
<
https://github.com/notifications/unsubscribe-auth/AiqkZOfzo2Fu_uAAo99DS51g1gI7-JTIks5vZ9zbgaJpZM4cFuNB
.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ForrestKnight/open-source-cs/issues/27#issuecomment-476039312,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AumiZjUIaNjSIa0J_acFQy9mMHpUVcGfks5vaDzzgaJpZM4cFuNB
.

Done


Fix requirements

Update installation for torch-sparse and torch-scatter

@danielschweigert-TRI @arashkhajeh-AMDD could I get an approval ASAP? trying to test docker builds from htpmdw.

I will take a look now


[SR-13930] Index store does not relate objc optional protocol method implemented in subclass

Previous ID
SR-13930

Radar
rdar://problem/71941002

Original Reporter
Leitch (JIRA User)

Type
Bug

Environment
Swift 5.3.1

Additional Detail from JIRA

Votes
0

Component/s
Source Tooling

Labels
Bug

Assignee
None

Priority
Medium

md5: b4e60253efa0e8c7ffa0ba78d8eff02f

Issue Description:
Given the following code:
import Foundation

open class Baseclass: NSObject, FileManagerDelegate {
    public func fileManager(_ fileManager: FileManager, shouldRemoveItemAt URL: URL) -> Bool {
        false
    }
}

public class Subclass: Baseclass {
    func fileManager(_ fileManager: FileManager, shouldRemoveItemAtPath path: String) -> Bool {
        false
    }
}

The index store does not relate the method implemented in the subclass to the protocol declaration, although it does so for the method implemented in the baseclass. From the perspective of detecting unused code, it's not possible to identify that fileManager(_:shouldRemoveItemAtPath:) is an implementation of the protocol method.
Method in subclass:
10:10 | instance-method/Swift | fileManager(_:shouldRemoveItemAtPath:) | c:@M@swift_ide_test@objc(cs)Subclass(im)fileManager:shouldRemoveItemAtPath: | Def,Dyn,RelChild | rel: 1
  RelChild | class/Swift | Subclass | c:@M@swift_ide_test@objc(cs)Subclass

Method in baseclass, note the extra `RelOver`:
9:14 | instance-method/Swift | fileManager(_:shouldRemoveItemAt:) | c:@M@swift_ide_test@objc(cs)Baseclass(im)fileManager:shouldRemoveItemAtURL: | Impl,RelOver,RelCont | rel: 2
  RelOver | instance-method/Swift | fileManager(_:shouldRemoveItemAt:) | c:objc(pl)NSFileManagerDelegate(im)fileManager:shouldRemoveItemAtURL:
  RelCont | class/Swift | Subclass | c:@M@swift_ide_test@objc(cs)Subclass

seems to still be the case


missing cleanup for CADisplayLink

Correct me if I'm wrong but aren't you missing cleanup for CADisplayLink?
Shouldn't you at least .invalidate() it (probably remove from runloop also) before CHIBasePageControl is deallocated? Otherwise you risking of calling method on deallocated CHIBasePageControl

hi @RolandasRazma ,
You are absolutely right. I'm going to fix it in next update.
Thank you for a bug report.

thanks


Consider implementing ZcashSerialize for PeerServices wrappers

Motivation
PeerServices are serialized as part of other types, but it always has to be converted to the appropriate representation.
In order to centralize where the representation is defined, it would make sense to implement ZcashSerialize and ZcashDeserialize for each serialized PeerServices format:

PeerServicesU64
PeerServicesCompactSize64

Then we can use those wrapper types in types that serialize PeerServices.

Wrapper types are required for this change, I've updated the description.
See the details here:
https://github.com/ZcashFoundation/zebra/pull/3021#discussion_r746018604


Sysbox unable to handle read-only rootfs requirement

Problem was initially observed in a Cloudron setup. For security purposes, Cloudron sets container's spec so that its rootfs is mounted as read-only.
There are two different issues being reported here:

Sysbox expects 'read-write' rootfs in received OCI spec. We already had a fix for this one, but it hasn't been merged yet. This prevents read-only container from properly launching:

$ docker run --runtime=sysbox-runc -it --rm --read-only --name test-1 nestybox/ubuntu-focal-systemd-docker
docker: Error response from daemon: OCI runtime create failed: error in the container spec: invalid or unsupported container spec: root path must be read-write but it's set to read-only: unknown.

In scenarios involving docker's custom-networks (which is the case in Cloudron), Sysbox adjusts the DNS resolution process to avoid forwarding issues in nested container setups. As part of this adjustment, sysbox-runc writes into the container's /etc/resolv.conf file. However, this is not allowed in read-only setups. This triggers the following failure:

$ docker run --runtime=sysbox-runc -it --rm --read-only --name test-2 --net=rodny-testing ubuntu
docker: Error response from daemon: OCI runtime create failed: container_linux.go:364: starting container process caused "process_linux.go:533: container init caused \"switching Docker DNS: rootfs_linux.go:1247: writing /etc/resolv.conf caused \\\"open /etc/resolv.conf: read-only file system\\\"\"": unknown.

/cc @vrobm

(co-founder of Cloudron) . Let me know if you need any clarifications on the Cloudron setup. Do you know of any workaround for the DNS resolution? We have an unbound server on the host and we require the containers to resolve via that DNS server. This is required for email server dnsbl lookups to work reliably across all VPS providers.
Thanks for looking into this!

(co-founder of Cloudron) . Let me know if you need any clarifications on the Cloudron setup. Do you know of any workaround for the DNS resolution? We have an unbound server on the host and we require the containers to resolve via that DNS server. This is required for email server dnsbl lookups to work reliably across all VPS providers.
Thanks for looking into this!

Thanks @gramakri, @vrobm has been very helpful answering my questions and providing the setup. I'm expecting to have a fix for this issue very soon.
Now, coming to the DNS issue that you eluded to, is this something that you have replicated in the setup that i've been using (with my temporary fixes), or is this a separate setup? If this is a different environment, could you please file a separate issue for this with a brief explanation?

@rodnymolina Ah sorry, I was merely commenting on your point no. 2 in the initial bug report. I was just letting you know why our DNS setup is the way it is, nothing more :)

@gramakri, i see your point.
The error that Sysbox displays above (as part of problem 2) is a direct consequence of some DNS tweaking we did a while back to avoid resolution issues in nested containers. Basically, in scenarios where docker internal DNS is utilized (i.e. whenever docker's custom-networks are used), docker pushes a "<IP_ADDRESS>" entry into the container's resolv.conf, and creates a SNAT iptable-entry to ensure that DNS queries are forwarded to the docker's embedded DNS running in the host. That works well for containers running at level-1, but it causes issues for nested containers (L2+), as these rely on Docker's default DNS server (i.e. <IP_ADDRESS>). As a result, DNS queries initiated from L2 containers end up going to an external DNS server and not to the one running in the host.
We fixed this problem by having Sysbox writing a valid/routable address in resolv.conf (we picked the L1 container's egress iface), and by adjusting the iptables to ensure that all DNS queries are forwarded to Docker's embedded DNS server.
I'm explaining all this so that you understand that, from my perspective, your DNS setup is no special, you are just relying on Docker's embedded DNS server, and the problem is triggered simply coz we can't write into the container's resolv.conf as it's mounted as RO. (fix is WIP).
Please let me know if there's anything that i haven't fully understood from your DNS setup.


About documents.tsv

About running this instruction:
Indri index
awk '{print $3}' data/robust/*.run | python extract_docs_from_index.py indri PATH_TO_INDRI_INDEX > data/robust/documents.tsv
I got a problem.
What's PATH_TO_INDRI_INDEX ?,should I modify any code in extract_docs_from_index.py?
I run this py file and the error is
the following arguments are required: index_type, index_path
Thanks for your great work!！

PATH_TO_INDRI_INDEX is the the path to an indri index for the target collection. Since the document content is stored when indexing, you can use this to get a copy of the text for use by the models. You shouldn't need to modify extract_docs_from_index.py -- you just need an index built.

sean

OK,I'll try it.
I appreciate your response,Thank youI!!

Has your problem been solved? I have the same problem as you. Could you please reply me at your convenience？


 Please describe.
The repository root has a playbooks folder that contains some yaml files, but there is currently no automated mechanism to check for syntax legitimacy.
5 Describe the solution you'd like
Just add yaml-lint to PR CI.
6 Describe alternatives you've considered
7 Additional context

/kind feature

check ansible-related yaml files only currently


 :-)
From now on, when you perform non-controversial changes like the above, feel free to merge your pull request yourself. That will avoid breaking your workflow. In case something was wrong, reverting is always possible. Of course, I will still read your pull requests and comment when necessary, even after you merged them.
Cheers!

Yay! :D Will do, thanks Nicolas!


How to set identity token and access token timeout in run time

I am using Identity Server 6 with my ASP.NET Core. It is working fine. I tried to set the Access Token lifetime based on the roles in run time but it always take database configured value, it's not overwriting the run time value
[Img -1]

[Img -2]

I tried to set in both places Login and GetProfileDataAsync but its not working as expected.
Is there any reason for this behavior?

Duplicate of https://github.com/DuendeSoftware/Support/issues/731


Upgrades the version of quarto-webr from 0.1.0 to version 0.3.6

@jurjoroa Hi! We recently released an updated version of the quarto-webr extension. Below is a PR that updates the extension source to the latest version which fixes a few bugs and improves functionality.

Hi @coatless! Thank you so much for the heads up. webr is one of the best utilities in the Hertie Coding Club website. I'll let you know when the changes are set


Build GitHub actions-based CI/CD workflows

Reference: https://github.com/insightsengineering/r.pkg.template

Completed.


[examples] Split examples into separate sub-projects, rather than separated by platform

The current examples are separated by Platform (web, android, desktop), and the same features are re-implemented in each platform with very little difference between them. This also makes the example projects have a bunch of additional "architecture" that may make it difficult to understand the intended use-case and configuration of these features.
Instead, let's break these examples out into a handful of separate, much simpler example projects. The majority of these should be defined as Compose Multiplatform projects with Android, Desktop, and Web targets, with as much as possible defined in the commonMain sourceset. These examples can then each be individually embedded into their respective documentation pages.
The goal is for each project to include the absolute minimum amount of boilerplate necessary to demonstrate a particular feature of Ballast, as well as avoid duplication of the examples. This will also allow more flexibility in different kinds of examples, as each one is easier to setup and maintain. The idea is to show less about how to set up your KMP repos, and focus more on how to setup and use Ballast.

Closed in PR #66, to be available in Ballast version 4.1.0.


CMake: Add X86 to LLVM_TARGETS_TO_BUILD

Should fix #1080
Accidentally fixes #905

Before
96% tests passed, 9 tests failed out of 205
The following tests FAILED:
26 - iree_modules_check_test_failure.mlir.test (Failed)
27 - iree_modules_check_test_success.mlir.test (Failed)
193 - bindings_python_pyiree_rt_function_abi_test (Failed)
194 - bindings_python_pyiree_rt_hal_test (Failed)
195 - bindings_python_pyiree_rt_system_api_test (Failed)
196 - bindings_python_pyiree_rt_vm_test (Failed)
199 - iree_tools_test_multiple_args.mlir.test (Failed)
200 - iree_tools_test_scalars.mlir.test (Failed)
201 - iree_tools_test_simple.mlir.test (Failed)
After
99% tests passed, 1 tests failed out of 205
The following tests FAILED:
195 - bindings_python_pyiree_rt_system_api_test (Failed)

Nice!


[VPR] Advanced Mode Single Target broke

As of last update, Advanced Mode Single Target for Viper broke. The main combo path, Vicewinder combo option and Reawaken combo option all do not work anymore.

Fixed in PR #62

Not sure if connected, but Pug/Monk too appears broken (Advanced Single target and Basic Single Target).

SAM/BLM/MCH/MNK/DRG
will all be fixed with the linked PR

VPR/SAM/BLM/MCH/MNK/DRG/RPR
will all be fixed with the linked PR

Thank you for your work!


removed sfb 2019

removed sfb 2019, Persistent Chat is removed from sfb 2019 @AndreaBarr

OPS Build status updates of commit 570a6bc:
:clock10: Preparing: average preparing time is 1 min(s) 12 sec(s)

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

OPS Build status updates of commit 570a6bc:
:clock10: Incremental building: average incremental building time is 12 min(s) 23 sec(s)


[component][list/summary] Conditionnal display for the exportAction

In the list/summary component, please add a flag option (or test that this.props.exportAction != undefined or null) to show/hide the export button
https://github.com/KleeGroup/focus-components/blob/master/src/list/summary/index.js#L44

Ok for next release !


ImportError: cannot import name 'DistilBertModel'

🐛 Bug
Can you update the pypi package? I cannot import DistilBERT on pytorch_transformers==1.1.0

Yes, you should install it from source right now if you want to use DistilBERT. We're planning a new release 1.2.0 that includes DistilBERT + GPT-2 Large + XLM 100/17 sometimes this week :).


Carriage return chars when using Code on Windows

Hi, just a small issue I found a couple of days ago. When using Code on Windows to create the module definition object, the editor adds CR+LF, which makes the parser skip the check for @NgModule on a file.
The capturing group on the regex would also have been written as (.|\n|\r\n)* but I believe that's too much verbose and \s covers both cases.
Let me know if you're fine with it and makes sense to you.

Thanks for the PR!
Since \s captures all whitespace it did have some side-effects on my OS X box. So I've updated the regex to capture \r?\n. This should work on both Windows and Unix-like systems.

I've published a new version in NPM.

Awesome, thanks for the heads up!


[DOCFIX] Update Running-Alluxio-On-Docker.md of the Chinese version

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/16770/
Test PASSed.


Unable load firmware.

Windows Version
10.0.22621.1992
WSL Version
<IP_ADDRESS>
Are you using WSL 1 or WSL 2?

[X] WSL 2
[ ] WSL 1

Kernel Version
No response
Distro Version
Ubuntu22.04
Other Software
No response
Repro Steps

make menuconfig Choose cfg80211 and mac80211 as [M].
make modules && sudo make modules_install
sudo modprobe mac80211

Then cfg80211 fails to load regulatory.db under /lib/firmware.
Error message:
platform regulatory.0: Direct firmware load for regulatory.db failed with error -2.
cfg80211: failed to load regulatory.db.

Expected Behavior
正常加载regulatory.db
Actual Behavior
[  752.936630] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[  752.936760] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[  752.936806] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[  752.936809] cfg80211: failed to load regulatory.db

Diagnostic Logs
No response

Thank you for reporting this. Kernel modules are not officially supported. Closing since we already have issues for kernel modules support

/dupe #10450


Delete ExitLocation from truck/tank

After https://github.com/HaywireInteractive/OnAllFronts/pull/201 this is no longer used.

[x] In truck/tank delete ExitLocation component
[x] In AC_VehicleUsageHandler remove Exit Scene Component argument from "Enter Vehicle" function

Already done.


NagView

With the idea from #57 , I created a plugin for both lite and lite-xl. Recently, @franko requested me to integrate it into lite-xl (thanks!).
There is no rush for this PR to be merged. We could find bugs and fix them before merging (and hopefully I am able to backport those fixes to my plugin)

Nice, thank you very much @takase1121. Your implementation is really well done and perfectly integrated with the lite/lite-xl code base, good work!
If you feel you want to contribute more to lite-xl I will be glad to give you the contributor status for the project and the lite-plugins repository.

that would be lovely. Thank you! I'm not a very creative person, but I
might be able to help with some user suggestions at least.
On Sat, Mar 13, 2021, 20:03 Francesco @.***> wrote:

Nice, thank you very much @takase1121 https://github.com/takase1121.
Your implementation is really well done and perfectly integrated with the
lite/lite-xl code base, good work!
If you feel you want to contribute more to lite-xl I will be glad to give
you the contributor status for the project and the lite-plugins repository.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/franko/lite-xl/pull/99#issuecomment-798249260, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AE6UHTEWT2G3BLM5LWP6D3TTDNH7JANCNFSM4ZDV5USA
.

Hi @takase1121, I just noticed the NagView obliges you to use the mouse breaking the "flow" for keyboard oriented people.
What do you think about letting user "tab" across the buttons and use "enter" to accept on the button ?
@budRich you advice would be precious too!

I'm in for this, tab should be cycling between the selections. But I am not that keyboard oriented, so I will wait for more suggestions.


README.md is outdated

The config.json in the README.md needs to be updated.
A few examples: rootCAs is shown as array but needs to be a directory, verbose is shown as bool but is int, there's at least one missing comma for valid JSON.

fixed.


Use $config{build_file} instead of $target{build_file}

If the user specifies an alternative build file than the default, this
alternative is recorded in $config{build_file}, not $target{build_file}.
Therefore, the former should be used, leaving the latter as a mere default.
This is a bug.  While fixing it, document it better too.

This should cherry-pick nicely to 3.1 and 3.0.  1.1.1 requires a
separate PR.

#20174 is the corresponding change for 1.1.1.  It's more or less the same, minus documentation (which is different, and interestingly enough more complete for this stuff)

There is still a slight issue with this fix, the outputted files are still named as defined by  $target{build_file}. You still need to change one reference in configdata.pm.in: https://github.com/openssl/openssl/blob/master/configdata.pm.in#L94

I assume @t8m's approval still holds since it was a trivial fix up.

Need to update reference here as well: https://github.com/openssl/openssl/blob/master/configdata.pm.in#L94

Oh!  Right you are

Unfortunately, that means re-approvals are needed

This pull request is ready to merge

Merged to master, 3.1, and 3.0 branches. Thank you.


Documentation suggestion: Setting up an Ingress with TLS enabled

Is your feature request related to a problem? Please describe.
The default cr-*.yaml files set up an Ingress that doesn't seem to work. There's no host matching, and with a traefik ingress controller I couldn't figure out how to access the Vault UI. I tried creating an Ingress for it the same way I have for other services, but https wouldn't work. Here's the YAML I used:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: vault-ingress
  namespace: vault
  annotations:
    kubernetes.io/ingress.class: traefik
spec:
  rules:
    - host: &host vault.wirywolf.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: vault
                port:
                  number: 8200
  tls:
    - hosts:
      - *host

The Ingress was created, but visiting it in my browser would just give me an error:
Client sent an HTTP request to an HTTPS server.

I couldn't figure out what was going wrong, and after searching for that error and trying solutions in vain, I happened upon the answer while reading https://kubernetes.io/docs/concepts/services-networking/ingress/:

and assumes TLS termination at the ingress point (traffic to the Service and its Pods is in plaintext)

That helped me realize that Traefik was terminating my TLS traffic, and attempting to send regular HTTP traffic to the vault service, hence the error. I then created the following ingress with TLS passthrough, and it worked:
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRouteTCP
metadata:
  namespace: vault
  name: vault-ingress
spec:
  entryPoints:
    - "websecure"
  routes:
  - match: HostSNI(`vault.example.com`)
    services:
      - name: vault
        port: 8200
        weight: 1
  tls:
    passthrough: true

Describe the solution you'd like
If this is valuable information, I'd like to see it added to the documentation to help others in the future. I'm happy to send a PR for the documentation update if you tell me which section I should add it to.
Describe alternatives you've considered
Not having TLS enabled, which doesn't seem like a very good alternative
Additional context
Add any other context or screenshots about the feature request here.

Hi @ameyp, thank you for sharing the solution you found! We would be grateful if you could add this information to the Tips and tricks section of our docs page!

Hi @ameyp, thank you for sharing the solution you found! We would be grateful if you could add this information to the Tips and tricks section of our docs page!

Sorry for the late reply. I actually stopped using Vault altogether.


Attach stdin

Issue: https://github.com/apocas/dockerode/issues/5
This improvement (including this: https://github.com/apocas/docker-modem/pull/11), makes it possible (even using unix domain sockets), attach to container with stdin enabled.
This pull request includes a complete use example, including use a resize to update a tty dimensions.

@all I know this PR is 4years old, but I can't see where you write in the stream. I see that you attach to the containers but when do you write things in the stream between you and docker, because I think this example only write from docker to you right ?
https://github.com/apocas/dockerode/blob/master/examples/run_stdin.js

@JeromeVi :
host.js
const Docker = require('dockerode');

var docker = new Docker(); //defaults to above if env variables are not used

docker.createContainer({
    Image: 'node:latest',
    Cmd: ['/usr/local/bin/node', '--harmony', '/scripts/client.js'],
    Binds: [__dirname + ':/scripts'],
    CapDrop: ['ALL'],
    Privileged: false,
    Tty: true,
    OpenStdin: true,
}, function (err, container) {
    if(err) throw err;

    container.attach({ stream: true, stdin: true, stdout: true, stderr: true}, function (err, stream) {

        if(err) throw err;
        stream.pipe(process.stdout);

        container.start(function (err, data) {
            if(err) throw err;

            console.log('host:' + data);
            stream.write('beep boop 1\n');
            stream.write('beep boop 2\n');
            stream.write('beep boop 3\n');

        });
    });
});

client.js
process.stdin.on('readable', function () {
    console.log('client:on.readable');
    var buf = process.stdin.read();
    console.log('buf:');
    console.dir(buf);
});

setTimeout(function() {
    console.log('Done !');
    process.exit();
}, 5000);

@netgusto  so here you write "beep boop 1" "beep boop 2"... in the terminal of the machine that you create at the top of the code right ? Because when I do your code (with some little modifications to fit mine) I got the Docker logs but I can't write in the machine terminal so maybe I'm doing something wrong

@netgusto hello, I try to run script with your example, it shows:

TypeError: stream.write is not a function

Is my node.js (v6.4.0) version wrong ?

@BrickXu I got the same error log, have you fixed it ?

@tces1 no

@BrickXu ,I found that the problem was caused by incomplete Docker Engine API documentation, the exec start request body just ''Detach" and "Tty", when you wirte stream,it will crash! Only when the configuration file add params: {stream: true, stdin: true, stdout: true, stderr: true}, the chunk can write correctly.  -_- ~

Sorry to hijack this old issue, but how would you do echo "console.log(123)" | docker run -i node:10-alpine node - in dockerode?
I tried the following, but this just waits for input forever

localDocker.createContainer({
  Image: 'node:10-alpine',
  HostConfig: {
    AutoRemove: true
  },
  Tty: true,
  OpenStdin: true,
  Cmd: ['node', '-']
}, function (err, container) {
  container.attach({ stream: true, stdin: true, stdout: true, stderr: true }, function (err, stream) {
    if (err) throw err

    container.modem.demuxStream(stream, process.stdout, process.stderr);
    stream.write('console.log(123)')

    container.start(function (err, data) {
      if (err) throw err
      //stream.end()
    })
  })
})

You have to start a container before a process is live in it that can accept stdin and process it.

@HenningCash this doesn't work because dockerode does not end the stdin stream correctly for Tty: false which is necessary for node. In the tests you see the author uses exit to force exit the container without closing the stream first. A stream.end('console.log(123)') doesn't close the stdin in the container as well. So until this is fixed your only bet is to not use stdin for node (also since node doesn't support \x04), use JSON.stringify and pass it as argument and use ;exit at the end.

@HenningCash I got a workaround for you:
localDocker.createContainer({
  Image: 'node:10-alpine',
  HostConfig: {
    AutoRemove: true
  },
  OpenStdin: true,
  Cmd: ['sh']
}, function (err, container) {
  container.attach({ stream: true, hijack: true, stdin: true, stdout: true, stderr: true }, function (err, stream) {
    if (err) throw err;

    dockerStream.pipe(process.stdout);

    const code = `console.log(123)`;
    stream.write(`echo "eval(${JSON.stringify(JSON.stringify(code)).slice(1, -1)})" | node;exit;\n`);

    container.start(function (err, data) {
      if (err) throw err;
    })
  })
})

@HenningCash and here's the final solution: https://github.com/apocas/dockerode/issues/455#issuecomment-489436370


 It can be found in maint lockers, and turns you into an interdimensional being.

this is cursed

genuinely terrifying. I love it

remove the farts

Thank you for your PR, unfortunately, the maintainer's conscious was to deny it for the reason that farts are just uh... weird to say the least for this repo, and may be abused. We also don't find this funny in general as it just gives you a different sprite.
Thank you for your effort and good luck next year!