Windows Support for InfluxData Platform

We need to gauge importance of Windows Server support is to the community at large. Let us know the version, use case and if scalability features like clustering matter to you. Also please also specify if Windows support is critical for other components of the TICK stack specifically - Telegraf, Chronograf and Kapacitor. +1 on this issue to register your vote.

+1
Version: unknown, recent
Clustering: no
Other TICK components: not critical
What elements of InfluxDB are currently inhibiting it running on Windows? The 0.9.4 build that was previously published works (mostly), so what changes have been introduced that break compatibility?

@aaliddell TSM which will be the default engine in 0.10.0 does not work on windows currently.

+1
version: recent
Clustering: yes but no priority
Telegraph: yes
Others: no
Potential use case: Industrial historian

+1
Telegraf

We use the unofficial Telegraf build that someone published.

+1
version: recent
Clustering: not required yet
TICK: kapacitor

+1
version: recent
Clustering: yes but no priority
other TICK: no priority
Potential use case: Industrial historian

+1
Version: recent
Clustering: yes but no priority
Other TICK: no priority
Potential use case: Industrial historian

+1
Version: recent
Clustering: yes but no priority
Other TICK: no priority
Potential use case: Industrial historian

+1
Version: recent
Clustering: yes but no priority
Other TICK: no priority
Potential use case: Industrial historian

Why is there so much interest in the use case of Industrial Historian?

To answer the question myself:
We're building process systems (from P&ID to installation & commissioning) and want to experiment with IIoT and analytics. Classical industrial historians are restrictive in their licensing.
Something else to point out: Windows server 2016 will support docker containers which might take away a big part of the need to support Windows?

+1
Version: recent
Clustering: yes, but not a priority
TICK: Kapacitor (big +1)
Use case: industrial historian + custom event/notification source
Our app platform: Windows Server cluster, .Net Clients
@demeyr: not an end user. Our Windows support requirement is due to the inefficiencies in hosting multiple OS's. Each device/VM and its OS version/configuration in use would need its own security assessment and documentation (hundreds of pages).

+1
Version: recent
Clustering: yes (primary interest is in system uptime with secondary being performance).  A combination with something like Consul or HAProxy would probably be in order to allow for simplification on the client side.
TICK: Kapacitor (big +1)
Chronograf : yes
Use case: industrial historian
I think a viable deployment alternative in today's market with most people running a modern hypervisor might be to build appliances that can be very easily deployed and managed by non-linux admins much like you have with VCenter.  Maybe the administration part is what's in the Enterprise Admin I've seen in a few places on the site.  Either way I think most Windows people would be comfortable running an appliance as long as they don't have to drop to a shell to manage the software.

+1

Telegraf for monitoring windows servers in the system.
Backend services are ok as linux as those boxes are specific to the monitoring function. Linux is much easier to deploy when you have the choice.

+1 Telegraf

+1 Telegraf

I fix all unit test in the tsm engine #5434

+1
Version: 2008R2 even if I hope upgrading to 2012 soon.
Telegraf mainly.
Use case: monitoring of SMB devices

@ShubhraKar  any update about plans to Support Windows

+1
version: recent (currently using 0.9.5)
Clustering: would be great, but not critical
other TICK: would be great, but not priority
Potential use case:
We are building an executive dashboard using grafana based on data from commercial APM tool. The tool in question is very complex in nature, and not executive friendly. We built a custom C# code, to pull the data at a regular intervals (hence the time series DB), and populate Influxdb, and show in grafana.
We have it running currently in prod, and is running fine except for occasional glitches in InfluxDB and oddities of old query engine.

+1
Server 2012 and 2012R2.
@demeyr  I'm running Server 2016 TP4 and the truth is that Linux containers basically run in a Hyper-V VM on-top of the Windows Hypervisor (called a Hyper-V container, but thats marketing) - This is very different to running native.

@ianclegg
Yes I'm aware of this.
At least this gives the option to tick of the boxes of needing to use a Window OS, even though it has the container in between.

+1

+1

+1

+1
Version: recent
Clustering: yes
TICK: Kapacitor (big +1)
Chronograf : yes
Telegraf: yes (very critical)
Potentiaalia use case: Large scale SaaS product operational monitoring and analytics

Telegraf: +1

+1
Version: recent
Clustering: yes
Use case: Saas product operational monitoring & analytics

+1

Small update. Telegraf should officially build on Windows along with new WMI / perf plugins by 0.11 release.
For InfluxDB, there is a community fix from @runner-mei . We will need to test for the entire TICK stack and load & boundary  conditions to provide official support. Will provide updates as we go. Thanks everyone.

+1

+1
Version: recent
Clustering: low priority
Other TICK components: low priority

+1
version: recent
Clustering: low priority (yet)
other TICK: no priority
Potential use case: Industrial historian

@ShubhraKar -- any idea whether InfluxDB will get Windows support, and if so, what release that might be in?

+1

+1
version: recent
Clustering: yes but no priority
other TICK: no priority
Potential use case: Industrial historian

Yes we have support for the entire TICK stack Windows on our short term roadmap. Telegraf and InfluxDB will be the first 2 to be certified followed by Kapacitor and Chronograf.
For now, I am projecting V0.12 to have official T and I support. If your need is urgent, please drop me a line with some project details at<EMAIL_ADDRESS>BTW, I am the product manager.

@ShubhraKar great, thanks. :smiley:

+1
Version: Recent
Clustering: Yes, but no priority
Other TICK components: I use C, but no priority

+1
version: recent
Clustering: would be great, but not critical
other TICK: would be great, but not priority
Potential use case:
We are building a dashboard using Grafana based on data from our own C# application suite, using Metrics.Net and our own custom code as well.
We are about to release a new version of our application suite where we introduce this. We currently wrap both Grafana and InFluxDb in our own installer.

TSM engine compiles and works well enough as of now on master. Clustering is still work in progress. People are welcome to test the version and report bugs. If someone can't build on their own, they can download from https://github.com/mvadu/influxdb/releases/tag/v0.10.1

+1 for InfluxDB (other TICK components are not needed). Our complete software stack runs with Windows, but time series databases seem to be all Linux only, except InfluxDB which at least HAD windows builds in the past - please bring them BACK :+1:

+1
Version: 0.10.x
Use case: industrial historian for custom-built devices, 50-100 kpoints/day, 2-year retention
TICK stack: unused, InfluxDB only
Clustering: unused, single-server setup

+1

+1
Enough Support to let a developer test some things on their own machine. i.e. Clustering and TICK are low priority. Bleeding edge would be nice, but is also not terribly important.

Use case: Windows on primary development machine, having InfluxDB running there means one less VM is needed.

+1
Linux is not "supported" at my current employer.
I don't have enough experience with InfluxDB to know if really need scalability or clustering.  We don't need it for our RDMBS's so  i am saying it is less important than just running on Windows.

Status update: The current TSM engine is very very stable on windows. In fact this is the first time we have gone without a glitch (we are using windows Influx all the way from 0.9.3 days) for 2 weeks at a stretch, and engine is still running. (anyone interested to test [download here](download from https://github.com/mvadu/influxdb/releases/tag/v0.10.1))
Note that current build has a small  problem in windows in configuration area (ref #5715, #5848), you need to tweak the config meta section to refer localhost:8091, instead of default :8091, but rest assured once it starts, it runs well!

Thank you Adarsha! I will test it soon. I have 1TB of data to import :)
Enviado desde mi iPhone

El 4 mar 2016, a las 8:56, Adarsha<EMAIL_ADDRESS>escribió:
Status update: The current TSM engine is very very stable on windows. In fact this is the first time we have gone without a glitch (we are using windows Influx all the way from 0.9.3 days) for 2 weeks at a stretch, and engine is still running. (anyone interested to test download here)
Note that current build has a small problem in windows in configuration area (ref #5715, #5848), you need to tweak the config meta section to refer localhost:8091, instead of default :8091, but rest assured once it starts, it runs well!
—
Reply to this email directly or view it on GitHub.

Awesome news! now on to some proof of concepts
Are any missing features in this Windows version compared to the Linux version? clustering for example

Version: 0.9.4 and 0.10.x
Clustering: Optional, but nice to have
TICK: Not yet.
Use Case: Currently we gather VMware vSphere performance metrics using Powershell.  Stats are then written to InfluxDB using cURL and presented with Grafana.

@mvadu How did you get the build number to show properly?  I compile same as I always have for InfluxDB on Windows, but since 0.10 (fresh deployment, not an upgrade) I don't see the version number via CLI or the web interface.  Your version looks amazing (deployed it successfully), but I want to fish for myself if possible.

+1
Developing (.NET) apps on Windows, unless it's easy to keep a local instance running, metrics get added as an afterthought rather than a core part of the development process. Currently using Docker Machine, but it's fiddly. Version non-specific and clustering obviously not a big deal in this case.
(Whatever devs run during development/test tends to find its way to production, so without TICK then it'll be less well-utilised/well-tested in Windows projects, unless it also gets local dev support.)

@vmkdaily getting version is easy, -ldflags="-X main.version=$VERSION -X main.branch=$BRANCH -X main.commit=$COMMIT" difference in windows is regular replacing $xx with %xx% part. I was not able to use the variables, and instead hardcoded the version in -ldflags

@elvarb the version that I posted works with clustering setup, but I have not been able to test the fail safe nature of cluster. Follow #5715 if you are interested to contribute to test clustering setup on windows.

+1
Version: recent
Clustering: yes but no priority
Other TICK: no priority
Potential use case: Energy Data

+1
Telegraf
Chronograf
Clustering: no
Potential use case: Industrial Data Historian

+1
Version: recent
Clustering: yes but no priority
Other TICK: no priority
Potential use case: Automation Data/Historian

@ShubhraKar are you still stay with your Feb 12 comment of 0.12 supporting windows? Starting with 0.11.0 RC Influx breaks basic Create Database command, and we can't even test any further on Windows. If there is no commitment from OEM, community can only do so much.

Hi @mvadu ,
I downloaded the 0.10 version from here: https://github.com/mvadu/influxdb/releases/tag/v0.10.1, but it says version 0.9 when running influxdb.
Any ideas?

@andrecarlucci Please check out v0.11.0-rc1. This is same 0.11 code that Influx pushed out last week with one additional fix for windows side to fix port 8091 issue. I think previous version had 0.9 hardcoded in web UI, and the server needed ldflags to passed in properly.

@mvadu could you please publish the commands you used to generate those versions ? Thanks !

@njoyard I build form my branch using a powershell script I wrote. Note that InfluxData folks are generating nightly builds now (ref), but they are not testing it any way on Windows (comparatively I make sure all tests pass before publishing my releases).

@mvadu just stopping by to say thank you for your contributions to the Windows InfluxDB community!

@vmkdaily sure thing. Btw, today is a big day for Influx on Windows, we finally have continuous integration test suites running on AppVeyor.com (ref: #6249) got merged. So from now on every new build is guaranteed to have passed basic tests on Windows.

@beckettsean, #6454 implies Windows support is not on the near-term roadmap, but @ShubhraKar suggested at least Telegraf and Influxdb support might be in v0.12.  Can either of you offer any insight into this?  Windows Influxdb support would be a compelling factor for my team.

Telegraf is a separate project and already has reasonable Windows support with 0.12. InfluxDB may have Windows support in the future but it is not yet officially supported.
"Near-term" means we are working on it right now.

+1
If windows builds were officially supported I have a project I'd be using it for right now.
Clustering: no
TICK wise: Kapacitor would be a nice to have but the app is already doing the tests necessary for alerting.
Use case: local historian to store within shift data before summarizing to system of record.

+1
Version: recent
Clustering: yes but no priority
Other TICK: no priority
Potential use case: SCADA Platform

Version 0.9
Already using influxdb for industrial historian with great success. Waiting for official Windows release with TSM.

+1
Version: recent
Use case: Running Bosun on an entirely Windows stack
Clustering: no
Other TICK: I don't think so, unless they are required to run Bosun

+1
version: recent
Clustering: no
other TICK: no
Use case: Devops monitoring (with Grafana)
Currently running a version of 0.9 built from sources last year when it compiled OK (with some effort) on Windows.

+1
Version: recent
Clustering: no
Other TICK: no
Use case: SCADA analytics

On par with InfluxData's 0.13 release, I have built Windows x64 version which is available at https://github.com/mvadu/influxdb/releases/tag/v0.13.0, people are encouraged to test and report any windows specific bugs either here or on my fork. I will be happy to take a look.

+1
https://github.com/TrinityCore/TrinityCore/pull/16956 we use InfluxDB + Grafana to show realtime metrics about MMORPG server application, showing ingame players, network usage and game-specific data to monitor possible issues. Since our project is cross-platform (Windows, Linux, Mac) and uses cross-platform software (like CMake/MySQL) it would be nice to have a cross-platform InfluxDB too

+1
Especially for development with InfluxDB it would make my life so much easier...

@beckettsean, perhaps you and @ShubhraKar are not on the same page, since he indicated this feature is "on our short term roadmap".  It appears that is not the case.
There's a clear response from the community here.  Can we expect a response from InfluxData any time soon?

@binary132 I run support, I don't run product. If you want to advocate for features I'm the wrong person to @-mention.
I would suggest that we happily accept PRs. Can we expect a commitment to this from the community?

I would suggest that we happily accept PRs.

According to https://github.com/influxdata/influxdb/issues/5359#issuecomment-222977860 and https://github.com/influxdata/influxdb/compare/master...mvadu:0.13 there's nothing to pull request to add windows support, it's just a matter of providing Windows binaries at https://influxdata.com/downloads/#influxdb

Apparently we're already building these, we're just not linking them on the downloads page. See here:
https://dl.influxdata.com/influxdb/releases/influxdb-1.0.0-beta2_windows_amd64.zip
We'll update the downloads page sometime soon. However, we don't officially support Windows so those binaries are use at your own risk.

@pauldix Linking it from download will help even if its under a big red Use at your own risk header.
That will help the community to test it. I tried to publish the windows build periodically asking for feedback, but since I don't work for Influx, I failed to get much traction. Currently only thing missing for Influx on windows is thorough user testing before you can remove that header.
Also with AppVeyor integration (which I setup initially) you are already supporting windows, i.e. all PRs are already tested against Windows.

All, thanks for the effort!
IMHO Windows support will enable a share in industrial process automation (and of course all the other applications).
At least we will now start looking into migrating from 0.9 to latest.

I don't think most people providing software to clients would be comfortable delivering a product which supports a stats backend not officially supported by the company.  We had to go with a much less interesting option since one of the product requirements is full platform compatibility.  Influx on Windows would be a really compelling feature for many people who are stuck with it because some of their clients are Windows users.
That said, it's great that Windows compatibility exists and I wish InfluxData would figure out where they stand on the topic.

We'll update the downloads page sometime soon

any update on adding the download link at https://influxdata.com/downloads/#influxdb ?

Looping in @rossmcdonald and @toddboom. Can one of you guys get the downloads page updated with links to the Windows build of InfluxDB?

@pauldix -- it still won't be officially supported, right?  Any idea whatsoever when that might happen?

+1 We are currently introducing metrics analysis to our servers and software, but since Influx isn't supporting windows (and all of our servers are Windows servers) we're probably going to go with a commercial solution that does.

@pauldix first, it's amazing you guys have made 1.0 beta2 available for Windows 64-bit. However, I wonder if you are gonna release 32-bit version as well?
I've found previous bits (up to 0.12) here, that include both 64-bit and 32-bit bits for Windows, so it seems like you have the capacity to build 32-bit versions: https://s3.amazonaws.com/influxdb/
We are currently using Redis 2.8 (32-bit) on 32-bit end user machines (a client Windows app), and we are evaluating an opportunity to move to InfluxDB as it could better suite our needs (temporal indices).

thestonehead, if you are running or can run Windows 2016, it supports
docker (I've not tried it) and there is a dockerized version of InfluxDB ...
On Wed, Jul 13, 2016 at 6:08 AM, thestonehead<EMAIL_ADDRESS>wrote:

+1 We are currently introducing metrics analysis to our servers and
software, but since Influx isn't supporting windows (and all of our servers
are Windows servers) we're probably going to go with a commercial solution
that does.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/influxdata/influxdb/issues/5359#issuecomment-232313448,
or mute the thread
https://github.com/notifications/unsubscribe/AF8zLTc7mzs5KbXHyOFqP5974PFAplXFks5qVLkOgaJpZM4HFWVe
.

Windows Nano Server 2016 is a desired target. Nano has particular limitations due to lacking various APIs, though I wonder if that matters much for Go. Probably it does!
Products of relevance: InfluxDB, Kapacitor, Telegraf.
Nice-to-have but not critical: Chronograf.

We'll update the downloads page sometime soon.

Please add the windows binaries download link on the download page, either for nightly or beta. It's just a link and it's taking quite some time...

+1
Full TICK preferred
Clustering preferred
Use case is replacing/complementing existing Industrial historians (multi site, multi region, currently vendor locked) and opening up more options for analytics.
Unfortunately (sic) we are a Windows shop, heavily virtualized using VMWare
It would be really appreciated if a Windows download link could be made available off the Influx website even if it clearly states it is unsupported/unofficial/whatever

I don't know how things look from the enterprise side, but from where I stand, it's truly disappointing to see the direction Influx appears to be headed.

@binary132 : could you elaborate why you think like this?

We'll update the downloads page sometime soon

@pauldix the joke is not funny anymore, almost 3 months passed, still no download link

@Jackkoz we were in the middle of getting the new web site set up, launching 1.0 of every product and a few other things that haven't been announced yet, so this dropped off our radar. We'll try to get it updated. In the meantime...
https://dl.influxdata.com/influxdb/releases/influxdb-1.0.0_windows_amd64.zip

Alright, the link for InfluxDB windows binaries is now up on the downloads page and will be updated with all future releases. Sorry for the delay!
Additionally, please send us any feedback you have while testing it out. Thanks!

Now that the binaries are up, I'm going to close this one out.

Thank you @pauldix for pulling this together. Hopefully second time around the download link will stick around.

works like a charm, thank you

+1
Version: unknown, recent
Clustering: no
Other TICK components: not critical
Using InfluxDB to store temperatures, pressures and digital state from a PLC control system.

+1

+1, my industrial customers are still stuck in the 90s Windows Server world...


iOS NavigationPage OnWillUnmount not called

It seems that on iOS OnWillUnmount is not called when popping a page from the navigation stack when using a NavigationPage. It does work as expected on Android (tested with API 32). Might be related to or a regression from #164.
To Reproduce
I'm currently using the following setup for which I can reproduce the behavior with the sample code.

.NET 8.0.8
Microsoft.Maui.Controls 8.0.80
Reactor.Maui 2.0.46

class MainPage : Component
{
    public override VisualNode Render() => NavigationPage(new HomePage());
}

class HomePage : Component
{
    public override VisualNode Render()
        => ContentPage(
            ScrollView(
                VStack(
                        Button("GoTo SubPage")
                            .OnClicked(() => Navigation.PushAsync<SubPage>())
                    )
                    .VCenter()
                    .Spacing(25)
                    .Padding(30, 0)
            )
        );
}

class SubPage : Component
{
    protected override void OnMounted()
    {
        // This is "correctly" called every time the page is pushed to the navigation stack.
        // Without ever calling OnWillUnmount this could lead to memory leaks though.
        Console.WriteLine("SubPage.OnMounted");
        base.OnMounted();
    }

    protected override void OnWillUnmount()
    {
        // This is never called. Either via Back-Button or via PopAsync
        Console.WriteLine("SubPage.OnWillUnmount");
        base.OnWillUnmount();
    }

    public override VisualNode Render()
        => ContentPage(
            VStack(
                    Label("SubPage"),
                    Button("GoBack")
                        .OnClicked(() => Navigation.PopAsync())
                )
                .Spacing(16)
                .VCenter()
        );
}

Expected behavior
I'd expect that OnWillUnmount for SubPage is called as soon as I navigate back to the HomePage.
Smartphone:

iPhone 15 Pro, iOS 17.5 (Simluator)
iPhone 12 Pro Max, iOS 17.6.1 (physical Device)

Hi, the problem seems related to the strange behavior of the events Appearing/Disappearing in iOS.
Android:
When you move back to the previous page (Navigation.PopAsync()) the event Disappearing is raised AND NavigationStack doesn't contain anymore the page.
When you move to the next page (Navigation.PushAsync()) the event Disappearing is raised AND NavigationStack still contains the page.
IOS:
When you move back to the previous page (Navigation.PopAsync()) the event Disappearing is raised BUT NavigationStack still contains the page.
When you move to the next page (Navigation.PushAsync()) the event Disappearing is raised AND NavigationStack still contains the page as happened for the case when you move back.
So MauiReactor under iOS can't know if it can OnMount the component or not, and following the Android behavior it doesn't right now causing possible memory leaks.
This is a serious bug thanks for reporting it, still investigating.


WiP: cluster: tcp upstream config

Commit Message:
Introduces Envoy::Tcp::GenericUpstream and Envoy::Tcp::GenericUpstreamPoolCallbacks to
the common interface of tcp-like data stream upstream.
Also introduce tcp_upstream_config in cluster to customize the behavior of TcpGenericConnPool.
Additional Description:
There is an example of switching TcpProxy from tcpConnPool to adopt the GenericUpstreamPool
while maintaining the existing behavior of optionally using H2 CONNECT.
Signed-off-by: Yuchen Dai<EMAIL_ADDRESS>Risk Level: Med
Testing:
Docs Changes:
Release Notes:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]

For Tcp Proxy:
This PR is a mostly a refactor on dependency. It no long depends on TcpConnPool or HttpConnPool,
but on the Tcp::GenericUpstream which will be customized by tcp_upstream_config.
#11112 could be an extension of the tcp_upstream_config
For other TcpConnPool users,
This PR could be an example migrating from TcpConnPool with minimum change.


expr1 ?? expr2 not effect

map['selfUid'] = selfUid ?? 0;

selfUid is null

hi, @FreeSunny
Please see https://flutter.dev/community for resources for asking questions like this. Closing since it's not an issue.
You may get some help if you post it on Stack Overflow.


Updated info.md to correct image orientation in final datasheet

Looks like this only removed empty lines from info.yaml, and added an unrelated vscode settings file


Moving validation of time controls to store

[x] Move validation of time ranges from TimeControl to dashboard store and to other files.
[ ] Move setting of default time range and time range from url outside of TimeControl
[ ] Add tests to this code since they are now outside of svelte component.

Closing in favour of #2760


Updated ZeroMQ examples to ZeroMQ version >= 3.0.

Some ZeroMQ symbols have changes in version 3.0 of ZeroMQ (before 2014). Current stable branch is 4.2. Additionally, the Python code used newstyle language option, which isn't supported in the Thrift compiler anymore. This style is the default now.

The reason why these rotted is because they are in contrib/ - perhaps we should think about pulling this into the library proper?

I opened https://issues.apache.org/jira/browse/THRIFT-4571 for this change.


Knex: Timeout acquiring a connection. The pool is probably full.

Hi @tgriesser ,
I am facing "Unhandled rejection TimeoutError: Knex: Timeout acquiring a connection. The pool is probably full. Are you missing a .transacting(trx) call?" issue while making insert query to postgres database from 2 same application servers. How did you solve this problem ?
Please suggest some solution.

There is probably something wrong how you are using knex. Its impossible to say without seeing the failing code. Please add minimal test code, which can be used to reproduce the problem.
Also this issue tracker is mainly for development, not for user support, so stackoverflow would be better medium for this.

@elhigu got the same problem using<EMAIL_ADDRESS>on oracledb dialect via the stack offshore / offshore-sql

@atiertant What did you do to fix this problem with<EMAIL_ADDRESS>and OracleDB?

@Glavin001 you should have a look at this:
$ sqlplus / as sysdba
select resource_name, current_utilization, max_utilization, limit_value from v$resource_limit where resource_name in ('processes', 'sessions', 'transactions');


fix: always use app name defined in app.json

Description of change
Fixes https://github.com/meroxa/turbine-project/issues/173
Type of change

[ ]  New feature
[x]  Bug fix
[ ]  Refactor
[ ]  Documentation

oof... my code is warning unnecessarily
warning: failed to clean up app at /home/janelle/go/src/github.com/meroxa/demos/location-test2: remove /home/janelle/go/src/github.com/meroxa/demos/location-test2/location-test*: no such file or directory

oof... my code is warning unnecessarily warning: failed to clean up app at /home/janelle/go/src/github.com/meroxa/demos/location-test2: remove /home/janelle/go/src/github.com/meroxa/demos/location-test2/location-test*: no such file or directory

I'll look into this.


Add Power VS region to IBM VPC and IBM COS region mapping functions

Add Power VS region to IBM VPC and IBM COS region mapping functions

/cc @dharaneeshvrd

/cc @dharaneeshvrd

/lgtm
@mkumatag if you have no comments, you can approve.


Grounding DINO is now available in 🤗 Transformers!

Hi folks!
Grounding DINO is now available in the Transformers library, enabling easy inference in a few lines of code.
Here's how to use it:
from transformers import AutoProcessor, GroundingDinoForObjectDetection
from PIL import Image
import requests

url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
text = "a cat."

processor = AutoProcessor.from_pretrained("IDEA-Research/grounding-dino-tiny")
model = GroundingDinoForObjectDetection.from_pretrained("IDEA-Research/grounding-dino-tiny")

inputs = processor(images=image, text=text, return_tensors="pt")
outputs = model(**inputs)

# convert outputs (bounding boxes and class logits) to COCO API
target_sizes = torch.tensor([image.size[::-1]])
results = processor.image_processor.post_process_object_detection(
    outputs, threshold=0.35, target_sizes=target_sizes
)[0]
for score, label, box in zip(results["scores"], results["labels"], results["boxes"]):
    box = [round(i, 2) for i in box.tolist()]
    print(f"Detected {label.item()} with confidence " f"{round(score.item(), 3)} at location {box}")

Demo notebook: https://github.com/NielsRogge/Transformers-Tutorials/blob/master/Grounding DINO/Inference_with_Grounding_DINO_for_zero_shot_object_detection.ipynb
Checkpoints are on the hub: https://huggingface.co/models?other=grounding-dino

Relevant for https://github.com/IDEA-Research/GroundingDINO/issues/88

Thanks for your work!
I found an issue where the same model produces different results. Take the image of '000000039769.jpg' as an example. The results of the official code are significantly better than those of the transformer library
The results you report are
Detected 1 with confidence 0.45 at location [344.8, 23.2, 637.4, 373.8]
Detected 1 with confidence 0.41 at location [11.9, 51.6, 316.6, 472.9]
My results based on the transformer package
Code:
from transformers import AutoProcessor, GroundingDinoForObjectDetection
from PIL import Image
import requests
import torch
import matplotlib.pyplot as plt
import matplotlib.patches as patches
image = Image.open('000000039769.jpg')
text = "cat"
device = 'cpu'
processor = AutoProcessor.from_pretrained("IDEA-Research/grounding-dino-tiny")
model = GroundingDinoForObjectDetection.from_pretrained("IDEA-Research/grounding-dino-tiny").to(device)
inputs = processor(images=image, text=text, return_tensors="pt").to(device)
outputs = model(**inputs)
convert outputs (bounding boxes and class logits) to COCO API
target_sizes = torch.tensor([image.size[::-1]])
results = processor.image_processor.post_process_object_detection(
outputs, threshold=0.2, target_sizes=target_sizes
)[0]
for score, label, box in zip(results["scores"], results["labels"], results["boxes"]):
box = [round(i, 2) for i in box.tolist()]
print(f"Detected {label.item()} with confidence " f"{round(score.item(), 3)} at location {box}")
Results:
Detected 1 with confidence 0.26 at location [40.29, 72.75, 175.84, 117.19]
The results based on the official code and colab.
import os
CONFIG_PATH = os.path.join(HOME, "GroundingDINO/groundingdino/config/GroundingDINO_SwinT_OGC.py")
print(CONFIG_PATH, "; exist:", os.path.isfile(CONFIG_PATH))
WEIGHTS_NAME = "groundingdino_swint_ogc.pth"
WEIGHTS_PATH = os.path.join(HOME, "weights", WEIGHTS_NAME)
print(WEIGHTS_PATH, "; exist:", os.path.isfile(WEIGHTS_PATH))
from groundingdino.util.inference import load_model, load_image, predict, annotate
model = load_model(CONFIG_PATH, WEIGHTS_PATH)
import os
import supervision as sv
IMAGE_NAME = "000000039769.jpg"
IMAGE_PATH = os.path.join(HOME, "data", IMAGE_NAME)
TEXT_PROMPT = "cat"
BOX_TRESHOLD = 0.35
TEXT_TRESHOLD = 0.25
image_source, image = load_image(IMAGE_PATH)
boxes, logits, phrases = predict(
model=model,
image=image,
caption=TEXT_PROMPT,
box_threshold=BOX_TRESHOLD,
text_threshold=TEXT_TRESHOLD
)
annotated_frame = annotate(image_source=image_source, boxes=boxes, logits=logits, phrases=phrases)
%matplotlib inline
sv.plot_image(annotated_frame, (16, 16))

Pinging @eduardopach here

Thanks for your work! I found an issue where the same model produces different results. Take the image of '000000039769.jpg' as an example. The results of the official code are significantly better than those of the transformer library
The results you report are Detected 1 with confidence 0.45 at location [344.8, 23.2, 637.4, 373.8] Detected 1 with confidence 0.41 at location [11.9, 51.6, 316.6, 472.9]
My results based on the transformer package Code: from transformers import AutoProcessor, GroundingDinoForObjectDetection from PIL import Image import requests import torch
import matplotlib.pyplot as plt import matplotlib.patches as patches
image = Image.open('000000039769.jpg')
text = "cat" device = 'cpu' processor = AutoProcessor.from_pretrained("IDEA-Research/grounding-dino-tiny") model = GroundingDinoForObjectDetection.from_pretrained("IDEA-Research/grounding-dino-tiny").to(device) inputs = processor(images=image, text=text, return_tensors="pt").to(device) outputs = model(**inputs)
target_sizes = torch.tensor([image.size[::-1]]) results = processor.image_processor.post_process_object_detection( outputs, threshold=0.2, target_sizes=target_sizes )[0]
for score, label, box in zip(results["scores"], results["labels"], results["boxes"]): box = [round(i, 2) for i in box.tolist()] print(f"Detected {label.item()} with confidence " f"{round(score.item(), 3)} at location {box}")
Results: Detected 1 with confidence 0.26 at location [40.29, 72.75, 175.84, 117.19]
The results based on the official code and colab.
import os
CONFIG_PATH = os.path.join(HOME, "GroundingDINO/groundingdino/config/GroundingDINO_SwinT_OGC.py") print(CONFIG_PATH, "; exist:", os.path.isfile(CONFIG_PATH)) WEIGHTS_NAME = "groundingdino_swint_ogc.pth" WEIGHTS_PATH = os.path.join(HOME, "weights", WEIGHTS_NAME) print(WEIGHTS_PATH, "; exist:", os.path.isfile(WEIGHTS_PATH))
from groundingdino.util.inference import load_model, load_image, predict, annotate
model = load_model(CONFIG_PATH, WEIGHTS_PATH) import os import supervision as sv
IMAGE_NAME = "000000039769.jpg" IMAGE_PATH = os.path.join(HOME, "data", IMAGE_NAME)
TEXT_PROMPT = "cat" BOX_TRESHOLD = 0.35 TEXT_TRESHOLD = 0.25
image_source, image = load_image(IMAGE_PATH)
boxes, logits, phrases = predict( model=model, image=image, caption=TEXT_PROMPT, box_threshold=BOX_TRESHOLD, text_threshold=TEXT_TRESHOLD )
annotated_frame = annotate(image_source=image_source, boxes=boxes, logits=logits, phrases=phrases)
%matplotlib inline sv.plot_image(annotated_frame, (16, 16))

Actually, the output is the same :D, there's only one catch in your example.
The original implementation takes your text prompt and adds a . at the end so what is happening is that for the transformers example, you're passing "cat" and in the original, you're passing "cat." and this causes the difference you're seeing

it's possible to train?

Think you!

it's possible to train?

In theory, you can, it wasn't extensively tested, but if you find any problems open an issue in the transformers repo and tag me there


iampk94 info added to contributors.json

Issue

Description

Checklist

[ ] Added contributor object in ascending order in contributors.json
[ ] Github action build passing
[ ] No merge conflicts

more spaced added in the contributor page


[ASK] why dark mode only support android 10?

For now at least, I use the system-wide dark theme Android implemented in Android 10.


Adding noise to GDBSCAN result

Adding Noise to GDBSCAN result

Hey I was hoping also to be able to capture the noise points. Any plans to merge this that you know of, or how would you go about detecting noise with GDBScan? Thanks


UseProjection breaks @defer and loads everything in one go

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
When using the UseProjection attribute, @defer does not work anymore. I could not find any info if this scenario is currently not supported or if it is a bug.
Easily reproducible with this setup:
    public class Book
    {
        public string Cheap => "Foo";
        public async Task<string> Expensive()
        {
            await Task.Delay(10000);
            return "Bar";
        }
    }

    public class Query
    {
        private static readonly Book _book = new();

        public Book GetBook() => _book;
    }

Then sending this query:
query Test {
  book {
    cheap
    ... @defer(label: "deferredValue") {
      expensive
    }
  }
}

Works perfectly fine. If you put [UseProjection] on the GetBook method it breaks and takes 10 seconds to load with the same query.
    public class Query
    {
        private static readonly Book _book = new();

        [UseProjection]
        public Book GetBook() => _book;
    }

This issue is maybe linked to the same problem: #5386
Steps to reproduce

Use code from above without UseProjection  attribute -> works fine
Put UseProjection attribute on GetBook method -> does not work anymore, loading takes 10 seconds even with @defer

Relevant log output
No response
Additional Context?
No response
Product
Hot Chocolate
Version
12.15.0

 [UseProjection]
        public Book GetBook() => _book;

this would never work since projection needs an IQueryable

@PascalSenn is there a way that we throw at schema build time if you put UseProjection on something that is not projectable? Can we figure that out?

@michaelstaib  yes this would be possible

 [UseProjection]
        public Book GetBook() => _book;

this would never work since projection needs an IQueryable

Sorry, my bad, this was indeed a bad example. But the issue remains with a correct example though.
    public class Query
    {
        private static readonly IQueryable<Book> _books = new[] { new Book(), new Book() }.AsQueryable();

        [UseProjection]
        public IQueryable<Book> GetBooks() => _books;
    }

With UseProjection:

Without UseProjection:


Fix file reference parsing

Related issue
Closes: #73
Description

Parsing file references no longer splits on \t characters. Instead, this is handled by a .Trim() call so leading and trailing white space is removed. This prevents the parser from thinking whitespace exists in the middle of a string.
The parsing function was moved to its own method to make it easier to test

Supplemental testing
Describe any testing done in addition to existing unit tests
Additional context
Please provide any additional information related to this PR

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for fixing this and restructuring the code.


Public/View-only-Webinterface (no login required)

Dear tananaev,
i'm a big fan of traccar ever since i found it and from that moment on, it ran on my homeserver to track my routes whenever i need it to! Thank you for that!
While doing that, i regularly want to share that information with friends, family, co-workers or an unknown group of people (e.g. Facebook). So far, that only works by giving them the login credentials, which creates the possibility that somebody deletes data or changes passwords or messes up something else. Also, for some people, choosing the right device and timeframe is an obstacle as well (e.g. not-so-tech-savvy-grandparents).
It would be cool to have the possibility of a webinterface, which shows a simplified version without the need of a login.
Effectively, there would be only the map itself and most basic options. The data shown could be predefined: For example "all data from last 3 days" or "all data from one device" or "present location only", which was "made public" by having a checkbox for this option. There would be no options to alter the data in any way (view-only). In a way, very similar to embedded google-maps.
This would open the possiblity to embed this traccar-interface into other Webpages to enable live tracking without the need to "login - choose device - choose timeframe - load data - zoom".
Wether it's done through a special user account specified in the URL-address, an additional button besides "Login" and "Register" or a parrallel webinterface running on a different port is not important, i guess.
It's just an idea so far, taken from daily use of traccar. Comments are welcome!

@tananaev
Issue can be closed. Is implented


feat: add new soroban-test crate

What
Take advantage of the cli being a library and create a new TestEnv type which helps ensure that tests are run within their own directory.
Why
Invoking tests with assert_cmd is costly and as our tests were growing so was the time it took.  Furthermore, it's API is not as friendly to new devs. Since we can parse commands directly it allows executing them directly and the cost savings have already be shown 9s down to <2
Known limitations
Currently there is not a standard way of setting the pwd of a test.
Using the std to set the pwd and using a Environment variable, both suffer from being shared mutable variables, which causes tests to become flaky.
The current approach was adding a --pwd command to the config locator and thus any method that requires the config.  This allows the TestEnv to prepend --pwd={}, however, this breaks any command that doesn't have a --pwd flag.  This commands can be invoke directly by parsing them with methods provided by the CommandParser trait.

@paulbellamy The windows failures seem to be addressed.  Turns out you should not use .display for paths.
The other issue left is naming.  Should we merge as is and then address the API and how things are named?


6.0: [BitwiseCopyable] Allow suppression via ~.

Explanation: Allow BitwiseCopyable conformance inference to be suppressed via ~.
Scope: Affects BitwiseCopyable checking.
Issue: rdar://126687850
Original PR: https://github.com/apple/swift/pull/72646
Risk: Low.
Testing: Added unit tests for new suppression spelling.
Reviewer: @DougGregor

@swift-ci please test


Image width and height

We need to way to get access to image size. If should also support calculation of the other value when one is specified.

There is a problem that we can't compute these values without locating the file on disk, and so querying the database.
In gallery, all images are from a single directory, so if we pass dir id along side the file id, all quries will run only once.


German translation for 1.2.6

http://pastebin.com/W244tAvm #80

You might wanna look into creating a pull request for this one

Nah, I can add it myself too.

Thanks @dirk251272! I'll add the translation for 1.2.7 (next MC 1.10.2 version) and 1.3 (next 1.11 version).


extracting model response

Fixes #72

@marshmellow77  Thanks for contributing. Can you please update/run integration tests?

Integration test ran successfully:
(venv-lc-google) heikohotz-macbookpro:vertexai heikohotz$ pytest tests/integration_tests/test_model_garden.py
================================================================================================== test session starts ==================================================================================================
platform darwin -- Python 3.11.7, pytest-7.4.4, pluggy-1.4.0
rootdir: /Users/heikohotz/Documents/Projects/repos/langchain-google/libs/vertexai
configfile: pyproject.toml
plugins: syrupy-4.6.1, anyio-4.3.0, asyncio-0.21.1
asyncio: mode=Mode.AUTO
collected 6 items
tests/integration_tests/test_model_garden.py ......                                                                                [100%]
====================================================================================== warnings summary =======================================================================================
tests/integration_tests/test_model_garden.py::test_model_garden[FALCON_ENDPOINT_ID-generated_text]
/Users/heikohotz/.pyenv/versions/3.11.7/envs/venv-lc-google/lib/python3.11/site-packages/langchain_core/_api/deprecation.py:117: LangChainDeprecationWarning: The function __call__ was deprecated in LangChain 0.1.7 and will be removed in 0.2.0. Use invoke instead.
warn_deprecated(
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
===================================================================================== slowest 5 durations =====================================================================================
37.08s call     tests/integration_tests/test_model_garden.py::test_model_garden[FALCON_ENDPOINT_ID-generated_text]
31.19s call     tests/integration_tests/test_model_garden.py::test_model_garden_agenerate[FALCON_ENDPOINT_ID-generated_text]
29.70s call     tests/integration_tests/test_model_garden.py::test_model_garden_generate[FALCON_ENDPOINT_ID-generated_text]
3.72s call     tests/integration_tests/test_model_garden.py::test_model_garden_generate[LLAMA_ENDPOINT_ID-None]
2.75s call     tests/integration_tests/test_model_garden.py::test_model_garden_agenerate[LLAMA_ENDPOINT_ID-None]
========================================================================== 6 passed, 1 warning in 107.34s (0:01:47) ===========================================================================

integration test should be updated accordingly (to test the changes).
could you work on this, please (and fix linting too).

What is linting? And I don't want to publish my endpoint IDs to the repo - but then how will it know which endpoints to use?
I'm afraid I'm not familiar with integration testing tools (it was already a struggle to get pytest to run), so I'm not sure what needs to be done here :)

can someone offer guidance on what needs to be done here?

@marshmellow77 firstly set up poetry with linting and testing like explained over here https://python.langchain.com/docs/contributing/code#local-development-dependencies
Then run from make lint and make format from the respective module directory i.e. libs/vertexai or libs/genai after activating poetry shell. Please let me know if you need further help!


I'd like to report a problem or request help

I'm experiencing the following issue on www.instagram.com: (include as many details as possible)

Made a couple adjustments, but if you still see comments after updating the definitions (in the options page), just let me know where.


Fix schedule trigger

Schedule trigger seems to have a default value event when schedulePolicy not configured.

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

OK, I've already triggered a build for you.


[feat req] allow no-auth to use.

add environment or front button to allow no-auth for local personal.

Should be available when v0.70 releases.
Added NO_AUTH env: 5e13288fc1efbcb0e832d313053144b397b8bcc3
NO_AUTH routing: 6c15c28c2e3bb7a10470baeff2c235e1d9fbdb47

@bingoct It's barely tested, but it's been implemented in v0.70-dev.
If you have NO_AUTH: true in your environment variables, and you're connecting from localhost, you will be logged in as "Localhost / admin" when you press "Sign in".
No username or password required.
Commit: aacc25cd15d10ab81407521b2a70daabff00be6d

@bingoct NO_AUTH env should be fully functioning in v0.70-dev now.
Commit: 935cf1e9952d8238bf68abf33ee2e7249640e7cb


[2.0] Phpstan to level 6

This PR includes #672 and #673, so it needs to be merged only afterwards.
Still WIP. Included PRs are merged, I've merged 2.0 to align this, we can proceed, please revew!
In here I raise PHPStan analysis level to 6, fixing a few bugs too. I've had to ignore a few thing, but I hope that we can get rid of those problems in the near future.

Triggering CI


Playing an audio file on a mounted volume (docker image)

Describe the bug
When uploading (import) a task involving an audio file, the UI plays it fine if that file has been imported to the UI (lands in /label-studio/data).
However, the UI won't play an audio file that sits on volume mounted on the docker container.
To Reproduce
Steps to reproduce the behavior:

Launch the docker container

docker run -it -p 8080:8080 -v /mnt/data:/label-studio/data --env LABEL_STUDIO_LOCAL_FILES_SERVING_ENABLED=true --env LABEL_STUDIO_LOCAL_FILES_DOCUMENT_ROOT=/label-studio/files -v /mnt/files:/label-studio/files --security-opt seccomp=unconfined heartexlabs/label-studio:latest

Use Python SDK to create project

project = ls.start_project(
        title=projectname,
        label_config='''
        <View>
            <Header value="Listen to the audio" />
            <Audio name="audio" value="$audio" />
            <Header value="Write the transcription" />
            <TextArea name="transcription" toName="audio"
            rows="4" editable="true" maxSubmissions="1" />
        </View>''')

Import task via SDK

task =
{
  "data": {
    "audio": "/files/audiofiles/myfile.wav"
  },
  "annotations": [
    {
      "id": 1,
      "created_username": "<EMAIL_ADDRESS>1",
      "created_ago": "2 days, 22 hours",
      "completed_by": {
        "id": 1,
        "first_name": "",
        "last_name": "",
        "avatar": null,
        "email"<EMAIL_ADDRESS>        "initials": "jd"
      },
      "result": [
        {
          "from_name": "transcription",
          "origin": "manual",
          "original_length": 1359.730022675737,
          "to_name": "audio",
          "type": "textarea",
          "value": {
            "channel": 0,
            "end": 5.939999999999998,
            "start": 0,
            "text": [
              "Blah blah blah"
            ]
          }
        },
        {
          "from_name": "transcription",
          "origin": "manual",
          "original_length": 1359.730022675737,
          "to_name": "audio",
          "type": "textarea",
          "value": {
            "channel": 0,
            "end": 12.069999999999993,
            "start": 5.939999999999998,
            "text": [
              "Bleeh bleeh"
            ]
          }
]
}

project.import_tasks([task])

Go to project on web page

Click on that same task.

See error

The audio file won't load (counter stays stuck at 0 Mb, 100%
Expected behavior
Audio file should upload and we should be able to review and edit each segment's transcription.
Screenshots

Environment (please complete the following information):

OS: docker container (running on Ubuntu 18.04)
Label Studio Version 1.7.1

Additional context
If the audio file has been uploaded previously, specifying a path to /data (something like /data/media/upload/2/4rt45g_audio.wav) has everything to work fine.

You didn't connect Local Storage.

Many thanks!


Support accounts with Advanced Data Protection enabled

I had apple advanced protection turned on and strangely enough open bubbles turned it off lmao. I think it would be great if openbubbles fully supported apple advanced protection. Beeper mini did at least when it was first working as well as beepers imessage bridge.

If I recall correctly, Apple will block logins to accounts with ADP enabled if the device reports a software version too old to support it.
This can likely be fixed with just a minor modification to the GSA login flow?

In my case the device was new enough to legitimately support ADP but it
would be great if we could add what you are suggesting as a feature
On Fri, Aug 9, 2024, 7:54 AM JJTech @.***> wrote:

If I recall correctly, Apple will block logins to accounts with ADP
enabled if the device reports a software version too old to support it.
This can likely be fixed with just a minor modification to the GSA login
flow?
—
Reply to this email directly, view it on GitHub
https://github.com/TaeHagen/bluebubbles-app/issues/8#issuecomment-2278140074,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABJYPFSGY26ZPO55MYI5NYDZQTJZDAVCNFSM6AAAAABMH3LTHSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENZYGE2DAMBXGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

@TaeHagen Would the modification to the gsa login flow @JJTech0130 suggested be possible?


[Repo] Update repo information

It's a fork but we probably need to update the info about the repo:

authors
licence (?)
better readme

In terms of license, I would like to use dual Apache 2.0/MIT, though I don't know how it works in terms of being a fork.

I believe you would need to get permission from @fveilly to add a new license.


[New Port Request] Mecab

Library name: Mecab
Library description: A morphological analysis engine based on CRF
Source repository URL: https://github.com/taku910/mecab
Project homepage (if different from the source repository): https://taku910.github.io/mecab/
Anything else that is useful to know when adding (such as optional features the library may have that should be included):
The machine setup: "I'm using Windows Server 2016 Datacenter. My machine is using the en-us locale. I successfully ran ' vcpkg install mecab"
The steps to reproduce: "I run 'vcpkg list'"
The outcome you expected: "I expected to see 'mecab:x86-windows                                  0.996            A morphological analysis engine based on CRF'"
The actual outcome: the same as expected

If you wish to add this port in the future, you can reopen this issue, but we're closing it for now.


"Order" modifier doesn't seem to work

Bug report
Describe the bug
When I set an "order" modifier via the python api, results are not ordered as requested. When I then look at the logs, the order request doesn't seem to have been sent to the server.
To Reproduce
Steps to reproduce the behavior, please provide code snippets or a repository:

Add "order" modifier to your query  (example: data = supabase.table("brokerData").select("price").order("price").limit(111).execute())
Run Query
Notice results are not ordered

Expected behavior
Returned results should be ordered by the requested column.
Screenshots
If applicable, add screenshots to help explain your problem.
System information

OS: Mac
IDE: Replit
Language: Python

if you using virtualenv, please go to directory request_builder.py ({name_folder_venv}/Lib/site-packages/postgrest_py/request_builder.py)
you can find order function
replace with this:

    def order(self, column: str, *, desc=False, nullsfirst=False):
        self.session.params.add(
            "order",
            f"{column}{'.desc' if desc else ''}{'.nullsfirst' if nullsfirst else ''}",
        )
        return self

then, try it again.

example for query:
supabase.table("brokerData").select("price").order("price", desc=False).execute())

if you have error again, you can see postgrest-py documentation

or maybe you can update you supabase package to new version

or maybe you can update you supabase package to new version

Hey, I'm on version 0.2.0 and as far as I can see that is the latest version? Or am I missing something, thank you!
Since I'm using replit, I'm not sure I have access to the file you're referencing, will have to try to figure that out :(

Ah I think I see what you mean, there's a new built for postgrest-py in github, but it hasn't shown up yet as in the python package index, I'm assuming it'll be updated soon at which point Replit will also update to the right version.

Hey this is really annoying -- i'm wondering how others are getting around it. I don't think Supabase really supports ordering.
I'm using the latest version of the Supabase client -- 0.3.1 and also the latest version of Postgrest-py -- 0.8.0 and still running into this issue.

@alif-arrizqy  going to tag you incase you have any other tips 🙏🏽

hi @iceanfire
can you show the error ?

have you tried installing the latest version of supabase-py ?
what if you create a new project and install the latest version of course this will speed up your work.

Hi people, I found the error

if you have install a new version, you can see my gist
😊

if you using virtualenv, please go to directory request_builder.py ({name_folder_venv}/Lib/site-packages/postgrest_py/request_builder.py)
you can find order function
replace with this:

    def order(self, column: str, *, desc=False, nullsfirst=False):
        self.session.params.add(
            "order",
            f"{column}{'.desc' if desc else ''}{'.nullsfirst' if nullsfirst else ''}",
        )
        return self

then, try it again.

example for query:
supabase.table("brokerData").select("price").order("price", desc=False).execute())

if you have error again, you can see postgrest-py documentation

The code should be:
self.session.params = self.session.params.add(
    "order",
    f"{column}{'.desc' if desc else ''}{'.nullsfirst' if nullsfirst else ''}",
)

@alif-arrizqy @iceanfire thanks, I will fix and publish a new version

if you using virtualenv, please go to directory request_builder.py ({name_folder_venv}/Lib/site-packages/postgrest_py/request_builder.py)
you can find order function
replace with this:

    def order(self, column: str, *, desc=False, nullsfirst=False):
        self.session.params.add(
            "order",
            f"{column}{'.desc' if desc else ''}{'.nullsfirst' if nullsfirst else ''}",
        )
        return self

then, try it again.

example for query:
supabase.table("brokerData").select("price").order("price", desc=False).execute())

if you have error again, you can see postgrest-py documentation

The code should be:
self.session.params = self.session.params.add(
    "order",
    f"{column}{'.desc' if desc else ''}{'.nullsfirst' if nullsfirst else ''}",
)

yes @leynier thats the error, thank you for fixing

I think that be useful a param for setting debug mode in postgrest-py to see the structure of the request at the end. I think that with that feature, bug fixing will be easier.

I think that be useful a param for setting debug mode in postgrest-py to see the structure of the request at the end. I think that with that feature, bug fixing will be easier.

@supabase-community/python-maintainers


fix test result reporting in package list mode

Overall result was returning success with a failed test when running
tests in package list mode (go test ./...).
Signed-off-by: Paul Gier<EMAIL_ADDRESS>

It looks like we need to configure docker in Travis for the tests to run there.

Added a check to skip the crossbuild test if docker is not available.

I'm not sure I like silently exiting on lack of Docker. This has the potential to skip tests.
What about making the Docker tests marked as long, and run travis tests with test-short?

Updated commit to skip the crossbuild test when running in short mode, and updated the travis and circleci tests to run test-short


Revert Thread Locking

Locking the OS thread could lead to incoming goroutines creating new ones instead of allowing the scheduler from context switching an existing thread from the OS thread pool.
Would require an alternate method for faiss exception handling in the error path which will be introduced in an seperate PR.

We cannot just do this because this was introduced to keep context to two successive CGO calls. I see your comment in the description, but you must either propose the faiss apis change here for this or drop making successive cgo calls to faiss within the same go-faiss API.

maybe an alternate approach over here could involve modifying the existing c_api funcs to have a char** exception passed from golang and in the c function you can populate this golang buffer with the message. so in a single c function call you'd be getting the exception message if there was an error. there wouldn't have to be any worry with respect to the buffer being local to a sepcific os thread now since the buffer is at golang's routine level (so the context would be maintained)
not sure if there are potential flaws in this one, but please let me know if this makes sense, thanks

Yes that is the next TODO here
I have transferred this commit via cherry-pick to
https://github.com/blevesearch/go-faiss/pull/28


(PUP-2862) Make assignment in parameter default expr invalid

Before this it was possible to perform assignment of variables in
a parameter default expression. This is bad because the variable is
set in the calling context!
define bad_boy($a = ($b = 10)) { }

This commit adds validation and an error for such assignments.

it would, imo still be nice to do something like:
deine foo (
  $prefix = '/usr/local',
  $libdir = "${prefix}/lib",
) {}

CLA signed by all contributors.

@igalic the ability to reference parameter values on the left should be specified and ensured that it works; now it is by chance - no intention of removing that ability.

@thallgren fix pushed to this PR

:+1: @hlindberg.

Thanks RubyCop. Problem fixed (dead code removed).


Separate metadata fetch from ArrowReaderBuilder construction (#4674)

Which issue does this PR close?

Related to https://github.com/apache/arrow-rs/discussions/4674
Rationale for this change

This makes it easier to load the metadata once, and then use it to construct multiple readers
What changes are included in this PR?

Are there any user-facing changes?

LGTM. Thanks!

Why the API change label? I don't believe this breaks any public APIs?

I marked this PR as an api-change as I think it is -- let me know if you disagree

Where is the breaking change you are refering to?

Finally, I think this PR would be strongly with a test / example of the stated usecase: read metadata once, but create multiple readers for the same file.

https://github.com/apache/arrow-rs/pull/4676/files#diff-850b3a44587149637b8545f66603a2b1252959fd36f7ddc55f37d6b5357816c6R374
?

I marked this PR as an api-change as I think it is -- let me know if you disagree

Where is the breaking change you are refering to?

I was thinking of https://github.com/apache/arrow-rs/pull/4676/files#r1289997977 but I suppose that since SyncReader isn't documented it is unlikely that anyone is using it directly 🤔

Finally, I think this PR would be strongly with a test / example of the stated usecase: read metadata once, but create multiple readers for the same file.

https://github.com/apache/arrow-rs/pull/4676/files#diff-850b3a44587149637b8545f66603a2b1252959fd36f7ddc55f37d6b5357816c6R374

As sorry I missed that.

was thinking of https://github.com/apache/arrow-rs/pull/4676/files#r1289997977 but I suppose that since SyncReader isn't documented it is unlikely that anyone is using it directly thinking

The tuple field is not public, so cannot be used by external code


Added except description and its line number

It will help for debugging with those information
Make sure to get all catch blocks having description and error line
Test Result
10/16/2018 21:59:36 : [INFO ] ~~~~~TEST END : VERIFY-SRIOV-LSPCI
10/16/2018 21:59:36 : [INFO ] CURRENT - PASS    - 1
10/16/2018 21:59:36 : [INFO ] CURRENT - FAIL    - 0
10/16/2018 21:59:36 : [INFO ] CURRENT - ABORTED - 0
10/16/2018 21:59:36 : [INFO ] Checking background cleanup jobs..
10/16/2018 21:59:36 : [INFO ] Removed 0 context files.
10/16/2018 21:59:36 : [INFO ] Cycle Finished.. TC-31135
10/16/2018 21:59:36 : [INFO ]
Test Results Summary
ICA test run on 10/16/2018 21:55:12
ARM Image under test Canonical : UbuntuServer : 18.04-LTS : latest
Total Executed TestCases        1 (       1 Pass,        0 Fail,        0 Abort)
Total Execution Time(dd:hh:mm) 0:0:4
XML file: TestConfiguration
#Sr. Test Name : Test Result : Test Duration (in minutes)

VERIFY-SRIOV-LSPCI : PASS : 4.33

Logs can be found at .\TestResults\2018-16-10-14-55-02-6183
10/16/2018 21:59:36 : [INFO ] Creating 'Azure-31135-buildlogs.zip' from '.\TestResults\2018-16-10-14-55-02-6183'
10/16/2018 21:59:36 : [INFO ] C:\LISAv2\PIKC31135\Azure-31135-buildlogs.zip created successfully.
10/16/2018 21:59:36 : [INFO ] Copied : .\report\report_TC-31135.xml --> .\report\report_TC-31135-junit.xml
10/16/2018 21:59:36 : [INFO ] Analysing results..
10/16/2018 21:59:36 : [INFO ] PASS  : 1
10/16/2018 21:59:36 : [INFO ] FAIL  : 0
10/16/2018 21:59:36 : [INFO ] ABORT : 0
Copying all files back to original working directory: C:\Users\juhlee\Source\Repos\LISAv2-exec.
Cleaning up C:\LISAv2\PIKC31135
Setting workspace back to original location: C:\Users\juhlee\Source\Repos\LISAv2-exec
10/16/2018 22:00:26 : [INFO ] LISAv2 exits with code: 0

@juhlee-microsoft If you want to fix indents in LISAv2, better fix in one single but separate PR.
And make another PR for try/catch fix?
This would logically separate the purpose of PRs.

@juhlee-microsoft If you want to fix indents in LISAv2, better fix in one single but separate PR.
And make another PR for try/catch fix?
This would logically separate the purpose of PRs.

I change the space to tab for some of old files only. Mostly the change in PR is for adding exception line in catch block. the number of files are 36 but the changes are not many.

Per request, changing three lines to a module requires all catch block modification including ones that already have. I close this PR and re-create a new one.


Live share: "Python Interactive" window does not start in client when run cell in host.

Environment data

VS Code version: 1.42.0-insider
Extension version: 2020.1.56281-dev

Expected behaviour
Run cell successfully and the output of the cell shown on "Python Interactive" on client.
Actual behaviour
"Python Interactive" window does not start in client.
Steps to reproduce:

Open the file manualTestFile.py in VSCode(download manualTestFile.py from https://github.com/IanMatthewHuff/vscode-python/blob/99cc5641c9d58b4059f939d015ac21f3095276b6/src/test/datascience/manualTestFiles/manualTestFile.py )
Start live share
Click "Run cell" on host
Check result on Guest

Thanks for reporting this issue. we'll check this out and get back to you.
Unfortunately I'm unable to repro this issue at my end.
Please could you share the logs from both instances of VS Code.
Open Help->Toggle Developer Tools, go into the Console window and save the contents of the logs to a file.

@linette-zyy, closing. Please reactivate if it's still a problem for you.


In Advanced Search, allow the creation of a new query by selecting a node within the current query to become the topmost node of the new query. (from 1735)

https://www.bugherd.com/projects/284041/tasks/1526

Closing as this is a dupe of https://github.com/project-lux/lux-frontend/issues/110


fwupd firmware update error

today i saw i have updates from Gnome Software to update system firmwae and Gnome software wont install or restart & install it. Tryied from terminal and getting error
Devices with no available firmware updates:
 • DLL0945:00 04F3:311C
 • Fingerprint Sensor
 • Internal SPI Controller
 • SSD 990 PRO 2TB
 • TPM
 • UEFI Device Firmware
╔══════════════════════════════════════════════════════════════════════════════╗
║ Upgrade System Firmware from 1.29.0 to 1.31.0?                               ║
╠══════════════════════════════════════════════════════════════════════════════╣
║ This stable release fixes the following issues:                              ║
║                                                                              ║
║ • This release contains security updates as disclosed in the Dell            ║
║ Security Advisories.                                                         ║
║ • Fixed the issue where the system does not boot to the Windows operating    ║
║ system. This issue occurs when the Dell Keyboard KB555T is connected to the  ║
║ system.                                                                      ║
║                                                                              ║
║ XPS 15 9510 must remain plugged into a power source for the duration of the  ║
║ update to avoid damage.                                                      ║
╚══════════════════════════════════════════════════════════════════════════════╝
Perform operation? [Y|n]: y
Downloading…             [*                                      ] Less than oneDownloading…             [*                                      ] Less than oneDownloading…             [**                                     ] Less than oneDownloading…             [**                                     ] Less than oneDownloading…             [***                                    ] Less than oneDownloading…             [***                                    ] Less than oneDownloading…             [***                                    ] Less than oneDownloading…             [****                                   ] Less than oneDownloading…             [*****                                  ] Less than oneDownloading…             [*****                                  ] Less than oneDownloading…             [*****                                  ] Less than oneDownloading…             [******                                 ] Less than oneDownloading…             [******                                 ] Less than oneDownloading…             [*******                                ] Less than oneDownloading…             [*******                                ] Less than oneDownloading…             [*******                                ] Less than oneDownloading…             [********                               ] Less than oneDownloading…             [*********                              ] Less than oneDownloading…             [*********                              ] Less than oneDownloading…             [**********                             ] Less than oneDownloading…             [**********                             ] Less than oneDownloading…             [**********                             ] Less than oneDownloading…             [***********                            ] Less than oneDownloading…             [***********                            ] Less than oneDownloading…             [************                           ] Less than oneDecompressing…           [                                       ]
Secure boot is enabled, but shim isn't installed to EFI/aeon/shim.efi

phatle@aeon:~> LC_MESSAGES=C ls -lR /boot/efi/
/boot/efi/:
total 96
drwxr-xr-x. 3 root root 32768 Aug 12 15:49 aeon
drwxr-xr-x. 6 root root 32768 Aug 14 11:56 EFI
drwxr-xr-x. 4 root root 32768 Aug 14 12:06 loader

/boot/efi/aeon:
total 32
drwxr-xr-x. 2 root root 32768 Aug 14 13:16 6.10.3-1-default

/boot/efi/aeon/6.10.3-1-default:
total 193664
-rwxr-xr-x. 1 root root 99596412 Aug 12 22:49 initrd-4343bce92b1aecac063692eefe306295ad44149c
-rwxr-xr-x. 1 root root 83904086 Aug 14 11:01 initrd-ec873e03bb84b898585e86c043e2d6fb2a400de9
-rwxr-xr-x. 1 root root 14768496 Aug  4 13:37 linux-f431a68473f70f7db938d56c1a4f039aa439998e

/boot/efi/EFI:
total 128
drwxr-xr-x. 3 root root 32768 Aug 14 11:56 aeon
drwxr-xr-x. 2 root root 32768 Aug 12 17:56 BOOT
drwxr-xr-x. 2 root root 32768 Aug 12 17:46 Linux
drwxr-xr-x. 2 root root 32768 Aug 12 17:56 systemd

/boot/efi/EFI/aeon:
total 32
drwxr-xr-x. 2 root root 32768 Aug 14 12:36 fw

/boot/efi/EFI/aeon/fw:
total 22880
-rwxr-xr-x. 1 root root 23409375 Aug 14 12:36 fwupd-6e106831-11dd-4c1b-b22b-526d6f78683c.cap

/boot/efi/EFI/BOOT:
total 1088
-rwxr-xr-x. 1 root root 100720 Aug  2 17:29 BOOTX64.EFI
-rwxr-xr-x. 1 root root  90496 Jul 23 10:27 fallback.efi
-rwxr-xr-x. 1 root root 852312 Jul 23 10:27 MokManager.efi

/boot/efi/EFI/Linux:
total 0

/boot/efi/EFI/systemd:
total 2176
-rwxr-xr-x. 1 root root     64 Aug 12 15:49 boot.csv
-rwxr-xr-x. 1 root root 100720 Aug  2 17:29 grub.efi
-rwxr-xr-x. 1 root root      5 Aug 12 15:49 installed_by_sdbootutil
-rwxr-xr-x. 1 root root 852312 Jul 23 10:27 MokManager.efi
-rwxr-xr-x. 1 root root   1645 Aug 14 12:16 pcrlock.json
-rwxr-xr-x. 1 root root 965528 Jul 23 10:27 shim.efi
-rwxr-xr-x. 1 root root 100720 Aug  2 17:29 systemd-bootx64.efi

/boot/efi/loader:
total 160
drwxr-xr-x. 2 root root 32768 Aug 14 12:16 credentials
drwxr-xr-x. 2 root root 32768 Aug 14 13:16 entries
-rwxr-xr-x. 1 root root     6 Aug 12 15:49 entries.srel
-rwxr-xr-x. 1 root root    31 Aug 12 22:49 loader.conf
-rwxr-xr-x. 1 root root    32 Aug 14 12:06 random-seed

/boot/efi/loader/credentials:
total 32
-rwxr-xr-x. 1 root root 2362 Aug 14 12:16 pcrlock.aeon.cred

/boot/efi/loader/entries:
total 384
-rwxr-xr-x. 1 root root 583 Aug 12 18:51 aeon-6.10.3-1-default-10.conf
-rwxr-xr-x. 1 root root 583 Aug 13 09:51 aeon-6.10.3-1-default-11.conf
-rwxr-xr-x. 1 root root 583 Aug 14 11:01 aeon-6.10.3-1-default-12.conf
-rwxr-xr-x. 1 root root 583 Aug 14 11:00 aeon-6.10.3-1-default-13.conf
-rwxr-xr-x. 1 root root 583 Aug 14 12:16 aeon-6.10.3-1-default-15.conf
-rwxr-xr-x. 1 root root 581 Aug 12 17:40 aeon-6.10.3-1-default-3.conf
-rwxr-xr-x. 1 root root 602 Aug 12 17:46 aeon-6.10.3-1-default-4.conf
-rwxr-xr-x. 1 root root 602 Aug 12 17:53 aeon-6.10.3-1-default-5.conf
-rwxr-xr-x. 1 root root 581 Aug 12 17:55 aeon-6.10.3-1-default-6.conf
-rwxr-xr-x. 1 root root 581 Aug 12 17:56 aeon-6.10.3-1-default-7.conf
-rwxr-xr-x. 1 root root 581 Aug 12 18:09 aeon-6.10.3-1-default-8.conf
-rwxr-xr-x. 1 root root 581 Aug 12 18:47 aeon-6.10.3-1-default-9.conf

you mean that the firmware is not updated?

yes it ant update due the Secure boot is enabled, but shim isn't installed to EFI/aeon/shim.efi it fails and wont update or start update process even on both cases Gnome Software or Terminal

fwupd expects path \EFI\${ID-from-os_release}:
https://github.com/fwupd/fwupd/blob/72b69f7cea012c811647a1bd66dbca229b330a2f/plugins/uefi-capsule/fu-uefi-common.c#L176-L212
sdbootutil hardcodes \EFI\systemd.

Is not /EFI/vendor a free form? sdbootutil can choose systemd as vendor. I am searching in the specification to see if we are forced to select os-release

Doesn't systemd itself install to /EFI/systemd? sdbootutil just copies this behavior. I don't think it's useful by fwupd to assume the path without testing different default paths or having an option to override it.

Is not /EFI/vendor a free form?

Well, it has been established convention for years. At least since grub2 took over. And BTW sdbootutil also supports grub2 and hardcodes \EFI\opensuse which would be wrong as well:
cat > %{buildroot}%{_prefix}/lib/os-release <<EOF
NAME="Aeon"
# VERSION="%{version}%{?betaversion: %{betaversion}}"
ID="aeon"

sdbootutil can choose systemd as vendor.

Sure. The question is how any other application becomes aware of it.

an option to override it

So far applications and distributions consistently derived path from /etc/os-release (or from /etc/SuSE-release in the past).

Doesn't systemd itself install to /EFI/systemd?

Does systemd-boot even support Secure Boot with shim natively?

The arguments are good, but I wonder how we can update sdbootutil without breaking old installations

Well, it has been established convention for years. At least since grub2 took over. And BTW sdbootutil also supports grub2 and hardcodes \EFI\opensuse which would be wrong as well:

Oh .. btw ... There must be something else. My GRUB2 installation has ID="opensuse-tumbleweed", and the vendor in EFI is "opensuse". Even tho fwupd worked installing the components in "opensuse"

This something else is ID_LIKE, that is also keep into consideration. What are the ID_LIKE in Aeon?

NAME="Aeon"
# VERSION="20240812"
ID="aeon"
ID_LIKE="suse opensuse opensuse-tumbleweed opensuse-microos opensuse-aeon microos"
VERSION_ID="20240812"
PRETTY_NAME="Aeon"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:aeon:20240812"
BUG_REPORT_URL="https://aeondesktop.org/reportbug"
SUPPORT_URL="https://aeondesktop.org/bugs"
HOME_URL="https://aeondesktop.org/"
DOCUMENTATION_URL="https://en.opensuse.org/Portal:Aeon"
LOGO="distributor-logo-Aeon"

/EFI/ is on aeon located in /boot/efi/EFI under /EFI/ there is BOOT, Linux, aeon,systemd
in systemd there is shim.efi
where i should create /EFI/opensuse directly in /EFI/
also it is looking shim for EFI/aeon/shim.efi
and shim actually is located in /boot/efi/EFI/systemd

mkdir /boot/efi/EFI/opensuse

mkdir /boot/efi/EFI/opensuse

no affect still same no shim for /EFI/aeon/shim.efi since it is located on systemd not aeon
phatle@aeon:~> fwupdmgr update
Devices with no available firmware updates:
 • DLL0945:00 04F3:311C
 • Fingerprint Sensor
 • Internal SPI Controller
 • SSD 990 PRO 2TB
 • TPM
 • UEFI Device Firmware
╔══════════════════════════════════════════════════════════════════════════════╗
║ Upgrade System Firmware from 1.29.0 to 1.31.0?                               ║
╠══════════════════════════════════════════════════════════════════════════════╣
║ This stable release fixes the following issues:                              ║
║                                                                              ║
║ • This release contains security updates as disclosed in the Dell            ║
║ Security Advisories.                                                         ║
║ • Fixed the issue where the system does not boot to the Windows operating    ║
║ system. This issue occurs when the Dell Keyboard KB555T is connected to the  ║
║ system.                                                                      ║
║                                                                              ║
║ XPS 15 9510 must remain plugged into a power source for the duration of the  ║
║ update to avoid damage.                                                      ║
╚══════════════════════════════════════════════════════════════════════════════╝
Perform operation? [Y|n]: Y
Decompressing…           [                                       ]
Secure boot is enabled, but shim isn't installed to EFI/aeon/shim.efi

how EFI/aeon/shim.efi was installed? sdbootutil does not do that

/EFI/aeon/shim.efi does not excist
everything is automated it is injecting image on aeon
inside aeon i see only 6.10.3-1-default kernel
inside systemd is all
MokManager.efi  grub.efi                 pcrlock.json  systemd-bootx64.efi
boot.csv        installed_by_sdbootutil  shim.efi

seems like fwupd is looking somehow wrong path for the shim and thats why it fails

inside aeon i see only 6.10.3-1-default kernel

I think you are confusing the directory? Maybe you are referring to /boot/efi/aeon? This one is irrelevant.

inside systemd is all
MokManager.efi  grub.efi                 pcrlock.json  systemd-bootx64.efi
boot.csv        installed_by_sdbootutil  shim.efi

seems like fwupd is looking somehow wrong path for the shim and thats why it fails

But if you create /boot/efi/EFI/opensuse, why is searching in /boot/efi/EFI/aeon?. Why requires shim.efi in there?
Can you give me the output of find /boot/efi/EFI?  Do you have secure boot enabled?

phatle@aeon:~> find /boot/efi/EFI
/boot/efi/EFI
/boot/efi/EFI/systemd
/boot/efi/EFI/systemd/MokManager.efi
/boot/efi/EFI/systemd/shim.efi
/boot/efi/EFI/systemd/grub.efi
/boot/efi/EFI/systemd/boot.csv
/boot/efi/EFI/systemd/installed_by_sdbootutil
/boot/efi/EFI/systemd/pcrlock.json
/boot/efi/EFI/systemd/systemd-bootx64.efi
/boot/efi/EFI/BOOT
/boot/efi/EFI/BOOT/MokManager.efi
/boot/efi/EFI/BOOT/fallback.efi
/boot/efi/EFI/BOOT/BOOTX64.EFI
/boot/efi/EFI/Linux
/boot/efi/EFI/aeon
/boot/efi/EFI/aeon/fw
/boot/efi/EFI/aeon/fw/fwupd-6e106831-11dd-4c1b-b22b-526d6f78683c.cap

But if you create /boot/efi/EFI/opensuse, why is searching in /boot/efi/EFI/aeon?. Why requires shim.efi in there?

no idea that is just output it says when trying to update firmware

Aha ... seems that /boot/efi/EFI/opensuse was not created.
I asked also about secure boot. You can try: mokutil --sb-state

Aha ... seems that /boot/efi/EFI/opensuse was not created.

i created that manually and try again update no affect so i removed it

mokutil --sb-state

phatle@aeon:~> mokutil --sb-state
SecureBoot enabled

But if you create /boot/efi/EFI/opensuse, why is searching in /boot/efi/EFI/aeon?. Why requires shim.efi in there?

Because fwupd expects bootloader related files to be in \EFI\${ID-from-os-release} (it will also search through ID_LIKE as fallback). It is possible to disable check for shim in fwupd, not sure whether it will work though.

ok this explain the mistery. For now copy shim.efi and grub.efi from /boot/efi/EFI/systemd/ to /boot/efi/EFI/aeon/
I am still not sure how sdbootutil will help here. For me this is a bug in fwupd

ok this explain the mistery. For now copy shim.efi and grub.efi from /boot/efi/EFI/systemd/ to /boot/efi/EFI/aeon/

thank you this worked

I am still not sure how sdbootutil will help here. For me this is a bug in fwupd

i agree now it is more fwupd related issue but as for now fix has been just copy those two files to /boot/efi/EFI/aeon fixed
thank you again for all the help

But if you create /boot/efi/EFI/opensuse, why is searching in /boot/efi/EFI/aeon?. Why requires shim.efi in there?

Because fwupd expects bootloader related files to be in \EFI\${ID-from-os-release} (it will also search through ID_LIKE as fallback). It is possible to disable check for shim in fwupd, not sure whether it will work though.

No, the answer was that secure boot was enabled, /boot/efi/EFI/aeon was created (?) and /boot/efi/EFI/opensuse was not created. If opensuse was created and secure boot is disabled, then I would expect to work, and if secure boot as enabled the complain should be that /boot/efi/EFI/opensuse/shim.efi was not found.

How can we follow up? Alternatives are:

Make sdbootutil to use /boot/efi/EFI/opensuse (part of ID_LIKE).  I personally do not like this one, as then we cannot use what bootctl is delivering (/boot/efi/EFI/systemd)
Add a patch in fwupd to include /boot/efi/EFI/systemd as a fallback for the ID_LIKE fallback

Does anyone knows what other distributions that use systemd-boot are using?

A conversation has been started with fwupd about this.
https://github.com/fwupd/fwupd/issues/7783

A conversation has been started with fwupd about this.
https://github.com/fwupd/fwupd/issues/7783

A fix was merged so I think this can be closed.


Add domain config to epm

I created an Elvish package and I'm hosting it on https://sr.ht; unfortunately I can't fetch it because elvish doesn't support fetching packages from arbitrary domains.
I can contribute the necessary code to make it work; AFAIK, the domains seems to be hardcoded in eval/bundled/epm.elv.go, and one could add another entry in -default-domain-config.  But I'm not sure this is the only way to handle this problem; maybe I can add an external file to handle this?
Thoughts?

@skrps: you can configure custom domains for epm, you can see the documentation here: https://elv.sh/ref/epm.html#custom-package-domains
In short, you need to create the domain directory by hand, and create the file epm-domain.cfg in it, with the corresponding information. For example, to fetch your Elvish package from https://git.sr.ht/~skrps/elv, you need to create file ~/.elvish/lib/git.sr.ht/epm-domain.cfg, with the following contents:
{
  "method": "git",
  "protocol": "https",
  "levels": "2"
}

Then you can install your package (I just tested it and it works):
[~]─> cd .elvish/lib/
[~/.e/lib]─[⎇ master]─> mkdir git.sr.ht
[~/.e/lib]─[⎇ master]─> cat > git.sr.ht/epm-domain.cfg
{
   "method" : "git",
   "protocol" : "https",
   "levels": "2"
}
[~/.e/lib]─[⎇ master]─> epm:install git.sr.ht/~skrps/elv
=> Installing git.sr.ht/~skrps/elv
Cloning into '/Users/taazadi1/.elvish/lib/git.sr.ht/~skrps/elv'...
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 5 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (5/5), done.
[~/.e/lib]─[⎇ master]─> epm:list
▶ git.sr.ht/~skrps/elv
▶ github.com/iwoloschin/elvish-packages
▶ github.com/muesli/elvish-libs
▶ github.com/tylerreckart/gondolin
▶ github.com/xiaq/edit.elv
▶ github.com/zzamboni/elvish-completions
▶ github.com/zzamboni/elvish-modules
▶ github.com/zzamboni/elvish-themes
[~/.e/lib]─[⎇ master]─> use git.sr.ht/~skrps/elv/ssh-agent

Hope this helps!

One more comment: note that you have to use the full URL (including the ~) when you install and also when you load the package. The built-in epm git method does not have the capability to transform the package location when installing it. If you really wanted to do it, you could define your own installation method, which inserts the tilde when appropriate, but stores the package without it, so that you could use git.sr.ht/skrps/elv as the package name. I wouldn't recommend doing this because I think one of the benefits of the current scheme is that the package name tells you where to find it as well, but it would be a fairly trivial modification to the built-in git method from https://github.com/elves/elvish/blob/master/eval/bundled/epm.elv.go#L99-L120.
You could assign the new method directly into the epm:-method-handler variable, something like this:
use epm
epm:-method-handler[git.sr.ht] = [
  &src= [pkg dom-cfg]{ put $dom-cfg[protocol]"://"(replaces git.sr.ht/ 'git.sr.ht/~' $pkg) }
  &install= [pkg dom-cfg]{
      dest = (epm:dest $pkg)
      epm:-info "Installing "$pkg
      mkdir -p $dest
      git clone ($epm:-method-handler[git.sr.ht][src] $pkg $dom-cfg) $dest
    }
  &upgrade= $epm:-method-handler[git][upgrade]
]

After modifying epm-domain.cfg to specify git.sr.ht as the method, you can specify your package without the tilde:
[~]─> epm:install git.sr.ht/skrps/elv
=> Installing git.sr.ht/skrps/elv
Cloning into '/Users/taazadi1/.elvish/lib/git.sr.ht/skrps/elv'...
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 5 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (5/5), done.
[~]─> epm:list
...
▶ git.sr.ht/skrps/elv

you can configure custom domains for epm, you can see the documentation here: https://elv.sh/ref/epm.html#custom-package-domains

Great!  I'll add this information to README, with a ref to this issue.

I wouldn't recommend doing this because I think one of the benefits of the current scheme is that the package name tells you where to find it as well

I also think this way.
Next time I'll read the documentation more carefully.  Thanks for the help!


light.turn_off all results in TypeError: bool object not subscriptable in tapo_control

Description
If light.turn_off is called with entity_id: all, it will generate TypeError: 'bool' object is not subscriptable` in tapo_control
Reproduction Steps
To reproduce, need a tapo camera that has a light entity.  Then call light.turn_off from developer tools -> actions
# YAML snippet for Developer Tools -> Actions
action: light.turn_off
data: {}
target:
  entity_id: all

Expected behavior
Tapo controls should not be able to make light.turn_off for all entities fail.
If applicable, add error logs.
Logger: homeassistant.helpers.script.websocket_api_script
Source: helpers/script.py:525
First occurred: 11:31:47 AM (2 occurrences)
Last logged: 11:31:54 AM

websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'bool' object is not subscriptable
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 525, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 763, in _async_call_service_step
    response_data = await self._async_run_long_action(
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 726, in _async_run_long_action
    return await long_task
           ^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2761, in async_call
    response_data = await coro
                    ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2804, in _execute_service
    return await target(service_call)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1021, in entity_service_call
    raise result from None
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1610, in async_request_call
    return await coro
           ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1068, in _handle_entity_call
    result = await task
             ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/light/__init__.py", line 639, in async_handle_light_off_service
    await light.async_turn_off(**filter_turn_off_params(light, params))
  File "/config/custom_components/tapo_control/light.py", line 95, in async_turn_off
    if str(camData["whitelampStatus"]) == "1":
           ~~~~~~~^^^^^^^^^^^^^^^^^^^
TypeError: 'bool' object is not subscriptable

Device Firmware
1.2.2 Build 240905 Rel.41780n
Integration Version
5.6.3
Using stream component
No
Does camera work via official integrations?
Yes
Camera has all attributes filled out in developer tools
Yes
HASS Environment
Home Assistant OS in VM on x86_64 (KVM)
Search for similar issues
Yes
Additional information
Only cameras connected right now are two C120's with the same firmware version.

Some notes from additional testing. I get the same TypeError: 'bool' object is not subscriptable error when trying to turn the light entity on for one of my C120's. The light entity for the other C120 works correctly.

Fixed in https://github.com/JurajNyiri/HomeAssistant-Tapo-Control/releases/tag/5.7.2


Why is the browser plugin archived?

Just curious I come from the blog article, is it dropped?

I guess the author didn't want to work on it anymore

The premise of netcode is easy but fast networking for games on browsers, but the browser implementation is archived.
It seems like the reason for netcodes existence is gone? Am I misunderstanding something?
Now netcode has pivoted to networking for games in general, excluding web games?


nicer Thunk.String

drakeno: <thunk: 946a7e4c59c7ed13cb1e33e78eb201f7cbf715da>
drakeyes: <thunk: (.load "alpine/git")>

This is harder than it seems because the Thunk type never actually appears in Bass. It doesn't implement Value - instead it is converted to and from a *Scope containing the thunk's fields.
In order to implement this I'll have to either:

have Scope.String detect if it decodes into a Thunk and if so call Thunk.String instead
make Thunk a discrete Value type

Option 1) is an abomination so I ain't doin' that.
Option 2) might actually just be the right thing to do anyway - Thunk is the odd one out right now. DirPath, FilePath, and CommandPath encode to JSON as objects and are proper Values but Thunk isn't.
The downside is constructing a thunk using the builtins in std/run.bass currently leverages the fact that it's just a scope:
; sets the :args field of the thunk
(defn with-args [thunk & args]
  (assoc thunk :args args))

So these would either have to be converted to primitives that can meddle with a Thunk or the Thunk could be converted to/from a scope, which would be pretty inefficient.
This isn't a huge priority so I'll put it on hold for now.


Handling Secure Connection during Authentication

I'm not sure if this is a specific question with the Yahoo API or falls under more of a general programming umbrella, but how do you handle the second leg of authentication to the Yahoo API while on localhost?
I get to the point where I agree my app to have access to the leagues I'm in, but upon hitting the callback, I get an error in Chrome that says "This site can't provide a secure connection" with an ERR_SSL_PROTOCOL_ERROR. I assume it's because my localhost is running http instead of an https and when it tries to redirect it fails since it isn't secure. I'm also using Next.js as well, similar to your docs website for the API.
I've been through a ton of articles trying to set up local certificates associated with my localhost but haven't been able to get it to work.
Feel free to close this if it seems like it falls out-of-scope of this specific project, but figured I'd ask anyways just to see!

I just generate an SSL cert and run the localhost server over HTTPS.
Something like this<EMAIL_ADDRESS>(note I just Googled this, didn't read it 😆 )
In the past you couldn't even use "localhost" in the callback URLs.
Hope this helps!!

If you are just trying to use it manually, locally, and don't need a non-dev user to get a token themselves, you can set the callback url to oob (stands for Out of Bounds). The Yahoo auth flow will stay on Yahoo and display the authorization code. You can copy that into your code/config/disk and continue the flow locally
I.e. hit the following URL with your own client id:
https://api.login.yahoo.com/oauth2/request_auth?client_id=myClientId&redirect_uri=oob&response_type=code&language=en-us

That’s right too! Thanks for that!!
On Mon, Aug 8, 2022 at 9:35 PM Marois @.***> wrote:

If you are just trying to use it manually, locally, and don't need a
non-dev user to get a token themselves, you can set the callback url to
oob (stands for Out of Bounds). The Yahoo auth flow will stay on Yahoo
and display the authorization code. You can copy that into your
code/config/disk and continue the flow locally
I.e. hit the following URL with your own client id:
https://api.login.yahoo.com/oauth2/request_auth?client_id=myClientId&redirect_uri=oob&response_type=code&language=en-us
—
Reply to this email directly, view it on GitHub
https://github.com/whatadewitt/yahoo-fantasy-sports-api/issues/99#issuecomment-1208759874,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACYZUUDDQU2EQ3KSLO44LLVYGRVLANCNFSM55Q6QP6A
.
You are receiving this because you commented.Message ID:
@.***>

I hate to re-open this issue since I never responded the first time...as you can tell I've been picking this up and putting it down a lot.
@ryus08 I used your "oob" argument and was able to get the code it returns, however, I'm not sure where I should be inserting it after I get it. Do you have an example of you using that workflow in a call? Is that code the auth code Yahoo needs to let you have access to private leagues? I'm just not sure how to send that request with the credentials that says I can have access. (And maybe this is just a more broad Auth question as well)
Anyways, love this package so much! I've been slowly saving my fantasy league's historic data so I can build a web app with it for my league mates.

Oh, then just continue with the OAuth flow. Here's Yahoo!'s doc for it, you just finished step 3, so start at step 4:
https://developer.yahoo.com/oauth2/guide/flows_authcode/#step-4-exchange-authorization-code-for-access-token
That'll give back an accessToken which you can use until it expires (1 hour I think), and a refresh token you can use indefinitely with step 5 to get a new accessToken

After some bumps and hours of tinkering with axios I was able to persist that code and get a fresh authorization token and make some calls!
Thanks for pointing me to that doc, I never actually saw it. And also thank you both for being such a big help. Love this package and glad I was finally able to get authentication working for my app!
For anyone wondering, here is a very basic POST call with axios to grab an authentication token from Yahoo:
    const response = await axios({
      url: `https://api.login.yahoo.com/oauth2/get_token`,
      method: "post",
      headers: {
        "Content-Type": "application/x-www-form-urlencoded",
        Authorization: `Basic ${Buffer.from(
          `${process.env.CONSUMER_KEY}:${process.env.CONSUMER_SECRET}`
        ).toString("base64")}`,
      },
      params: {
        client_id: process.env.CONSUMER_KEY,
        client_secret: process.env.CONSUMER_SECRET,
      },
      data: {
        grant_type: "authorization_code",
        redirect_uri: "oob",
        code: "bwjbt8e", // This is the code returned from the first auth GET endpoint
      },
    });


Feature/rename codecept to hermiona

Motivation/Description of the PR

Description of this PR, which problem it solves
Resolves #issueId (if applicable).

Applicable helpers:

[ ] WebDriver
[ ] Puppeteer
[ ] Nightmare
[ ] REST
[ ] FileHelper
[ ] Appium
[ ] Protractor
[ ] TestCafe
[ ] Playwright

Applicable plugins:

[ ] allure
[ ] autoDelay
[ ] autoLogin
[ ] customLocator
[ ] pauseOnFail
[ ] coverage
[ ] retryFailedStep
[ ] screenshotOnFail
[ ] selenoid
[ ] stepByStepReport
[ ] stepTimeout
[ ] wdio
[ ] subtitles

Type of change

[ ] :fire: Breaking changes
[ ] :rocket: New functionality
[ ] :bug: Bug fix
[ ] :clipboard: Documentation changes/updates
[ ] :hotsprings: Hot fix
[ ] :hammer: Markdown files fix - not related to source code
[ ] :nail_care: Polish code

Checklist:

[ ] Tests have been added
[ ] Documentation has been added (Run npm run docs)
[ ] Lint checking (Run npm run lint)
[ ] Local tests are passed (Run npm test)

if rusian didn't steal/lie/kill - he's dead

For 0 days, the Russians did not steal anything

For 0 days, the Russians did not steal anything

@DavertMik how about to write copyright violation abuse to github profile of PR author?
It's inappropriate behavior must be reported.

@anpleenko https://anarjafarov.me/dont-worry-be-happy.mp4   ;)


Payment flow section suggested changes

Context
Some of the language in this section was inconsistent and at times a little confusing.
Changes proposed in this pull request
This is just an early attempt to tidy the language up before probably revisiting it more widely at a later date.

Sorry @katiebates, in adding the bullet about timeouts and correcting an erroneous use of the word "either" I've ended up dismissing your review automatically, so it needs reviewing again. Apologies.