Replace resource error & reverse proxy error

The following code contains all my errors.
1：/vue/{**catch-all}      request  http://localhost:5180/vue   404   error
2：:Replace the requested resource, the data obtained is garbled
https://github.com/bbhxwl/TestYarp

The garbled content you're asking about is here? https://github.com/microsoft/reverse-proxy/issues/821#issuecomment-969679216
That looks like compression. YARP disabled response decompression by default for performance reasons. See DecompressionMethods when you set up the client:
var httpClient = new HttpMessageInvoker(new SocketsHttpHandler()
{
    UseProxy = false,
    AllowAutoRedirect = false,
    AutomaticDecompression = DecompressionMethods.None,
    UseCookies = false
});

1：/vue/{**catch-all} request http://localhost:5180/vue 404 error
Do you mean that /vue/{**catch-all} doesn't match requests to http://localhost:5180/vue? That's expected. Slashes are significant. You'll need a second route for /vue if you want to match just that part.

1：/vue/{**catch-all} request http://localhost:5180/vue 404 error
Do you mean that /vue/{**catch-all} doesn't match requests to http://localhost:5180/vue? That's expected. Slashes are significant. You'll need a second route for /vue if you want to match just that part.

http://localhost:5180/vue  proxy   https://cn.vuejs.org/
http://localhost:5180/google proxy   https://www.google.com/

The garbled content you're asking about is here? #821 (comment)
That looks like compression. YARP disabled response decompression by default for performance reasons. See DecompressionMethods when you set up the client:
var httpClient = new HttpMessageInvoker(new SocketsHttpHandler()
{
    UseProxy = false,
    AllowAutoRedirect = false,
    AutomaticDecompression = DecompressionMethods.None,
    UseCookies = false
});

yes,
using System.Net;
using System.Text;
using Yarp.ReverseProxy.Forwarder;
using Yarp.ReverseProxy.Transforms;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddControllersWithViews();

builder.Services.AddHttpForwarder();
var app = builder.Build();

if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

var httpClient = new HttpMessageInvoker(new SocketsHttpHandler()
{
    UseProxy = false,
    AllowAutoRedirect = false,
    AutomaticDecompression = DecompressionMethods.None,
    UseCookies = false
});

CustomTransformer c = new CustomTransformer();

var requestOptions = new ForwarderRequestConfig { ActivityTimeout = TimeSpan.FromSeconds(100) };

app.Map("/vue/{**catch-all}", async (HttpContext httpContext, IHttpForwarder forwarder) =>
{

    var error = await forwarder.SendAsync(httpContext, "https://cn.vuejs.org/", httpClient, requestOptions,
     c);

    if (error != ForwarderError.None)
    {
        var errorFeature = httpContext.Features.Get<IForwarderErrorFeature>();
        var exception = errorFeature.Exception;
    }
});
app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");

app.Run();

public class CustomTransformer : HttpTransformer
{
    public override async ValueTask TransformRequestAsync(HttpContext httpContext, HttpRequestMessage proxyRequest, string destinationPrefix)
    {
        await base.TransformRequestAsync(httpContext, proxyRequest, destinationPrefix);
        var queryContext = new QueryTransformContext(httpContext.Request);
        proxyRequest.RequestUri = new Uri(destinationPrefix + httpContext.Request.Path + queryContext.QueryString);
        proxyRequest.Headers.Host = null;
    }

    public override async ValueTask<bool> TransformResponseAsync(HttpContext httpContext, HttpResponseMessage? proxyResponse)
    {

        if (proxyResponse == null)
        {
            return false;
        }
        string body = await proxyResponse.Content.ReadAsStringAsync();
        body = body.Replace("<title>Vue.js</title>", "<title>bbhxwl</title>");
        var content = new StringContent(body, Encoding.UTF8, "text/html");
        httpContext.Response.ContentLength = body.Length;
        proxyResponse.Content?.Dispose();
        proxyResponse.Content = content;
        return await base.TransformResponseAsync(httpContext, proxyResponse);
    }

}

The garbled content you're asking about is here? #821 (comment)
That looks like compression. YARP disabled response decompression by default for performance reasons. See DecompressionMethods when you set up the client:
var httpClient = new HttpMessageInvoker(new SocketsHttpHandler()
{
    UseProxy = false,
    AllowAutoRedirect = false,
    AutomaticDecompression = DecompressionMethods.None,
    UseCookies = false
});

AutomaticDecompression = DecompressionMethods.All,
This seems to be OK.
But the path mapping is still wrong

1：/vue/{**catch-all} request http://localhost:5180/vue 404 error
Do you mean that /vue/{**catch-all} doesn't match requests to http://localhost:5180/vue? That's expected. Slashes are significant. You'll need a second route for /vue if you want to match just that part.

https://github.com/bbhxwl/TestYarp
I updated the code, or 404. How should this be mapped?

app.Map("/vue/{**catch-all}", async (HttpContext httpContext, IHttpForwarder forwarder) =>
{

    var error = await forwarder.SendAsync(httpContext, "https://cn.vuejs.org/", httpClient, requestOptions,

This pattern is not going to work well. The initial client request to http://localhost:5180/vue/ will return an HTML page full of resource links without the /vue/ prefix so all of the resource requests will 404. Trying to rewrite all of those resource urls in the HTML is a lot of work.

app.Map("/vue/{**catch-all}", async (HttpContext httpContext, IHttpForwarder forwarder) =>
{

    var error = await forwarder.SendAsync(httpContext, "https://cn.vuejs.org/", httpClient, requestOptions,

This pattern is not going to work well. The initial client request to http://localhost:5180/vue/ will return an HTML page full of resource links without the /vue/ prefix so all of the resource requests will 404. Trying to rewrite all of those resource urls in the HTML is a lot of work.

Does that mean you need to do a lot of work in transformresponseasync? There is no simpler way at present?

Correct. YARP is not designed for body transformation scenarios like this. You should consider using a routing design that does not use path prefixes like this.

Correct. YARP is not designed for body transformation scenarios like this. You should consider using a routing design that does not use path prefixes like this.

I want to reverse proxy multiple different pages on one page.

@bbhxwl It sounds like what you're trying to do is impractical without the cooperation of the destination site; trying to use a reverse proxy (YARP or otherwise) to accomplish this will be extremely difficult.
I think your other questions here have been answered though, so I will close this issue. Feel free to open another one if you encounter any other issues.


feat(entities-shared): fuzzy search filter

Summary

This PR adds fuzzy search support to useDebouncedFilter when in Kong Manager if we have more than 100 records.
PR Checklist

[ ] Naming & Structure: the files and package structure use the conventions outlined in the Creating a Package docs.
[ ] Tests pass: check the output of all package unit and/or component tests.

[ ] If this PR is the result of a bug, test coverage was added accordingly.

[ ] Functional: all changes do not break existing APIs, but if so, a BREAKING CHANGE commit is in place to bump the major version.
[ ] Conventional Commits all commits follow the conventional commit standards outlined in the main README.
[ ] Docs: includes a technically accurate README, and the docs have been updated accordingly based on the changes in this PR.

Nit: I found searchKeys in packages/entities/entities-consumer-groups/src/components/ConsumerGroupForm.vue doesn't contain 'id', not sure if it's an intended behavior or not 😕

nit: I found searchKeys in packages/entities/entities-consumer-groups/src/components/ConsumerGroupForm.vue doesn't contain 'id', not sure if it's an intended behavior or not 😕

Good catch. I added id.


feat(ast_tools): pre-compile #[ast] macro output

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#5796  👈
#5793
#5792
#5791
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite


Building issue

Describe your bug here.
I added bg backdrops to credits and suddenly its giving me this error when i try and build my game
Command Prompt/Terminal logs (if existing)
Called from ? line 1
Called from CommandLineTools.hx line 1895
Called from CommandLineTools.hx line 22
Called from a C function
Called from CommandLineTools.hx line 125
Called from CommandLineTools.hx line 1703
Called from lime/tools/ProjectXMLParser.hx line 21
Called from a C function
Called from lime/tools/ProjectXMLParser.hx line 50
Called from lime/tools/ProjectXMLParser.hx line 2043
Called from lime/tools/ProjectXMLParser.hx line 1528
Called from lime/tools/ProjectXMLParser.hx line 608
Called from a C function
Called from lime/tools/ProjectXMLParser.hx line 719
Called from a C function
Called from lime/tools/ProjectXMLParser.hx line 709
Called from /Users/runner/hostedtoolcache/haxe/4.2.1/x64/std/neko/_std/sys/FileSystem.hx line 69
Called from /Users/runner/hostedtoolcache/haxe/4.2.1/x64/std/neko/_std/sys/FileSystem.hx line 60
Uncaught exception - std@sys_file_type

Are you modding a build from source or with Lua?
Source
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
Yes Its A Heavily Edited Version Of Psych

i really don't know I'd suggest that you `haxelib update``


[ SAVCE ] Fix svace issues

This PR includes fixes about SVACE issues
Self evaluation:

Build test:	 [X]Passed [ ]Failed [ ]Skipped
Run test:	 [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon<EMAIL_ADDRESS>

:memo: TAOS-CI Version: 1.4.20191203. Thank you for submitting PR #432. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.


Fix resets.

Changing the episode number should also reset all progress bars.

I believe this update would cause the title to be reset to '0' as well, instead of just the numerical counters. Please update the code to preserve the show title as well. A PR for this PR.


Search not finding http_parser, though the package exists

I saw this before, but it corrected itself. It appears there is a lag for search results?
Go here: http://pub.dartlang.org/packages/http_parser
Then, go here: http://pub.dartlang.org/search?q=http_parser
Expected: to find http_parser in the results.
Actual: http_parser is missing from results

Attachments:
[Screen Shot 2014-05-29 at 1.24.55 PM.png](https://storage.googleapis.com/google-code-attachments/dart/issue-19091/comment-0/Screen Shot 2014-05-29 at 1.24.55 PM.png) (91.82 KB)
[Screen Shot 2014-05-29 at 1.25.18 PM.png](https://storage.googleapis.com/google-code-attachments/dart/issue-19091/comment-0/Screen Shot 2014-05-29 at 1.25.18 PM.png) (100.25 KB)

This issue has been moved to dart-lang/pub-dartlang#278.


makepbcore.py -include value =n/a for multiple fields

here are the fields where this needs to be included:
instantiationDimensi
instantiationLocatio
instantTimeStart
instantColors
instantLanguage
instantiationChanCon

All but instantiationDimensi are implemented locally.
I think for this one, we said that we wouldn't use it at all, as the information is covered elsewhere? Also it's a combination of height and scan type (1080p, 720p). I think it was a mistake that we left it in as included in the XDCAM format spreadsheet. Same for DCP.. I think that this could be removed from the database and not be included at all..
Also for instantiationLocatio - I can't remember how we would use this. The 'habitat' field in our database maps to this PBCore field, so having a seperate instantiationLocatio field might be a duplication of effort, unless we want to use this for barcodes or something? I'll check the minutes of our last meeting to see what was decided..

yes re instantiationlocation. - it is the habitat field. we put it in as a yes, because we decided it was the same as the habitat field. i shouldn't have put it in the list above, sorry
R

had a look over the pbcore template again there, - i think you are right. i think we said yes to dcp and xdcam but then re-thought it when it came to concat and converted, - but either neglected to revisit the subject for dcp and xdcam or just updating the field.
anyway, - it can be taken off the list and i'll adjust the pbcore template
R

Savage.  I've removed instantiationLocation and instantiationDimension just there, and all of the other fields produce 'n/a' for now. I'm gonna close this but re-open if necessary.


[RESOLVED] System Board Inlet Temp: Temperature is above warning threshold: >30

Problem started at 19:48:27 on 2023.04.18
Problem name: System Board Inlet Temp: Temperature is above warning threshold: >30
Host: IDRAC_83
Severity: Warning
Operational data: Current value: 31 °C
Original problem ID: 18944
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23218&eventid=18944

Problem has been resolved in 3h 39m 0s at 23:27:27 on 2023.04.18
Problem name: System Board Inlet Temp: Temperature is above warning threshold: >30
Host: IDRAC_83
Severity: Warning
Original problem ID: 18944


extends: is not really extending model

When someone do:
c2:= KEModelPart extends: c1.

we don't extend c1 to build c2, we just copy c1 to produce a new model c2.
We should rename extends: as copy and use it like that:
c2 := c1 copy.

I just changed the extends method to the copy method and also modified some examples that used extends

Can we close issues only when PR has been merged ?

But can be reassuring to close once the PR is approved


Implement new Blog Counter start/stop dates

Starting the blog counter the day that the course begins is problematic. It isn't until the completion of the firstflight assignment that student's blogs are actually tracked.
Currently, there isn't a way to stop the blog counter either, which would be nice for leaving the course website up after the course is completed, between semesters.
I have added blog_start and blog_stop within the site.yaml, assuming that we can easily swap out where blog_start part reads from, and maybe implement the blog_end later.
Thoughts @ryansb or @liam-middlebrook?

Yeah, should be a simple change. Tomorrow evening will be a good time to work on it.


Update the Ingress annotations

We've replaced the KCM / Kube-lego cert providers with Certmanager. I've updated the annotations with the new ones.
This closes #6

Thanks @Angelmmiguel for the PR, would you mind instead reviewing #8, which
syncs verbatim from internal kube-libsonnet ?

Closed in favor of #8


Rename bearerFormat to format, allow it to be used by others, with jwt | opague | text

In the Security Scheme Object, the bearerFormat is very limited, value is string, and only applies to the OAuth.
Can this be more generic by changing the term to format and allow it to be used for all other security options (given it is for information only).  This way, we can use it for apiKey for example.

You have complete flexibility using just the http type.
{
  "type": "http",
  "scheme": "whatever-you-want",
}

Now you can make http requests using the Authorization header with the scheme whatever-you-want and add whatever auth parameters you want.
The only reason for the bearerFormat property is because the bearer scheme doesn't actually tell you anything about the token https://tools.ietf.org/html/rfc6750#section-1.2  This is usually because you get it from a token server and the client doesn't really need to know the format.

Can you elaborate on how that can be done with http type ?  http is protocol..
So in the scenario, I have 2 apiKey..
securityDefinitions:
  api-key-1:
    type: apiKey
    description: test
    in: header
    name: id
  api-key-2:
    type: apiKey
    description: test
    in: header
    name: key

for id check, I would like to do a db1 lookup.
for key check, I would like to do a db2 lookup.
However, the name should be flexible enough.. so id -> myid, and key -> foo.  So it needs to have a way to indicate api-key-1 is type lookupwithdb1, and api-key-2 is type lookupwithdb2.
How will the above solved with the http type ?  What it is also confusing, what other type are there ?  tx.

Triaged. Closing due to inactivity - but please feel free to reopen the issue if necessary.


eza: v0.12.0 -> v0.13.0

Description of changes
Changelog: https://github.com/eza-community/eza/releases/tag/v0.13.0
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 255943 run on x86_64-darwin 1

2 packages built:

eza
eza.man

Result of nixpkgs-review pr 255943 run on x86_64-linux 1

2 packages built:

eza
eza.man


Looping using "each" with variables doesn't work

https://learn.microsoft.com/en-us/azure/devops/pipelines/process/expressions?view=azure-devops#split has 2 examples of looping using parameters and variables.
Variables did not work in ADO build pipeline. The pipeline does not recognize ${{variable.xyz}}. However, parameters works as shown in the example.
Please investigate why variables looping doesn't work. I spent half a day on it with no success.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 77c58a78-a567-e99a-9eb7-62dddd1b90b6
Version Independent ID: 680a79bc-11de-39fc-43e3-e07dc762db18
Content: Expressions - Azure Pipelines
Content Source: docs/pipelines/process/expressions.md
Service: azure-devops-pipelines
Sub-service: azure-devops-pipelines-process
GitHub Login: @juliakm
Microsoft Alias: jukullam

@chitturs -- Chittur, thank you for your feedback.  Please consider these resources:

Azure DevOps Services
Azure DevOps on Stack Overflow

@juliakm -- Julia, please look into this issue.

The first split() example works for me. I updated the first example locally to make sure it ran without looking for a script. This should work.
trigger:
- '*'

pool:
  vmImage: 'ubuntu-latest'

variables:
- name: environments
  value: prod1,prod2
steps:
  - ${{ each env in split(variables.environments, ',')}}:
     - script: echo ${{ env }}


Top right navigation menu does not work on touch screens

Hi, options in top right corner navigation menu are not selectable on touch-screen devices. Valid on both live server and DMP-test.

Works on phone. Closing out


Audio do not loop in region on browser tab change

As in topic, audio do not loop in region on browser tab change. To reproduce the problem you can use the example from https://wavesurfer-js.org/example/regions/index.html. Loop second region and change browser tab. Audio cursor goes beyond the region's border and audio is played to the end. After that if you go back manually to the region and you stay in audio tab, loop state is not lost and audio will be normally looped as expected. In my opinion it should be looped even on browser tab change when audio tab is inactive.
Wavesurfer version: 5.2.0

Would be really essential to mention what browser you're talking about, and what operating system. Also, please always use latest wavesurfer.js versionwhen reporting an issue (6.x atm).

I have the same issue working in cordova app. and the wavesurfer version is 7


Should i login everytime I poll the server?

Firstly, great job on this library man, so happy you maintain it so well.:+1:
Anyways, I'm planning on using the cli and I want to know your opinion on logging into the server.
If i make a script that polls the server every n seconds, should I call login() on every iteration before getFriends() and getSnaps(true) or is it safe to just call getFriends() and getSnaps(true)
is it enough that I do it at the beginning of the script? I'm worried they might see me logging in too many times and ban the account. But then again do I have to refresh the login tokens?
Cheers

Its possible to get banned with that. Usually just the network banned. I've implemented a system where I cache the auth_token and just use that to login and haven't had any bans since.

@Spurlex That's interesting, I investigated the code a bit (I'm no php expert) and noticed there's alot of checks for the auth_token already.
Leads me to believe I can just call get getFriends() and getSnaps(true) without having to worry about the low level auth_token cache handling myself?

@ObjectiveTruth if you are using the latest code, you can login normally all the times you want because you will remain logged in because of the auth token, this is done by the API by default (you will notice a file called auth.dat)
Regards


fix: Remove MapProxy

Remove MapProxy from docs pages because it's not related to Vector Tiles

Not related to this PR, but we should probably also remove the QGIS link, as it does not relate to vector tiles either.


[enhanced-api] Update move call metrics API structure

Description
This updates the API for getMoveCallMetrics to move to a filter-based API vs returning all of the data sets. This should work a little better in the future if we start to do things like current epoch metrics (which would be computed differently, I imagine), and also aligns with how the UI fetches this data.
Test Plan
Will update tests.

Current dependencies on/for this PR:

main

PR #10404

PR #10436   👈

This comment was auto-generated by Graphite.


Can we limit the number of search result?

I have a huge jstree and some times searching with one or two character would result huge number of results that frozen the UI, I wonder if we could limit the number of search results to improve performance.

As you may notice - there is no jsTree functionality that calls search() - it is a function that you call from your code (possibly using an input field, etc), If you want to limit the char count to some minimum amount (or do any custom logic for that matter), you have to do it in your code - it is much easier than providing countless config options in jstree.
Best regards,
Ivan

I understood, but limit the char count of input is nearly not enough, there are logs of cases that even you enter 5 or characters the results are still too much, while in some cases one character is perfectly fine.
I would be happy to contribute patches if this feature is blessed and would be great if you could give us some guidance how to do this.

As it is you have full manual control over what is considered a match using the search_callback function, I believe that is more than enough to achieve whatever you need.
I do not want to pollute the plugin with countless options that are very rarely used and can be achieved with a few lines of code using one of the existing options.
I also do not see how a large number of matches can freeze the UI unless you are using show_only_matches which I believe has a note in the docs about being slow in large trees and to use at your own risk.
So to sum up - I believe you can achieve a limit on the search results using search_callback: http://www.jstree.com/api/#/?q=search_call&f=$.jstree.defaults.search.search_callback With the easiest solution being a counter which once hit will cause the function to only return false.
Best regards,
Ivan


fix(deps): bump

Applied mkpr on undefined
/tmp/mkpr.sh

:tada: This PR is included in version 1.7.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Deploy previews not using context

Describe the bug
Pull request previews don't trigger a context (branch)'s command.
To Reproduce
Auto pull request deploy-previews are activated on the 'stage' branch.
Given the following netlify file:
# #####################################
# GLOBAL
# Settings in the [build] context are global and are applied to all contexts
# unless otherwise overridden by more specific contexts.
[build]
  publish = "dist"

# #####################################
# NETLIFY DEV
# these settings only apply if the `netlify dev` command is used to run the app
[dev]
   command = "yarn dev"
   # port = 3000
# [dev.environment] NOT implemented by netlify

# #####################################
# STAGE Branch
[context.stage]
  command = "yarn stage"

Expected behavior
Normally, when running the 'yarn stage' command generates a static site in the /dist folder.
However, that command is not executed when deploy-previews for pull requests on the 'stage' branch are triggered, no 'dist' folder is available and no mention of the command is in the logs.
CLI Output
1:43:10 PM:   Error message
1:43:10 PM:   Deploy did not succeed: Deploy directory 'dist' does not exist
1:43:10 PM:

Hi @MentalGear, since this issue seems to be related to our build system and not the CLI, I recommend opening it in https://github.com/netlify/build or posting it on the forums https://answers.netlify.com/.
Regardless I believe [context.branch-name] works for branch deploys, and for deploy previews you should use [context.deploy-preview]

Closing this per my previous comment


Heads up: pathlib.VirtualPath may be coming soon

I've logged a CPython PR that adds a private pathlib._VirtualPath class:
https://github.com/python/cpython/pull/106337
If/when that lands, it's not much more work to drop the underscore and introduce pathlib.VirtualPath to the world. This would be Python 3.13 at the earliest.
Would it be suitable for use in pathy? It would be great to hear your feedback!

Any public API that Pathy could hang off of would be very useful. Please feel free to update this issue when there is a build version that I can use.

Hello - I've published CPython's private PathBase class in a PyPI package: https://pypi.org/project/pathlib-abc/0.1.0/. No docs yet but I should have them ready soon.
If the PyPI package succeeds and matures, I'm hopeful we can make PathBase public in Python itself. Thanks!

I was about to resort to doing something similar to this package but baked into Pathy, so you saved me a lot of time and duplication. It's especially nice knowing this will feed back into Python and that this package can serve as a fallback after that.
I will spend some time today looking into integrating this with Pathy and ask questions as they arise.
Thanks for publishing a package that contains this functionality 🙇

@barneygale, So far, so good; there are some things I have to refactor to account for the pathlib_abc library not providing a concrete file system implementation, but I think it will ultimately simplify things.
The main question that's come up is whether you plan to add type hints or would be willing to accept a PR to add them. I haven't delved deep into why, but mypy/Pylance both dislike the pathlib_abc module here and there, warning about Unknown base class types and improper subclass signatures. I can add type ignores or reimplement the properties to add signatures, but that feels kind of icky.
Here are some examples of what I mean
PathBase.root is partially known: str | bytes | Unknown

Overridden methods have an implicit return type that conflicts with the concrete implementation expectations

The typing bits aside, there are no blockers so far; I should be able to open a PR soon.

I'm adding support for __lt__ to support sorted, and I notice the pathlib class has "_cparts" cached property that's used in the < operator:
    @property
    def _cparts(self):
        # Cached casefolded parts, for hashing and comparison
        try:
            return self._cached_cparts
        except AttributeError:
            self._cached_cparts = self._flavour.casefold_parts(self._parts)
            return self._cached_cparts

Can you tell me anything about the significance of this cache? I'm all for caches when needed, but that you've left it out of the ABC library makes me wonder how much it contributes? Also, I see that you've cached most properties in the ABC classes, so I wonder if there's maybe a simpler solution you had in mind with comparable performance using the existing cached properties?

It's only important in pathlib because Windows paths need to perform case-insensitive comparisons, and even then I'm not sure if it has a huge effect!
FWIW I've just removed most/all caching in the ABCs. PyPI release coming up...

One troubling thing I found is that Pathy will no longer inherit from pathlib.Path while using this library. This comes with some negative side-effects, like I noted in another issue, where a serialization library that spaCy uses has a function to coerce strings to Path objects if they're not already that type:
def force_path(location, require_exists=True):
    if not isinstance(location, Path):
        location = Path(location)
    if require_exists and not location.exists():
        raise ValueError(f"Can't read file: {location}")
    return location

Pathy objects used to make it through unscathed, but now they get corrupted and transformed into Path objects that don't work.
Pathy isn't so widely used that it will be a significant problem, but it's something to keep in mind. Do you see any workarounds I might be missing that could keep this compatibility?

That sounds like a bug in spacy, judging by this bit of their CONTRIBUTING.md:

Code that interacts with the file-system should accept objects that follow the
pathlib.Path API, without assuming that the object inherits from pathlib.Path.
If the function is user-facing and takes a path as an argument, it should check
whether the path is provided as a string. Strings should be converted to
pathlib.Path objects.

They might be interested in depending on pathlib_abc - I'll reach out.

Yeah, it was just an example, I already reached out in the linked issue. They have a more "correct" implementation in spaCy directly, i.e.
def ensure_path(path: Any) -> Any:
    """Ensure string is converted to a Path.

    path (Any): Anything. If string, it's converted to Path.
    RETURNS: Path or original argument.
    """
    if isinstance(path, str):
        return Path(path)
    else:
        return path

So this is probably actually a bug in srsly in the way it interacts with spaCy.

With pathlib_abc that method could be implemented as follows:
from pathlib_abc import PathBase
from pathlib import Path

def ensure_path(path: PathBase | os.PathLike) -> PathBase:
    if not isinstance(path, PathBase):
        path = Path(path)
    return path

But srsly seems to be a low-dependencies affair, so it could instead adopt spaCy's string check behaviour.

In general I don't think it's correct to inherit from pathlib.Path unless your object represents a local filesystem path. That's sort-of the whole point of Path.

In general I don't think it's correct to inherit from pathlib.Path unless your object represents a local filesystem path.

I agree with you on that. I always felt awkward usig internals and inheriting behavior that didn't apply to my use-case. Still, sometimes we work with solutions that aren't ideal because they're easily grasped.
Moving to pathlib_abc feels much cleaner. It will be nice not to have to refactor Pathy again next year and the year after with each new Python release because the pathlib internals were refactored. 😅

I've finished work on the PR to replace pathlib.Path base with pathlib_abc. While it's not required, @barneygale if you'd like to review my changes, I'd welcome any feedback you have.

@barneygale the pathlib_abc experience has been great so far. Reopening this in the event you wanted to follow up more. Github auto closed it because I noted it in the PR. 😅
One thing I noticed while working on this is that pathlib_abc has some methods that only make sense for file systems. For cloud storage they're just extra code that wouldn't really work as expected if you called it.
I took a quick pass and trimmed the PathBase class def to include the methods I think could be removed and exist solely in pathlib proper. They don't harm Pathy, but they don't help either.
class PathBase(PurePathBase):
    def is_mount(self):
        ...
    def is_symlink(self):
        ...
    def is_junction(self):
        ...
    def is_block_device(self):
        ...
    def is_char_device(self):
        ...
    def is_fifo(self):
        ...
    def is_socket(self):
        ...
    def readlink(self):
        ...
    def symlink_to(self, target, target_is_directory=False):
        ...
    def hardlink_to(self, target):
        ...

None of the cloud providers support symbolic links, so at best we could implement it with application logic and metadata. That might be a good argument for keeping it, given the utility of symlinks.

If you implement stat() you should find that the is_ methods return False, and you can ignore the other methods if your filesystem doesn't support em (they'll raise UnsupportedOperation). They make sense in some situations, e.g. TarPath in the docs supports most of these methods.

They make sense in some situations, e.g. TarPath in the docs supports most of these methods.

Sure, that makes sense. Like I said, they don't hurt anything, I just wanted to provide some feedback.
What's your stance on conda-forge? Pathy has a conda recipe and it can't resolve pathlib_abc 😓 I'm not sure how many people consume pathy through conda-forge.

FYI, I've published pathlib-abc 0.2.0. Changelog: https://pathlib-abc.readthedocs.io/en/latest/changes.html

What's your stance on conda-forge? Pathy has a conda recipe and it can't resolve pathlib_abc 😓 I'm not sure how many people consume pathy through conda-forge.

(As an observer) conda-forge is community-led and anyone can submit a package as long as they're prepared to maintain the recipe; you don't need permission. The main question is whether @barneygale wants to officially support and maintain it himself.

FYI, I've published pathlib-abc 0.2.0. Changelog: https://pathlib-abc.readthedocs.io/en/latest/changes.html

I've been working on some updates to my Mathy project recently. I'll check out the latest pathlib_abc sometime soon.

I'd raise this in the pathlib_abc issue tracker rather than here.

Yeah, well Barney did ask for questions on this issue, but you're probably right.
I'll close this issue for now.


[Dropbox] ...

Extension
https://www.raycast.com/chyroc/dropbox
Description
I get the message "This app is unable to link additional users because it has been frozen pending review" when I attempt to sign in with my Dropbox account.
Steps To Reproduce
Using the Raycast plug-in, I attempt to sign in to Dropbox as prompted I get the following error message: This app is unable to link additional users because it has been frozen pending review
Current Behaviour
No response
Expected Behaviour
No response

I still getting this bug.


Native A-Frame support

We could support A-Frame for even more users, especially users who are just dabbling in 3D/VR without much JS knowledge. How it could work:
<a-entity id="myLight" light="color: #AFA; intensity: 1.5" position="-1 1 0"></a-entity>

<a-datgui name="light settings" target="#myLight">
    <a-gui-dropdown property="light.color">
        <option value="#ff0000">Red</option>
        <option value="#0000ff">Blue</option>
    </a-gui-dropdown>
    <a-gui-checkbox property="light.castShadow"></a-gui-checkbox>
    <a-gui-slider property="light.intensity"></a-gui-slider>
</a-datgui>

<a-datgui> defines a dat gui vr primitive. Name attribute sets the name of the dat gui group. Target sets the element id for the object being manipulated.
The children of this element are controllers. The type probably has to be explicit:
<a-gui-slider> creates a slider. "Property" attributes set what the controller modifies, in this case "light.intensity" refer to myLight's light component, intensity property.

Is there a branch or repo for this / is an A-Frame wrapper still being worked on?

We decided to have separately maintain the DatGUIVR AFrame component. You can now find it here:
https://github.com/mflux/aframe-datguivr
Don't have a runnable example yet. Let me know if you build one!


New warning message in WASM builds - possibly associated with inconsistent rendering issues.

Bevy version
main - commit: https://github.com/bevyengine/bevy/commit/64a15f1b10ff5a4c0cb2ada1905baeb7125d16e4
cargo 1.74.0 (ecb9851af 2023-10-18)
MacBook Pro: macOS Ventura 13.3.1
Web browser console:
INFO .../.cargo/git/checkouts/bevy-f7ffde730c324c74/64a15f1/crates/bevy_render/src/renderer/mod.rs:144 AdapterInfo { name: "ANGLE (Apple, Apple M1 Pro, OpenGL 4.1)", vendor: 4203, device: 0, device_type: IntegratedGpu, driver: "", driver_info: "", backend: Gl }
WARN .../.cargo/git/checkouts/bevy-f7ffde730c324c74/64a15f1/crates/bevy_pbr/src/ssao/mod.rs:92 ScreenSpaceAmbientOcclusionPlugin not loaded. GPU lacks support: TextureFormat::R16Float does not support TextureUsages::STORAGE_BINDING.
What went wrong
New Warning in Web browser console and sometimes my game doesn't spawn the base map of the game. Have noticed this starting today while using latest commits.

@alice-i-cecile I can't rename the issue, but the warning has been there since we added SSAO, it's just saying you can't attempt to use the SSAO plugin.
As for the user's error, no idea, not enough info to go off of.

You are correct I test several commits and and realized the WARN has been around for awhile. I'm also not sure what was causing the issues and the ability to reproduce is wildly inconsistent and uncommon. I'm going to close this issue for now.
Quick Followup @JMS55 .. Is this WARN safe to ignore long term?

Yes, you can ignore it unless you plan to use ScreenSpaceAmbientOcclusionPlugin. It's simply stating that your GPU/target platform does not support features necessary to use the plugin.


Steam gyro for cemuhook init at 1.4.2

Description of changes

This is a tool that lets you read the gyros in the Steam Controller, and produces the output in DSU format for emulators that support it, including Ryujinx, Yuzu, Cemu, and Dolphin.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Since I'm sure it will come up: Yes, the package is no longer maintained upstream, but to the best of my knowledge there is no functional alternative at this time, and it works just fine as is.

Closing as SLAPPed.


Add to documentation for commit instructions: YAPF

Currently we hit YAPF issues in travis occasionally. We might want to add some documentation to help developers run YAPF before they check in, and fix any formatting problems.
To show YAPF discrepancies we can run:
yapf --diff -r .
After doing this, developers can either apply the changes manually, or automatically apply them with:
yapf -r -i .

Sorry, I'm not sure how to remove the "New Spider" label. This isn't a new spider.

I will add this to the new documentation

This is resolved in #84. See the file 04-development.md.


pull request for e2e test at 01/12/2017 14:26:11

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


cocoapods-art not able to add Private Github Repo

pod repo-art add RemoteTest2 "http://localhost:8081/artifactory/api/pods/RemoteTest2"
Retrieving index from `http://localhost:8081/artifactory/api/pods/RemoteTest2` into local spec repo `RemoteTest2`
[!] Error getting the index from Artifactory at: 'http://localhost:8081/artifactory/api/pods/RemoteTest2' : [!] /usr/bin/curl -f -L -o /Users/seanliu/.cocoapods/repos-art/RemoteTest2/Specs/file.tgz http://localhost:8081/artifactory/api/pods/RemoteTest2/index/fetchIndex --create-dirs --netrc-optional

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (22) The requested URL returned error: 404 Not Found

My Remote Cocoapods Repository uses private github repo. If I change remote cocoapods repository to github.com and https://github.com/CocoaPods/Specs, everything works fine. I wonder how to let cocoapods-art have access to my private repo

Hi @seanliu1 how did you fix it? the same issue

Hi @seanliu1 plz let me know how did you fix it. I used artifactory private remote repo.


Modify config for development

Codecov Report

Merging #466 (c88d5bb) into main (8848deb) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##            main    #466   +/-   ##
=====================================
  Coverage   9.62%   9.62%
=====================================
  Files         67      67
  Lines      10753   10753
=====================================
  Hits        1035    1035
  Misses      9589    9589
  Partials     129     129

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8848deb...c88d5bb. Read the comment docs.


Quick dependancy is not correctly versioned

When trying to add SwiftLint as a dependency it unfortunately fails to do so with the following message:
because SwiftLint >=0.37.0 depends on Commandant 0.17.0..<0.18.0 and Commandant >=0.16.0 depends on Quick 2.0.0..<3.0.0, SwiftLint >=0.37.0 requires Quick 2.0.0..<3.0.0.
And because siesta 1.5.1 depends on Quick 0.0.0 and no versions of siesta match the requirement 1.5.2..<2.0.0, SwiftLint is incompatible with siesta.
And because root depends on siesta 1.5.1..<2.0.0 and root depends on SwiftLint 0.39.2..<1.0.0, version solving failed.

I'm running into the same basic issue after adding Quick and Nimble to my own project. Swift Package Manager is unable to resolve dependencies because Siesta uses https://github.com/pcantrell/Quick instead of https://github.com/Quick/Quick . It was surprising to me that this was a problem since these are test dependencies, but it seems Swift PM makes no such distinction.
My workaround is to use the same forked version of Quick and pin to 0.0.0 as Siesta is doing. This is less than ideal though, since the fork is now over 1k commits behind upstream.

Could one (or both) of you switch your dependency on Siesta to the bump-swift-package-version branch, and see if that fixes your problem?
(Your client shouldn’t pick up Quick/Nimble at all, and SwiftPM has actively been working on resolving this. Their recent work may fix it if Siesta’s Package.swift specifies the newer behavior.)

Could one (or both) of you switch your dependency on Siesta to the bump-swift-package-version branch, and see if that fixes your problem?
(Your client shouldn’t pick up Quick/Nimble at all, and SwiftPM has actively been working on resolving this. Their recent work may fix it if Siesta’s Package.swift specifies the newer behavior.)

Hi Paul!
It did resolve the issue indeed! It still retrieves Quick and Nimble but doesn't complain anymore. Thank you for your help and dedication!

Great news! I’ll try to get a point release out with this fix soon.
There’s one more SwiftPM improvement related to this issue that they’ve merged but not yet released, and if I understand correctly, it should stop downstream projects from fetching Quick and Nimble at all.

Great news! I’ll try to get a point release out with this fix soon.
There’s one more SwiftPM improvement related to this issue that they’ve merged but not yet released, and if I understand correctly, it should stop downstream projects from fetching Quick and Nimble at all.

Excellent! Then perhaps that issue would be solved in the next Swift version too. Thank you so much!

This is now released as Siesta 1.5.2, so you should be able to update your Package.swift accordingly. Let me know if you hit any troubles!
FWIW, it looks like Swift 5.3.1 includes the further SwiftPM enhancements above, so now SwiftPM shouldn’t even download Quick and Nimble for downstream projects that don’t need them.

Looks like it is indeed working, thanks @pcantrell !

Thank you Paul! Great work!!


dedupe world's AccessControl and world-modules' AccessControlLib

they're the same file
since we already import/depend on world from world-modules, maybe we remove the world-modules one?

They are actually slightly different, according to this comment in AccessControlLib.
 * This library is functionally equivalent with the AccessControl library from world,
 * but uses StoreSwitch instead of always reading from own storage.

I bet we could consolidate though, with one AccessLib and methods like hasAccess (using StoreSwitch) and _hasAccess (using _-prefixed methods)

closing as a dupe of https://github.com/latticexyz/mud/issues/1853


edge functions/feature-flag-optimizely not loading variations/sort flag

It's possible I'm misunderstanding how this demo is supposed to work (https://github.com/vercel/examples/tree/main/edge-functions/feature-flag-optimizely), but when I go to the application I see products sorted alphabetically.  When I go in and delete optimizely_visitor_id cookie and reload the page I don't see any changes.  I tried deleting the cookie and reloading a few times, but did not notice any changes.
How am I supposed to trigger a new variation of the feature flag?

Can confirm. cc @dominiksipowicz can you take a look at this? Also the text can be updated to match our other examples 🤔


Router -> Dealer example?

I can't seem to get the Router -> Dealer working over TCP. Both are running but cant talk to each other. Can someone post an example? Thanks in advance.

I made the mistake of forgetting to pass all the multipart parms through the listening function. All solved.


Add readme

Coverage remained the same at 89.552% when pulling 48d5ae473c5ddeb722cd27dab40e938b47129216 on add-readme into 1645ee155c0ead5fc336c2b9ca6cf49030c24ba6 on master.


feat(filter-set): Add filterset resource

SUMMARY
this is the second milestone in the filter set feature.
it is about managing a scope for filter set either Dashboard/User

Dashboard scoped filter sets will be available for all dashboard permitted user and will be maintained with admins dashboard owners
User scoped filter sets will be private for each user separately

implementation:
a subset API of dashboard  "/<dashboard_id>/filtersets" for managing a dashboard
notes:
future milestone will deal with sharing and collaborating on filter-sets
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN
tests suites
create_api_tests.py
delete_api_tests.py
get_api_tests.py
update_api_tests.py
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[X] Includes DB Migration (follow approval process in SIP-59)

[X ] Migration is atomic, supports rollback & is backwards-compatible
[X] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[X] Introduces new feature or API
[ ] Removes existing feature or API

/testenv up SUPERSET_FEATURE_DASHBOARD_NATIVE_FILTERS=true SUPERSET_FEATURE_DASHBOARD_NATIVE_FILTERS_SET=true

Is there anything that we can test for on this PR in the virtual env?  I see that most of the changes are  in the backend, so not sure if anything is visibly changed in the app.

Zero ui changed and will be in followup PRs which this is big already

Crap, I did this myself already (although mine is way more simple/naive). Any idea when the UI might get merged in? My names apparently conflict with these and break Superset, so if it's going to be a while I'll rename all of my stuff, and I might be able to help a bit with the UI.
Thanks!


AMBARI-26243: refactor(ambari-server): convert .format() to f-strings

What changes were proposed in this pull request?

Replace legacy .format() syntax with modern f-strings throughout the codebase in ambari-server
Update string formatting to improve code readability

Examples
Before:
message = "Hello, {}".format(name)
After:
message = f"Hello, {name}"
How was this patch tested?
All existing tests pass
No functionality changes, only syntax improvements
Please review Ambari Contributing Guide before opening a pull request.

@JiaLiangC Could you please review this PR? The main changes involve replacing legacy .format() syntax with f-strings across the codebase.

@yaruyng  It is recommended to create an issue for each commit. If you don't have an issue account, you can request community members to help create one.


More attributes

I found more occurrences  where we can add the resource selector attribute and requests for Equipment needs a special treatment.

This is great.  Item/Accessory is missing, but I'll add that after the merge.


Improvements to GitHub Actions for code coverage.

This PR fixes code coverage for clang builds. And there are some other github actions yaml changes I made to improve the workflow.

Any ideas why the fuzzer fails in one of the CI builds?

No I don't know about it.

It is mentioned already in #471.


[FEATURE] Delayed Evaluations

As asked by @jacobmontiel, here is the first implementation of delayed evaluation. It is already stable, but we still need to address some features, like dealing with a delay by a number of samples and adding a delay to all the stream. We need to check if there are ways to improve performance by removing pandas data frame from TimeManager too. Finally, we need to create a dataset to test this new feature.
Changes proposed in this pull request:

Created TemporalDataStream, to handle temporal data in a stream.
Created EvaluatePrequentialDelayed,
Created TimeManager, to handle delay queue even outside evaluation

Known bugs:

Sometimes progress bar is printed a lot of times when reaching 100%, and sometimes it reaches more than 100%. I tried to fix that in update_metrics method, but nothing fixed it yet.

Checklist

[x] Code complies with PEP-8 and is consistent with the framework.
[x] Code is properly documented.
[x] Tests are included for new functionality or updated accordingly.
[ ] Travis CI build passes with no errors.
[ ] Test Coverage is maintained (threshold is -0.2%).
[x] Files changed (update, add, delete) are in the PR's scope (no extra files are included).

Failed tests are due to an external change from sklearn. The fix is available in the master branch 6a482447faa3202425e70334c68518df8b7f4ecd

Failed tests are due to an external change from sklearn. The fix is available in the master branch 6a48244

@jacobmontiel do I need to fix it in my brach too or it will be fixed when merged with master?

@fabriciojoc you can rebase your branch on top of the master

I just implemented the delay by number of samples (as implemented in MOA). To use it, sample_delay should be int.

Failed tests are due to an external change from sklearn. The fix is available in the master branch 6a48244

@jacobmontiel do I need to fix it in my brach too or it will be fixed when merged with master?

@fabriciojoc you can rebase your branch on top of the master

Agree, this change is required to track the status of the PR (test-wise). Currently, all commits are resulting in an failure unrelated to this PR.

I addressed all comments, please let me know if we need to improve something else.
Thank you for all your help! :smiley:

@jacobmontiel should we consider creating a unique EvaluatePrequential, as we talked last week?

Hi @jacobmontiel.
Thank you very much for the comments again! I already responded to them and will work to solve pending issues.
I will also work to create a single EvaluationPrequential class, I let you know when I finish it.
About the example, I uploaded it here. I modified the existing iris dataset, including random timestamps to each sample.
Let me know if you need anything else. Thanks again!

Hi @jacobmontiel.
Thank you very much for the comments again! I already responded to them and will work to solve pending issues.
I will also work to create a single EvaluationPrequential class, I let you know when I finish it.
About the example, I uploaded it here. I modified the existing iris dataset, including random timestamps to each sample.
Let me know if you need anything else. Thanks again!

I have marked several items as resolved. Thanks!
The example is looking good. Now I am thinking about an improvement for TemporalDataStream:
If the user sets time=None we could default to creating a sequence of numbers with a default time difference (e.g. seconds). This way the user can use any data set directly...and in one line.  Of course, this is only for a matter of basic testing, and more sophisticated scenarios should be in charge of the user. Let me know what you think.

Hi @jacobmontiel.
Thank you very much for the comments again! I already responded to them and will work to solve pending issues.
I will also work to create a single EvaluationPrequential class, I let you know when I finish it.
About the example, I uploaded it here. I modified the existing iris dataset, including random timestamps to each sample.
Let me know if you need anything else. Thanks again!

I have marked several items as resolved. Thanks!
The example is looking good. Now I am thinking about an improvement for TemporalDataStream:
If the user sets time=None we could default to creating a sequence of numbers with a default time difference (e.g. seconds). This way the user can use any data set directly...and in one line. Of course, this is only for a matter of basic testing, and more sophisticated scenarios should be in charge of the user. Let me know what you think.

That's a great idea @jacobmontiel! I will implement it.
I already had a feedback from @laoheico3 (one of the users who asked for delayed labels implementation in gitter). He had some issues with the version of pandas (the last version is required to run both DataStream and TemporalDataStream.

He had some issues with the version of pandas (the last version is required to run both DataStream and TemporalDataStream.

We might need to update the requirements. What is the requiered Pandas version?

He had some issues with the version of pandas (the last version is required to run both DataStream and TemporalDataStream.

We might need to update the requirements. What is the requiered Pandas version?

The latest version (1.0.3) is working fine.

The latest version (1.0.3) is working fine.

OK, in that sense then let's update to pandas>=1.0.3 in requirements.txt

@jacobmontiel do you think that it is better to wait for PR #236 to create a unique Evaluator? Maybe I could create a new PR after this one and #236 are ready to do this. What do you think?

Also, I forgot that samples' weight is still not supported. For now, it is a TODO: we need to check if it is enabled or not to use it in TimeManager and EvaluatePrequentialDelayed.

Also, I forgot that samples' weight is still not supported. For now, it is a TODO: we need to check if it is enabled or not to use it in TimeManager and EvaluatePrequentialDelayed.

Just included support for samples' weights in commit 646c1b33a97d2244a6dfd1cff0d530a6a4c04643.

do you think that it is better to wait for PR #236 to create a unique Evaluator? Maybe I could create a new PR after this one and #236 are ready to do this. What do you think?

#236 should be ready soon. In reality, you don't need it to start working on the simplified version of the evaluator. As the PR is ready, we just need to merge the branch with the master and it will be available.
However, I understand that the PR is already big as it is and it is getting difficult to track. If you prefer creating a new PR then we will need to make sure that this PR is ready and merge it to the master, then create a new branch for the evaluator.

do you think that it is better to wait for PR #236 to create a unique Evaluator? Maybe I could create a new PR after this one and #236 are ready to do this. What do you think?

#236 should be ready soon. In reality, you don't need it to start working on the simplified version of the evaluator. As the PR is ready, we just need to merge the branch with the master and it will be available.
However, I understand that the PR is already big as it is and it is getting difficult to track. If you prefer creating a new PR then we will need to make sure that this PR is ready and merge it to the master, then create a new branch for the evaluator.

I believe it is better to create a new PR to create a unique Evaluator to make it easier to track, with every changes from this PR and PR #236.  I will do it right after we merge both PRs into master. Thanks @jacobmontiel!

@jacobmontiel let me know if we need more things in this PR. I changed the default parameter for sample_delay to 0 to make it compatible with time=None. If the user does not provide a time, the Evaluator should still work processing it with a delay by number of samples.

@fabriciojoc I made some minor changes in the code. Mostly to improve consistency and enforce PEP-8. And fixed the conflict with the master branch.
There are 3 things to address before closing the PR and opening a new one:

allow_nan is not currently supported in TemporalDataStream.
The examples in the docstring of EvaluatePrequentialDelayed are incorrect.
There are no functional tests for the TemporalDataStream and EvaluatePrequentialDelayed. We need those tests to

Make sure that functionality is maintained as we change things
Keep test coverage of the master branch

@jacobmontiel I just included new tests for TemporalDataStream and EvaluatePrequentialDelayed. I found some bugs when creating them and already fixed everything I found. Please, let me know if we need something else, I think I finished items 1, 2, and 3 now.

Thanks @fabriciojoc
Two comments:

The CI pipeline step for Python 3.5 is broken as Pandas requires Python 3.6+ from version 1.0.0.
Here is an option that might work: link
Then we would need to deactivate the tests for EvaluatePrequentialDelayed  only for Python 3.5
However, this seems rather complicated for something that will only last a couple of months. The end-of-life of Python 3.5 is close (2020-09-13). Should we consider dropping support for Python 3.5? @fabriciojoc @smastelini @hmgomes @abifet?

I noticed that you added a dataset (iris_timestamp.csv). Can we avoid it, for example, using the TemporalDataStream? The data set is rather small but, in the short-term, we will remove all data sets to reduce the size of the package.

Thanks @fabriciojoc
Two comments:

The CI pipeline step for Python 3.5 is broken as Pandas requires Python 3.6+ from version 1.0.0.
Here is an option that might work: link
Then we would need to deactivate the tests for EvaluatePrequentialDelayed  only for Python 3.5. However, this seems rather complicated for something that will only last a couple of months. The end-of-life of Python 3.5 is close (2020-09-13). Should we consider dropping support for Python 3.5? @fabriciojoc @smastelini @hmgomes @abifet?
I noticed that you added a dataset (iris_timestamp.csv). Can we avoid it, for example, using the TemporalDataStream? The data set is rather small but, in the short-term, we will remove all data sets to reduce the size of the package.

Hi @jacobmontiel. I managed to solve the problem with pandas, I changed the minimum version to 0.25.3 and adapted the code to work with it. So, we are still compatible with python 3.5! About the dataset, I included it as an example in the docstring for EvaluatePrequentialDelayed. Maybe we could upload it somewhere and use its URL in read_csv. What do you think?

Maybe we could upload it somewhere and use its URL in read_csv. What do you think?

I have created a new repository for this purpose:
https://github.com/scikit-multiflow/streaming-datasets


Same web property ID is tracked twice

I got Same web property ID is tracked twice on root url.

There is someone have the same problem?

This question is available on Nuxt.js community (#c13)

Do you issue manual tracking in any created or beforeCreated hook?

No I did not do any manual tracking.
Everything I did is add this to nuxt.config.js
  modules: [
    '@nuxtjs/google-analytics'
  ],
  'google-analytics': {
    id: 'UA-38944667-7'
  },

I found that it send page view for / every route I go

The solution that work for me right now is adding this to the nuxt.config.js
  'google-analytics': {
    id: 'UA-38944667-7',
    autoTracking: {
      pageviewOnLoad: false
    }
  }

@kieusonlam the default behavior of the plugin within the nuxt module is to automatically track your routes by default.
If you don't want this to happen at all, you can turn that off and do it manually.
here the link to the documentation https://github.com/MatteoGabriele/vue-analytics/blob/master/docs/page-tracking.md#disable-page-auto-tracking

I disagree :)
Sending the first hit of the currently loaded page it's normal and even suggested in the Google Analytics developer documentation.
There are too many different use cases, someone wants it on page load, someone doesn't.

Setting pageviewOnLoad: false prevents a double page hit on a SSR load.  With this on by default GA is logging double pageviews on the first site hit...this will screw all your analytics.  This is very dangerous as you can't ever change this.

@pi0 I'm sorry but if I create a new nuxtjs project, add the plugin, the domain ID and start refreshing or going around, I don't have this issue.
without a reproduction, I can't do that much

I wound up just creating and using my own simple plugin because of the issue in #8.

Hi,
I created a repository where this issue is reproduced. The issue is happening in the most basic nuxt-app possible, so it seems like it affects all users.
The repository can be found here: https://github.com/stephanvane/reproduction-issue-14
Using the official Google Analytics Debugger, you can see that on the initial page-load, the page is tracked twice, it tracks the correct page and the root path (even when you're on an other page http://localhost:3000/page1).
When navigating between pages, it's working as intended (tracking only once per click).

here are the steps used to create this repository.

Create a new nuxt project

$ vue init nuxt-community/starter-template foo

$ yarn add @nuxtjs/google-analytics

Add the module to nuxt.config.js:

  modules: [
    // Simple usage
    ['@nuxtjs/google-analytics', {
      id: 'UA-12301-2'
    }]
  ],

Add another page, so there can be navigation between them.

(optional) Add mode: 'spa' to see that the issue is also there when SSR is disabled

  mode: 'spa'

hi @stephanvane thanks a lot for the effort, I will have a look as soon as possible

@MatteoGabriele The problem is not here?
https://github.com/MatteoGabriele/vue-analytics/blob/master/src/lib/page.js#L30
set('page', page)
query('send', 'pageview', ...args)

Set and send the same page, that is, tracked twice

@ricardogobbosouza set prepares the event not sending it.

@pi0 yeah, but query('send', 'pageview', ...args) page reset ga('send', 'pageview', '/')
According to the documentation should only be ga('send', 'pageview')

@pi0 yeah, but query('send', 'pageview', ...args) page reset ga('send', 'pageview', '/')
According to the documentation should only be ga('send', 'pageview')

The only thing I saw is that it executes these two commands
Running command: ga("set", "page", "/")
Running command: ga("send", "pageview", "/")

But I think that's okay. For me it works in both spa and universal mode.

As it's been some time, I think this has been solved.
For me it can close.


Version 1.3

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@d37e0e5). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             main        #1   +/-   ##
========================================
  Coverage        ?   100.00%
========================================
  Files           ?         1
  Lines           ?        39
  Branches        ?         2
========================================
  Hits            ?        39
  Misses          ?         0
  Partials        ?         0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d37e0e5...cf64499. Read the comment docs.


issue with primary key other than id

attempting to reify records with a primary key other than id can run into an error NoMethodError: undefined method 'find_by_id' when the Version#item association does not exist, due to either not being in the default scope, or the record no longer existing.
this fixes use of find_by_id to instead use whatever the primary key is.
I tried to heed rubocop warnings and follow existing testing conventions, but that may need some changes. I had some trouble testing the full matrix, will see what travis does with this PR.

ugh. I don't know why it is complaining about this
lib/paper_trail/reifier.rb:34:23: C: Space inside { missing.
          find_cond = {klass.primary_key => version.item_id}
                      ^
lib/paper_trail/reifier.rb:34:60: C: Space inside } missing.
          find_cond = {klass.primary_key => version.item_id}
                                                           ^

that is a hash, it should not have spaces

that is a hash, it should not have spaces

This project follows the Ruby Style Guide, see https://github.com/bbatsov/ruby-style-guide#collections

that is a hash, it should not have spaces

This project follows the Ruby Style Guide, see https://github.com/bbatsov/ruby-style-guide#collections

well, quoting
# good - space after { and before }
{ one: 1, two: 2 }

# good - no space after { and before }
{one: 1, two: 2}

but I have changed it.

I'm not sure how to get the schema.rb updated, I have had trouble getting the tests to run locally in many cases. I think I have addressed the rest of the feedback, can you help me with the schema.rb bit?

hm. item_id as string doesn't seem to work so well with postgres. investigating further ...

can you help me with the schema.rb bit?

I think I ususally cd into test/dummy and run db:migrate.

okay, so this error:
PG::UndefinedFunction: ERROR:  operator does not exist: character varying = integer
LINE 1: ...RE "custom_primary_key_record_versions"."item_id" = 651 AND ...
                                                             ^
HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.
: SELECT  "custom_primary_key_record_versions".* FROM "custom_primary_key_record_versions"  WHERE "custom_primary_key_record_versions"."item_id" = 651 AND "custom_primary_key_record_versions"."item_type" = 'CustomPrimaryKeyRecord' ORDER BY "custom_primary_key_record_versions"."created_at" DESC, "custom_primary_key_record_versions"."id" DESC LIMIT 1

was just an issue with how I was specifying the uuid primary key, in a way that wasn't supported by older activerecord, and uuid was being incorrectly created as an int instead of string.
that does surface an issue that if you have a versions table with a string versions.item_id, it can only be used with string primary key fields in postgres. if you have an application you perhaps started with traditional numeric id fields but are transitioning to a uuid (or any string) primary key, you won't be able to use the same versions table to track both sorts of models.
I don't have a solution for that (perhaps smart type casting in a query somewhere - not sure what capability activerecord even offers in that regard), just noting it as it occurs to me.

seems to be largely passing, I think feedback is addressed. Gem::InstallError: pg requires Ruby version >= 2.0.0. on 1.9.3 appears unrelated to this pull request

.. Gem::InstallError: pg requires Ruby version >= 2.0.0. on 1.9.3 appears unrelated to this pull request

Correct, and fixed by https://github.com/airblade/paper_trail/pull/870. Please rebase. It would be great if you could get the tests green before we review again. Let us know if you have trouble, thanks.

💥 rebased, green

This all looks good, my only question is what is the purpose of the default_scope in custom_primary_key_record.rb ?

added explanatory comment and CHANGELOG entry

Merged, thanks!

cool, thanks


HDDS-8849. Upgrade commons-text to 1.10.0

What changes were proposed in this pull request?
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-8849
How was this patch tested?
https://github.com/rohit-kb/ozone/actions/runs/5264432709

Thanks Rohit for working on this, LGTM

Thanks @rohit-kb for the patch, @Galsza for the review.

Thanks @Galsza and @adoroszlai for reviewing and merging this patch.


[CCI][BUG] Test support required for Python v3.9+

What is the bug?
When running test suite tests don't run for python 3.9+
How can one reproduce the bug?

Install Python 3.9+
Run the nox -rs test command

What is the expected behavior?
If you don't have the version specified in noxfile.py, all tests will be skipped:
nox > * test-2.7: failed
nox > * test-3.4: skipped
nox > * test-3.5: skipped
nox > * test-3.6: skipped
nox > * test-3.7: skipped
nox > * test-3.8: skipped
nox > * test-3.9: skipped
What is your host/environment?
OS: macOS
Python: v3.10.4

I also noticed before that version 2 is no longer supported. Should it be removed from noxfile?

Makes sense. As for version 2, I don't see why we wouldn't remove it.


Backporting various off heap issues to 9.1.x

https://issues.jboss.org/browse/ISPN-8409
https://issues.jboss.org/browse/ISPN-8419
https://issues.jboss.org/browse/ISPN-8481
https://issues.jboss.org/browse/ISPN-8423
https://issues.jboss.org/browse/ISPN-8454

Updated so memory count is correct again.

Please also make sure that changes from https://github.com/infinispan/infinispan/pull/5577 are cherry picked into this one after this integrated.

Integrated, thanks Will!


Document that (*License).NearestMatch may return nil.

This undocumented edge case triggered a minor production outage for us on the weekend.

Thanks! And sorry about the missing information.


Question: Helidon MP 2.0 - How to use FormParams?

How can we use Form Params on Helidon MP 2.0.2?
Environment Details

Helidon Version: 2.0.2
Helidon MP
JDK version: OpenJDK 11.0.2
OS: Mac OS 10.14.6
Docker version (if applicable): NA

Problem Description
If we have a form like this ( at /resources/webapp/index.html)

    <form action="/az/getUserProfile" method="post">

Sample Login

          <input type="text" placeholder="Username" required="" id="username" />

          <input type="password" placeholder="Password" required="" id="password" />

          <input type="submit" value="Log in" />

  </form>

and resource class:
...
@Path("/az")
@RequestScoped
public class AzResource {
   ...
   @Path("/getUserProfile")
   @POST
   @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
   @Produces(MediaType.APPLICATION_JSON)
   public JsonObject getUserProfile() throws Exception {
      ...
      // if we can read "password" and "password"
      ...
      Form userform = new Form();
      userform.param("username", username)
            .param("password", password);
      .. // calling 3rd party api
}

usually a typical way of reading them on jax-rs is:
import javax.ws.rs.FormParam;
...
public JsonObject getUserProfile(@FormParam("username") String username, @FormParam("password") String password) throws Exception {
   ...
}

References:

Could not find any docs at https://helidon.io/docs/v2/#/mp/introduction/01_introduction
https://newreleases.io/project/github/oracle/helidon/release/2.0.2
Referred to https://github.com/oracle/helidon/issues/1734 and https://github.com/oracle/helidon/pull/1093

Steps to reproduce

With help from @tjquinno on Slack, was able to resolve this.
The key is using id="username" did not work. Instead using name="username" and name="password" worked.
HTML:

    <form action="/azure/getUserProfile" method="post">

Sample Login

          <input type="text" placeholder="Username" required="" id="username" name="username"/>

          <input type="password" placeholder="Password" required="" id="password" name="password" />

          <input type="submit" value="Log in" />

  </form>

and Resource
import javax.ws.rs.FormParam;
....
  @Path("/getUserProfile")
  @POST
  @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
  @Produces(MediaType.APPLICATION_JSON)
  public JsonObject getUserProfile(@FormParam("username") String username, @FormParam("password") String password) throws Exception {
    ...
    Form userform = new Form();
    userform.param("username", username)
            .param("password", password);
    ...
    Client client = ClientBuilder.newClient();
    String serverUrl = "https://login....../token";
    WebTarget target = client.target(serverUrl);
    final Invocation.Builder invocationBuilder = target.request();
    invocationBuilder.header("Content-Type", "application/x-www-form-urlencoded");
    final Response response = invocationBuilder.method(
                                                    HttpMethod.POST,
                                                    Entity.entity(userform, MediaType.APPLICATION_FORM_URLENCODED),
                                                    Response.class);
    String serverResponse = response.readEntity(String.class);
    ...
    return jsonObject;
}

The JavaDoc for the @FormParam value attribute uses the term name extensively and never mentions id. There might be JAX-RS doc somewhere that states this more definitively.

Attribute id should really be about uniquely identifying a node in a DOM, such as for CSS or JS. It of course needs to be unique. I think using name should be used for form posting.


Add configuration options for db pool max idle and max open

ALMIGHTY_POSTGRES_CONNECTION_MAXIDLE
ALMIGHTY_POSTGRES_CONNECTION_MAXOPEN
A value of -1 triggers default pool behavior.

Codecov Report

Merging #871 into master will decrease coverage by -0.12%.
The diff coverage is 16.66%.

@@            Coverage Diff             @@
##           master     #871      +/-   ##
==========================================
- Coverage   70.36%   70.24%   -0.12%
==========================================
  Files          78       78
  Lines        5514     5526      +12
==========================================
+ Hits         3880     3882       +2
- Misses       1264     1274      +10
  Partials      370      370

Impacted Files
Coverage Δ

main.go
0% <ø> (ø)
:white_check_mark:

configuration/configuration.go
79.1% <33.33%> (-2.15%)
:x:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b233471...33b8af1. Read the comment docs.


Search by wildcard in name

Current cloudflare-go version
0.30.0
Description
Sometimes it is necessary to filter many results, e.g. in case of a script error there are several hundred results to remove: "_acme-challenge.zzz.yyy".
You cannot currently use an asterisk in a query, e.g:
flarectl dns list --zone="xxx.yy" --type="TXT" --name "_acme-challenge.*"
  ID | TYPE | NAME | CONTENT | PROXIED | TTL
-----+------+------+---------+---------+------

And the full search works.
Use cases
While we need to find specific record.
Potential cloudflare-go usage
flarectl dns list --zone="xxx.yyy" --type="TXT" --name "_acme-challenge.*"

References
No response

thanks for the issue however, at this time we have no plans to extend flarectl. this may change in the future but nothing is planned.


Zipkin 2.24.3 not support Elasticsearch8. x

Hello, I'm currently using Elasticsearch 8.x, and when consuming Kafka and writing to Elasticsearch with Zipkin 2.24.3, I encounter an error indicating that it does not support versions 7 and above.

Zipkin v2 backend doesn't support that.
We are working on Zipkin v3 server, which should be able to bring Elasticseach8 on the support list.

added next steps to #3468 as I am on holiday for a bit I cannot finish this now. I ended up needing a lot of time to address lack of maintenance on all projects including brave. In any case, this issue is a dupe

zipkin 2.26.0 includes ES 8.x support


Add global constants to distinguish current ENV

Now idea is check package.json
If have vue then set __DVAN_ENV__ = 'vue', cannot set VUE_ENV because vue-ssr using it(If I still remember).
If have React then set __DVAN_ENV__ = 'react'

Maybe this way is better: If have vue then set __DVAN_ENV__ to vue, react in otherwise.

Actually use __DVAN_ENV__: string in Client-Side, also have __IS_VUE__: boolean


Update alpine to 3.8

For https://github.com/giantswarm/giantswarm/issues/4197

@MarcelMue Can you tell me where this is running?

AFAIK it is used in in chart-operator e2e for sure. Uncertain if it is also used in guest clusters but I don't think so.

I can't test this. Who can I assign this to for testing?

As you can see in this project, your PR is the first one. There has only one person worked on this. I highly doubt anyone can really test this.
You can either close here, just merge and see if something breaks. Not sure how to progress otherwise.

I see we did a great job with knowledge transfer ;-)


TextField's autoFocus doesn't work properly

Describe the bug
autoFocus prop in TextField component doesn't really work
Expected behavior
when autoFocus is on,  the input element should be focused on mount
Desktop (please complete the following information):

Browser chrome
Version 107

Closing the issue due to the project being archived.


Bump imgtool to 1.6.0rc1.post1

Some earlier experiments with auto-pushing to PyPi in travis resulted in
1.6.0rc1 already being uploaded to PyPi.  Create a post1 release from
this to capture the current version.
Signed-off-by: David Brown<EMAIL_ADDRESS>

This code is identical to rc1. I'll close this and we can test for rc2.


Update import to nested path

This is the module location as of https://github.com/huggingface/diffusers/tags 0.12.0 - released a few hours ago
--
Thank you for your interest in contributing to Core ML Stable Diffusion! Please review CONTRIBUTING.md first. If you would like to proceed with making a pull request, please indicate your agreement to the terms outlined in CONTRIBUTING.md by checking the box below. If not, please go ahead and fork this repo and make your updates.
We appreciate your interest in the project!
Do not erase the below when submitting your pull request:
#########

[x] I agree to the terms outlined in CONTRIBUTING.md

Thank you both!


#766 fix missing msbuild error code output

MSBuild error wasn't written to console for some reason. Restore task fails and no section is available yet for parsing. Is it acceptable solution?

If there was an issue with restore, we log to the output at the Debug level here: https://github.com/dotnet/tye/blob/1b5275a76a548deb56abbaa2aa049ac1a82467f0/src/Microsoft.Tye.Core/ApplicationFactory.cs#L540-L545. The reason is that in some cases, a restore failure doesn't prevent us from continuing with the command so we only log if you set the log level to debug.

I wonder if we should log that restore errored without all the details at the default level and include the details at Debug instead.

@JunTaoLuo could you either close or merge this PR?

@JunTaoLuo could you either close or merge this PR?

We don't want to throw an error here. Closing.

We don't want to throw an error here. Closing.


FIrefox browser extension

have gotten extension approval 🚀
https://addons.mozilla.org/en-GB/firefox/addon/satcom-internet-s-social-layer/versions/
but talking to relay isnt working. need investigate.

Lmk if you need help testing


Implement git hooks to create markdowns and notebooks

Also test if the notebooks can be automatically executed.

Would we like this to be:

a pre-commit hook that generates notebooks and markdown files before committing?
a github action that generates and commits to the repo the notebooks and markdown files?

Also, is the check of notebooks running necessary? Maybe we can check that examples/*.jl run without problems.

I prefer pre-commits as having tons of auto generated commits after pushing I think interferes more with our workflow. If you push some changes, then make some more commits and push again, you may get conflicts if in the mean time there has been an automatic commit.
In my other projects I am using precommit for formatting. In case you are not all familiar, the way this works is that every time you try to commit something, it checks the formatting and if anything is wrong, it makes the changes automatically but doesn't stage or commit them. So in practice instead of just committing, you'll have to commit, stage again after automatic changes, and commit again.
I can set that up here for the formatting, and then also add the generation of the notebooks, that only takes like a second.
The only danger I see with this is that if you make changes to a notebook rather than the code that generates it, it will get overwritten.

pre-commits sounds awesome!
Also, I don't think it is a problem if the markdown or the notebook gets overwritten.
My question is instead the following: does it make sense to have notebooks that are not executed while we also have markdown files? Maybe for now we can avoid executing them and think about this later, when we build a better documentation.

You mean because the main advantage of aa notebook over markdown is that it would have all the results displayed when it's been run? Makes sense. Running them would be quite expensive though. I agree let's worry about that later.


Bump docker maven plugin version and allow to use external properties

Allow docker maven plugin external properties to override default or ones specified in pom.xml. Also bump docker maven plugin to avoid bug related to multiple images one pom file.
https://issues.redhat.com/browse/DBZ-5657
https://issues.redhat.com/browse/DBZ-5658

@vjuranek Applied, thanks


Prefix strategy 404 error on initial load (static)

Version
nuxt-i18n: 6.13.1
nuxt: 2.13.3
Nuxt configuration
mode:

[x] universal with static render

Nuxt-i18n configuration
i18n: {
    strategy: 'prefix'
}

With target: "static" in nuxt.config.js
Reproduction Link

CodeSandbox: https://codesandbox.io/s/nuxt-nuxt-i18n-base-template-8boev?file=/nuxt.config.js:123-143
Another Demo: https://present-feet.surge.sh
Github: https://github.com/divine/i18nuxt-redirect-bug-master
Steps to reproduce
Change strategy to prefix and target to static.
What is Expected?
Index page after that it should redirect to detected language prefix.
What is actually happening?
Initial load shows 404 error after that redirection happens.
Similar issues are https://github.com/nuxt-community/i18n-module/issues/700 ,  https://github.com/nuxt-community/i18n-module/issues/677 https://github.com/nuxt-community/i18n-module/issues/491.

@rchl

Note that next version of Nuxt will do some command renaming again (deprecate the export command) so might be better to wait for that before taking a look

In my opinion it has nothing to do with the export command (see codesanbox or github repo) and I don't think that waiting might help, if there is an issue that might need a fix upstream (nuxtjs) it's better to report it now.
Thanks!

Created fix at #808
While making it, I was wondering if it's even correct/necessary for me to do that since Nuxt generates the fallback route (200.html) itself and it should be possible to set that route as 404-handler on any hosting.

Released in v6.13.2

hi @rchl
I made use of #808 and noticed that routes are generated for every static route (corresponding .vue file in pages/) but not for dynamic routes. For dynamic routes only the prefixed variants are generated. Do you want me to provide a reproduction repo and/or to open a new issue for this?

Yes, a new issue would be preferred.
But I'm still not sure whether that whole "generate fallback routes" business makes sense even. Did anyone of you try using the generated 200.html as a fallback instead? I suppose hosting services support hooking up a custom path to a 404 handler. Another benefit of that would be that actual 404 handling would be better.

For example, for Netlify see https://nuxtjs.org/faq/netlify-deployment/
Setting:
  generate: {
    fallback: true
  },

will generate 404.html file which Netlify will automatically use on visiting a route that doesn't exist. And I would assume that then i18n would redirect to an existing route if one exists.

okay, will do so...
well, I set the 200.html (or 404.html in my case) as ErrorDocument, so on any not found route the webserver returns the general fallback with status code 404. Therefore I think it makes sense to have those routes generated so they are served with status code 200. (And in case of mode: universal, target: static it also means that those routes are even displayed on a browser without / with disabled javascript as they are rendered directly as html/css whereas the generic fallback always needs js to be executed)

@violoncelloCH yeah, that  was the main issue I was having.
Hosting services returns 404 error code after that  redirection happens not something that makes sense for main path route.

Yes, a new issue would be preferred.

#822

@violoncelloCH yeah, that was the main issue I was having.
Hosting services returns 404 error code after that redirection happens not something that makes sense for main path route.

exactly... on Apache/Nginx one could generate some fancy redirection rules which would try to redirect every non-prefixed route to it's (default) prefixed variant and try if this one is found before returning a 404, but this gets quickly quite complicated. Also, I've no idea if redirects like this are even possible on Netlify and the likes...

@violoncelloCH Did you find a way to make this work using Nginx?

Still not fixed in 2024.

Still not fixed in 2024.

the issue is not here with:
"nuxt": "3.11.2"
and
"@nuxt/kit": "3.11.2"
I don't know why


Water and cliffs spill over into out-of-bounds

I'm not sure how meaningful this is, but...

Occurs with ribbon worlds too, where it's a lot more noticeable
There's no real solution for the water shader spilling but the cliffs could probably be removed if they generate onto out-of-map?


libgme references gcc-unwrapped

Describe the bug
libgme references gcc-unwrapped. I can't figure out yet why.
To Reproduce
nix why-depends nixpkgs.libgme nixpkgs.gcc-unwrapped

Expected behavior
No gcc reference.
Additional context
libgme is a dependency of gst-plugins-bad which is a common dependency for many applications.
Notify maintainers
@lheckemann
Metadata

system: "x86_64-linux"
host os: Linux 5.6.13, NixOS, 20.09pre226148.0f5ce2fac0c (Nightingale)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.3.4
channels(root): "nixos-20.09pre226148.0f5ce2fac0c"
channels(doron): ""
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute: libgme
# a list of nixos modules affected by the problem
module:

GitHub doesn't automatically close issues with PRs that had Fix #this?

It does usually, not sure what went wrong here.


How to control remote device volume with hardware buttons on remote playback?

Hi there,
I set up the media router menu item to support Google Cast in my app as follows.
menu.add(titleResId).also {
  it.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM)
  MenuItemCompat.setActionProvider(it, MediaRouteActionProvider(context))
  CastButtonFactory.setUpMediaRouteButton(context, menu, it.itemId)
}

Previously, with Media Session Compat APIs, I used MediaSessionCompat#setPlaybackToRemote() to control the remote device volume with hardware buttons. But with the latest Media 3 APIs, I couldn't find a suitable alternative. How do I achieve this?

Resolved by https://github.com/google/ExoPlayer/issues/10471#issuecomment-1510869336!

@ashutoshgngwr
I wonder, did you get the native volume bar to show up? I have added COMMAND_GET_DEVICE_VOLUME, COMMAND_SET_DEVICE_VOLUME and COMMAND_ADJUST_DEVICE_VOLUME commands, and when I use the hardware buttons the correct methods are called, but I don't get the native volume UI yet..

@tzugen Yes, the hardware buttons work correctly, but there were a lot of boundary conditions, e.g., the player must be in the playing state, and the player must propagate volume changes to the remote device and vice versa.
My full implementation is wrapped in this class, and this commit introduced changes necessary for remote device volume management. Please feel free to use these as references!

@ashutoshgngwr
Thanks! Though I am not sure if you read my question how i meant...
The logic I have implemented but I would like to get the native UI, like this:

Do ave this working?

Ah, I thought you were referring to the slider that appears with the cast icon on pressing the volume rocker. If I understand you correctly now, in your case, your player doesn't need to handle COMMAND_GET_DEVICE_VOLUME, COMMAND_SET_DEVICE_VOLUME and COMMAND_ADJUST_DEVICE_VOLUME. If you add these commands to its state builder, Media 3 will expect the player instance to adjust the device volume and the player state based on these callbacks. However, if you do not intercept these commands, Media 3 will fall back to the default behaviour, and you should see the slider on pressing the volume rocker.

OK thanks a lot :)
Could you show a screenshot of how this slider with the castIcon looks?

Ah, it was some other place in my code which was blocking it. Got it working now, thanks!


Data fetching & virtualization

Hello there,
first of all, let me say that I really enjoy working with this library, especially its focus on a11y is appreciated! Now, after working with uncontrolled tree data, I wondered if anyone has managed the tree data using a controlled environment powered by data fetching libraries like react-query?
Also I wondered if it's suitable for virtualization (as this works best with flat lists which does not work well with a11y and semantic tree structures, like nested lists etc) .. ?
// Edit: I just found #263 and your new library, nevermind .. 😞
I'm grateful for any pointers or documentation you might be able to provide!
Cheers
CHE1RON

Thanks for your appreciation! For your question regarding managing tree data with fetching libraries, I can't provide examples with that, but the use case should also work wikth uncontrolled environments which might be a bit easier to start with. I expanded the docs on static data providers and on custom data providers, maybe the examples there are helpful, the same way how in the docs items are injected, you could also alter the local tree data when something changes in the queried data. Of course it should also work with controlled environments, though you need to do a bit more heavy lifting there.
For your comment on virtualization, yes, that is a bit tricky with the nested tree data, maybe the comments in the thread you found can help. And yes, once Headless Tree is production ready, that would fill the same use case as RCT but with some additional capabilities and support for virtualization.

@lukasbach I am eagerly waiting for headless-tree. Any CTA for it? Really appreciate roadmap clarity on it. Thanks for all your amazing OSS work.

Hey @Nishchit14, sorry for being silent on that topic and not bringing a lot of progress to that library. I had lots of topics on my mind the last few months, and wasn't really able to do much progress. I can't provide a specific timeline at the moment, but do plan to pick the remaining topics up soon and get a version suitable for production out during this summer.

Hey, kind of curious as to why the react-complex-tree isn't supportive of virtualization.

@max-dirac Well, we're still waiting for your PR 😛

I've done some investigation and the technique for virtualization as I'm aware would require that the tree be stored in a flat list as opposed to a nested object. I've implemented this at my company as a fully custom tree library with a dependency on tanstack virtualize. I know @lukasbach is attempting to address this with his new project. Virtualization according to my understanding of react-complex-tree and my knowledge of implementation techniques would likely require a hefty architectural change to its core data structure.


Undefined variable

At line 43 of rawlist.py there is a reference to key: as there's no examples of passing a plain string as a choice, I could not figure out a reasonable fix, or make sense of the following key += 1 instruction.

just to make sure... you refer to a fix but there is no problem related to this? -> so I gave the question label.
from examples/rawlist.py
    {
        'type': 'rawlist',
        'name': 'theme',
        'message': 'What do you want to do?',
        'choices': [
            'Order a pizza',
            'Make a reservation',
            Separator(),
            'Ask opening hours',
            'Talk to the receptionist'
        ]
    },

rawlist uses index numbers to select a choice. Seperators() would make a gap in the numbering so we keep track (with key). key += 1 only for choices (basestrings)
$ python examples/rawlist.py
```

My bad, you're right, who knows what I was thinking, sorry for the noise 😃

Ah, I found the glitch: the problem is actually in expand.py, not rawlist.py!

now I see, looks like you are right. this is probably a c&p "leftover". Does not look very disturbing but also not very reassuring. Let me take another look with a fresh eye tomorrow. I probably just remove it and see what happens. Thank you for your useful input!

fixed with https://github.com/finklabs/whaaaaat/commit/1e682bc772c56f541b6c41f8a7ae3aeb14a87651

What does it mean when an item in the incoming choices is a plain string, and when can it happen? I ask because I still see the chance that this line being executed before key is assigned...


document the Scope struct

I see that a pull request for #233 was not accepted. So, added the details for the issue as required.

Thanks!


New Material and New Translations

I'd like to document the recent changes I've made to learnOSM content and list a few things that are still needed:
First, what I've changed:

In the Beginner Guide, there is now an additional chapter named "More about JOSM."  This chapter includes some of the original material from the "Editing in JOSM" chapter and some new material.  I thought it was important to give some grounding in JOSM editing before going into Field Papers and GPS.  The "Editing in JOSM" chapter remains, but is now covering just some more advanced JOSM stuff.
I've done some general content edits to all of the Beginner Guide chapters - nothing very major, but updates to account for changes, new images where necessary.
  Images are in images/en/beginner/... and divided by folder.  There is still some discussion on this but for sure each language will have its own images folder.  I've made all images in the markdown documents into links at the end, rather than inline.
I've reworked the intermediate and advanced chapters into new sections.  The completed sections are a new "Editing" section which has a lot more JOSM tutorials and one on iD, and "Map Design & Sharing," which has the mapbox and tilemill chapters.  There are folders for other sections too, but the chapters are marked as drafts because they need to be revised still.

So what's next?:

First, we should shout out to interested translators about the new material.  The Beginner Guide translations should be updated (especially switching to Field Papers), and the new guides can use translation too.
I think we should add the English versions into each language on the site where there are no translations, along with a local language message that says, "This chapter has not been translated into [the language]. Here it is in English.  If you'd like to help translate, go here..."
There are still some chapters which need to be revised.  They are in the English folder and the filenames are preceded with "draft."  I'm not sure I have time to work on them right now, so if someone wants to polish them up we can add them to the site as well.

ideas on how we could quickly add the English version to areas that aren't translated

We could use layouts :wink:
See #252 and #306

Closing this now as I think all matters are resolved.