Provide an OpenStreetMap-based alternative to Google Maps

This adds an OSM-based map as an alternative to Google Maps to the contact widget. It is activated by providing coordinates, but no gmap api key. Currently two tile sets are provided: The stock OSM tiles which are subject to the OSM tile usage policy and tiles provided by Mapbox which are based off OSM data as well, but require an api key. The latter is useful for high traffic sites that may violate the OSM tile usage policy.

Thanks for the feedback! I hopefully addressed all your requested changes.

Map section of config.toml updated to:
  # Enable/disable map in Contact widget.
  # To show your address on a map in the contact widget, you need to enter your latitude, longitude and choose
  # a map provider below.
  # To use Google Maps, set `map = 1` and enter your API key that can be obtained here:
  #   https://developers.google.com/maps/documentation/javascript/get-api-key
  # To use OpenStreetMap tiles, set `map = 2`.
  # To use OpenStreetMap on a high traffic site, set `map = 3` and enter your API key that can be obtained here:
  #   https://www.mapbox.com/studio/account/tokens
  # To get your coordinates, right-click on Google Maps and choose "What's here?". The coords will show up at the bottom.
  #
  # Map provider:
  #   0: No map
  #   1: Google Maps
  #   2: OpenStreetMap (Mapnik)
  #   3: OpenStreetMap (Mapbox)
  map = 0
  map_api_key = ""
  latitude = "37.4275"
  longitude = "-122.1697"
  zoom = 15

Thanks for your contribution @Athemis :)


needed to allow pickers to be displayed in popups using javascript by…

… exposing openOnInput. Also prevented event bubbling, so other elements may open the picker on click without triggering HTML click
I noticed there was a problem calling app.picker.open() if my picker's input is inside of a popup, but worked fine when clicking the input itself (all that is missing is the overlay, but that is not a problem). I added the openOnInput method to the picker so that the animation and correct positioning can happen through javascript. I also added e.stopPropagation, so that another element, such as an icon, can receive a click event and delegate handling the event to the picker without triggering HTML click (which closes the picker).
This is a workaround, but a question I had while writing this was why onInputOpen and picker.open were two separate methods?
Thanks,
Lawrence

Hmm, interesting. Can you guide me a bit how to replicate the issue?

I believe that my problem is similar.
This code doesn't work:
$$('#my-button').on('click', function () {

    var pickerDevice = myApp.picker({
        input: '#selected-device',
        cols: [
            {
                textAlign: 'center',
                values: ['iPhone 4', 'iPhone 4S', 'iPhone 5']
            }
        ]
    });
    pickerDevice.open();

});

Only clicking on input tag can open picker. What is interesting is that, clicking #my-button add picker to DOM, but picker is not visible. And more interesting is that on big screen (iPad) it opens it as popover, but as i mentioned earlier, in iPhone it is invisible.

@lbaker2 could you please address @nolimits4web 's request and clear up the merge conflicts please?

It's been a long time since I've looked at any of this, but I'll do my best to explain what was happening. I don't know how/where to view the merge conflicts and my suggestion is not to accept this pull request, but consider it as acknowledgement of an underlying issue and reason to refactor this part of the Framework7 Picker code (mainly point 1 below).
There were two objectives
1) I wanted to open a picker by clicking a label or icon.
My initial attempt looked similar to @fox000 's example, as the docs state picker.open() opens the picker. This revealed that picker.open() did not handle adding padding to the parent container and scrolling to the input. Again, @fox000 mentioned this behavior. This is why I exposed openOnInput on the app.picker component. By calling picker.openOnInput directly I got all the styling and was happy.
Example
var picker = app.picker({
      input: '#picker-device'
      //...
    });

//...

// - hacky, but shows our picker when superduper icon is clicked
$$('.superduper-icon').on('click', function(){ picker.openOnInput(); }

// - picker is off screen :(
$$('.superduper-icon').on('click', function(){ picker.open(); }

// - alternative without my changes for fox000 to try
// - relies on knowledge of undocumented property 'picker.input' which is a Dom7 object.
// - picker.input is derived from $(picker.params.input)
$$('.superduper-icon').on('click', function(){ picker.input.trigger('click'); }

Taking a glance at what is on the master branch currently, I believe the original behavior I described is still happening. openOnInput is only called via a click event handler bound the picker's input (picker.js:494).
Lingering Question
In my original comment I asked why onOpenInput and picker.open are two separate methods. This is really asking, when would we want to open (render) the picker without adding any of the styling to make it display properly?
2) I wanted to show the picker from within a popup
Clicking a picker's input from within a popup could not find the popup to calculate the correct padding to add. This was fixed by add an additional selector to openOnInput when determining new styles to display the picker within the user's view.

@nolimits4web any thoughts?

I experienced the same issues with the datepicker on a hidden input field.

It is fixed in v2

I know it does not belong here, but: great work, what you have done for v2! It seems you have fixed all the issues I had with v1 (app layout, components,..). I hope to see some v2-docs soon!


Memos crashes on Loongson browser

Describe the bug
When I open memes on the Loongson browser, the following error occurs:

Unexpected Application Error!
window.parse is not a function
TypeError: window.parse is not a function
at q3 (http://memos.lmark.cc/assets/index-C-TcBniU.js:354:10589)
at Xh (http://memos.lmark.cc/assets/index-DfuI4x39.js:75:21707)
at dj (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:3491)
at cj (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:2624)
at aj (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:2093)
at Wk (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:52182)
at Vk (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:43777)
at Uk (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:43700)
at Jk (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:43542)
at Ok (http://memos.lmark.cc/assets/index-DfuI4x39.js:77:39552)

Steps to reproduce
1.Open memories in Loongson browser
The version of Memos you're using
0.20.0
Screenshots or additional context
No response

Sorry, we don't have resources to support non-mainstream browsers. Maybe you should use the following recommended browsers: https://developer.mozilla.org/en-US/docs/WebAssembly/JavaScript_interface#browser_compatibility


How to mock Http requests in Protractor tests

Hi,
I'd like to mock the response from an API in my end to end tests but I'm not sure how to include and use MockBackend in the project.
Can you offer any advice?
Cheers,

This is how I do it in my tests:
beforeEachProviders(() => [
        HTTP_PROVIDERS,
        provide(XHRBackend, { useClass: MockBackend })
    ]);

it("should return items", inject([XHRBackend], fakeAsync((mockBackend) => {

            const firstItem = {
                "ItemType": 0,
                "ImageUri": "~/test/_DSC4464_DxO.jpg",
                "ModifiedDate": null, "Name": "_DSC4464_DxO.jpg",
                "OrderIdx": 1, "Path": "~/test/_DSC4464_DxO.jpg",
                "ThumbUri": "http://localhost:49413/Content/images/uploads/test/_thumbs/_DSC4464_DxO_200_200_133_200.jpg"
            };
            const secondItem = {
                "ItemType": 0,
                "ImageUri": "~/test/_DSC4469_DxO.jpg",
                "ModifiedDate": null, "Name": "_DSC4469_DxO.jpg",
                "OrderIdx": 2, "Path": "~/test/_DSC4469_DxO.jpg",
                "ThumbUri": "http://localhost:49413/Content/images/uploads/test/_thumbs/_DSC4469_DxO_200_200_200_133.jpg"
            };
            // first we register a mock response - when a connection
            // comes in, we will respond by giving it an array of (one)
            // blog entries
            mockBackend.connections.subscribe(
                (connection: MockConnection) => {
                    connection.mockRespond(new Response(
                        new ResponseOptions({
                            body: [
                                firstItem,
                                secondItem
                            ]
                        }
                        )));
                });

            let called = false;
            // with our mock response configured, we now can
            // ask the blog service to get our blog entries
            // and then test them
            dirItemsSrv.getItems$("~/").subscribe((dirItems: Array<DirItem>) => {
                expect(dirItems.length).toBe(2);
...
                called = true;
            });
            expect(called).toBe(true);
        })));

Thanks @alvipeo I'm trying it now, just struggling to get my dataService (your dirItemSrv) into the test.  I'll keep trying and let you know how I get on.

hi @daddywoodland @alvipeo
Just to make some things clear ( perhaps also for other visitors in the future ), you are not doing E2E tests. You're unit testing a service where you are mocking out your dependencies ( in this case the XHRBackend service )

Hi @samvloeberghs,
The terminology does trigger some interesting conversations.
As you say it's a unit test but not of a service, I'm testing a unit of behaviour within my UI (port level testing).
Protractor is my mechanism for accessing the closed system to test a behaviour, and since Protractor is always labelled as an end to end testing tool, I mistakenly used the term.
Either way, I'm after a Protractor, not Karma solution to this problem :o)
Cheers,

I actually do integration tests, not unit tests (well, rarely I do them too). That's the way that works best for me. So Karma is in my case.

I've been looking at this on and off for the last few days without making much progress.  I think the technique suggested above (and everywhere else on t'internet) involves configuring the injection before the component/service is initialised.  However as protractor is running tests against an app that's already running it's not working.
I'm going to look at initialising the application with the mock backend in place so that I can configure mocked responses on a test by test basis.

In the past I've done this by mocking my backend with a node-red implementation. By setting a flag that was then triggering the initialisation of this mocked API and redirecting/proxying the API address to that mocked API.
But that said: When doing E2E test you should keep the mocking to the minimum, trying to avoid it completely. E2E testing explicitly means that you test end to end, real app till real backend.
If you don't want to polute your production DB for example, you should have a staging or dev server running next to your UAT or prod environment, where you test against regressions.

To elaborate on your last comment: It's indeed hard and probably unneeded to change the app implementation on runtime. What you could do is change the environment. While running your protractor config, proxy the requests and point them to the mocked API
-> call to http://real.api.com, going trough proxy, proxy it trough http://mocked.api.com

Thanks @samvloeberghs I'll take that into account when trying out mocking the HTTP response.  I was looking at json-server as a possible solution for mocking the API.
Regarding the reference to 'E2E', these aren't end to end tests but unit tests of the behaviour of the front end as a closed component.  I've seen it called 'port level testing', 'sociable unit tests' and 'behavioural unit testing'.
Ultimately I need to mock any requests that move across the boundary of my component, in this case calls the the API.
If you're unfamiliar and are interested in the idea, the approach was triggered from a talk by Ian Cooper I saw a couple of years ago.  I didn't see this one at NDC 2013 but it's the same presentation I believe.
Cheers!

sorry this may sound super rule but I'm closing long standing issues and refactoring the codebase. If you run into this problem again feel free to open another issue


@click don't work well in UC browser

env:
UC browser   android
webpage:
http://zh.nuxtjs.org
error:
click event is not work for the navigation on the top right corner

Hi. I think the problem is with js incompatibility of older browsers like UC. We have introduced some out-of-the box improvements for next release. Hope it will help, else you need adding bable-polyfill in your project for more browsers compatibility.

Same problem...

@pi0 may i ask when the next version will publish? and how to config the babel-polyfill? thx!

UC browser not support es6
  nuxt.config.js
  extend(config, { isClient }) {
      config.resolve.alias["~config"] = path.join(__dirname, "service/config");
      if (isClient) {
        config.entry.vendor.push("babel-polyfill");
      }
      return config;
    },

@SzHeJason The way I used and got an error.
nuxt:build Generating files... +16ms
nuxt:build Generating routes... +7ms
nuxt:build Adding webpack middleware... +61ms
(node:5648) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): ReferenceError: path is not defined

Please use something link this:
  extend(config, { isClient }) {
      if (isClient) {
        config.entry.vendor. unshift(lbabel-polyfill');
      }
    },

@pi0 It still don't work...

@pi0 It still doesn't work...

same problem, not work even added babel-polyfill

don't worry. it just doesn't work in the local environment

@SzHeJason Thx


[DO-469] No package configurations requested for DOS

Refer to http://<IP_ADDRESS>:8080/job/ORT/122/execution/node/296/log/?consoleFull
When searching with keywords "Unable to find package configuration for" and "Found package configuration for", there are no references to dos-monorepo itself, which means package configurations for dos-monorepo are never requested from DOS backend when evaluating.
This can be seen when doing clearances for dos-monorepo: they have no effect whatsoever on rule violations coming from the repository.
From SyncLinear.com | DO-469

Agreed, I have noticed we have not been able to configure DOS itself for ORT for a long while now, I've seen this from far back.

That's not DOS, you are referring to the other issue I wrote yesterday.

Updating .ort.yml should resolve this.


Build pytorch from source?

This template  by @veritas9872 lets you build pytorch from source in a Docker image. They claim that torch is a lot faster when built from source because of optimizations the compiler can make for your specific hardware. Would be an interesting feature for cog for people who didn't mind long build times / for a production image.

The latest version of the project has much faster build times :)


Hostname Mismatch and SNI

I'm connecting to a server that uses SNI. As a result, I'm randomly seeing hostname mismatch errors. When connecting to the server using cURL/openssl with the hostname specified though, the correct certificate is always returned.
I know VERIFY_NONE works but that also introduces serious vulnerabilities that I'd like to avoid.
Is there a workaround for specifying the hostname as an argument for a new instance of Mechanize? I've posted a question on StackOverflow as well: http://stackoverflow.com/questions/38426727/mechanize-hostname-matching

It looks like HTTP Persistent enables a way to pass in the hostname here: https://github.com/drbrain/net-http-persistent/blob/master/lib/net/http/persistent/ssl_reuse.rb So if Mechanize enabled a hostname attribute to be defined, in theory this would be resolved.

What version of OpenSSL are you using?  It looks like OpenSSL::SSL::SSLSocket#hostname= is available if OpenSSL is configured with --enable-tlsext, which was added in OpenSSL 0.9.8f and made default in 0.9.8j.

I'm using OpenSSL 1.0.1f 6 Jan 2014. Upon further investigation, I've found that the server I'm scraping has a self-signed root certificate in addition to it's other valid certificates . Would this cause intermittent failures @knu?

I'm not sure as I have no idea what exactly is the error you are seeing.
In addition to some error backtrace, a code snippet for reproduction would really be nice.

I don't have access to the error at the moment, but I know it included hostname does not match the certificate and it occurs intermittently.
Here's the code snippet:
agent = Mechanize.new
agent.user_agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11"
agent.verify_mode = OpenSSL::SSL::VERIFY_PEER

page = agent.get "https://www.nslds.ed.gov/npas/index.htm"

Using ruby "2.2.3" with gem "mechanize", ">= 2.7.4"


"The specified CGI application encountered an error and the server terminated the process."

I'm getting the error "The specified CGI application encountered an error and the server terminated the process." when trying to copy a large playlist.

+1

+1 could only handle 170ish videos, (trying to copy and liked playlist with 1200 videos in it) (using the website)

Got this error too. Trying to copy my liked playlist into an archive playlist since I hit the 5000 liked video cap for the liked video playlist. Only managed just under 1,300 before crashing.


[WIP] Document the allowEmpty option for ReferenceField

What's left for RFR?

https://github.com/marmelab/admin-on-rest/pull/873

It's also related to #953.


Update Settings page

Issue type
enhancement
Which version of the app?
WinUI 3 Gallery
Description
Rationale
We want the WinUI Gallery to be a showcase of the Windows 11 design language. W11 Settings and most of the inbox applications moved to a new cards based system.
Proposal
Use the SettingsCard and SettingsExpander (from Community Labs) and update the UI. Should be an easy tweak :).
https://devblogs.microsoft.com/ifdef-windows/windows-community-toolkit-labs-experiments-are-here/#settingscard-and-settingsexpander

Screenshots
No response
Windows version
No response
Additional context
No response

@gregwoo-microsoft @bpulliam Do we want to add a depdendency for this, especially in case we might want to use more from the labs?

Thanks for pointing it out @niels9001. I think that this is a great idea + sets the path to have more integration w/ the labs. @chingucoding any thoughts?

I think thats fine. if we achieve even greater design with this, sure lets do that!

@chingucoding @bpulliam
When adding the Toolkit Labs package I get the following error when running WinUIGallery.DesktopWap.Package:

Call stack:
Any idea what's going on?

Hi I looked into my packages in .nuget (C:\Users\USERNAME.nuget\packages\microsoft.ui.xaml), and there were 2 version, when I deleted the older one It worked for me

@ShakedGold That didn't work for me 😣.. We were able to reproduce this though, and are tracking the issue in our repo: https://github.com/CommunityToolkit/Labs-Windows/issues/262#issuecomment-1377678778

Related: https://github.com/microsoft/WinUI-Gallery/issues/834


[Angular] Error: Failed to construct 'Worker': Script at<EMAIL_ADDRESS>

Describe the bug
[Angular] Encountering the following error in an angular application while the app is locally served(npm serve) -
Error: Failed to construct 'Worker': Script at<EMAIL_ADDRESS>To Reproduce

Follow the Getting Started instructions exactly -
Installation
Usage

Expected behavior
FFmpeg should be loaded correctly
Screenshots

Desktop (please complete the following information):

OS: Mac OS
Browser chromium
Version: latest

Additional Information:
Also, if we can have a small example added for Angular in the examples section then it will be really great. Thanks!

Similar issue here. It appears that @ffmpeg/ffmpeg must be imported from the same domain as the user's script. I am trying to import it from unpkg in a plain simple html+js page, not a single thing will make it work.
So it looks to me like this is not an Angular issue. Although for me the error is about dist/umd/814.ffmpeg.js rather than dist/esm/worker.js:
DOMException: Failed to construct 'Worker': Script at<EMAIL_ADDRESS>cannot be accessed from origin 'http://localhost:8000'.

If i merely download the contents of @ffmpeg/ffmpeg and serve them myself, then it works properly, even importing util, core and core-mt from unpkg.  So unpkg will NOT work AT ALL...

@Willy-JL
Same issue using with Blazor WASM, but hosting from unpkg does work after a simple patch (very similar to pull #562)
I am able to use unpkg as the host for all of the ffmpeg files (umd version) using Blob and URL.createObjectURL. But I do have to modify the ffmpeg.js code slightly to do it. In fact, that line you mentioned is the part I have to modify so that I can specify the URL that the worker is created with in the config passed to ffmpeg.load. The code patch can easily be done on the fly before creating the Blob using a single text replacement. If pull #562 gets merged, or at least a similar fix enabled, I won't need to modify ffmpeg.js at all and neither will others with similar issues like yours.

In the umd version of ffmpeg.js change
new Worker(new URL(e.p+e.u(814),e.b),{type:void 0})
to
new Worker(r.worker814URL,{type:void 0}).

Once it is patched you can create a BlobURL of it and then call import on that BlobURL.

Then create a BlobURL of 814.ffmpeg.js and add it to the config you send to ffmpeg.load as the property worker814URL.

No extra headers are needed from the unpkg site to use the ffmpeg files directly from them. Your server hosting your html file does need additional headers if you wish to use multithreading due to the requirements of SharedArrayBuffer. SharedArrayBuffer on MDN. I have tested the multithreaded version also using unpkg as the ffmpeg cdn and it works well.
If you think patch #562, which allows the path for the primary worker to be set via the config sent to ffmpeg.load may help resolve your issue also please go give it a thumbs up.

Working code example that does on the fly patching of ffmpeg.js and uses unpkg for all ffmpeg.wasm files.
index.html

        <video autoplay muted id="video-result" controls></video>

        <button disabled id="load-button">Load ffmpeg-core (~31 MB)</button>

        <button disabled id="transcode-button">Transcode webm to mp4</button>

Open Developer Tools (Ctrl+Shift+I) to View Logs

index.js
"use strict";

let loaded = false;
let ffmpeg = null;
var loadBtn = null;
var transcodeBtn = null;
var logDiv = null;
var videoEl = null;

const toBlobURLPatched = async (url, mimeType, patcher) => {
    var resp = await fetch(url);
    var body = await resp.text();
    if (patcher) body = patcher(body);
    var blob = new Blob([body], { type: mimeType });
    return URL.createObjectURL(blob);
};

const toBlobURL = async (url, mimeType,) => {
    var resp = await fetch(url);
    var body = await resp.blob();
    var blob = new Blob([body], { type: mimeType });
    return URL.createObjectURL(blob);
};

const fetchFile = async (url) => {
    var resp = await fetch(url);
    var buffer = await resp.arrayBuffer();
    return new Uint8Array(buffer);
};

const load = async () => {
    loadBtn.setAttribute('disabled', true);
    const baseURLFFMPEG = 'https://unpkg.com/<EMAIL_ADDRESS>    const ffmpegBlobURL = await toBlobURLPatched(`${baseURLFFMPEG}/ffmpeg.js`, 'text/javascript', (js) => {
        return js.replace('new URL(e.p+e.u(814),e.b)', 'r.worker814URL');
    });
    const baseURLCore = 'https://unpkg.com/<EMAIL_ADDRESS>    const config = {
        worker814URL: await toBlobURL(`${baseURLFFMPEG}/814.ffmpeg.js`, 'text/javascript'),
        coreURL: await toBlobURL(`${baseURLCore}/ffmpeg-core.js`, 'text/javascript'),
        wasmURL: await toBlobURL(`${baseURLCore}/ffmpeg-core.wasm`, 'application/wasm'),
    };
    await import(ffmpegBlobURL);
    ffmpeg = new FFmpegWASM.FFmpeg();
    ffmpeg.on('log', ({ message }) => {
        logDiv.innerHTML = message;
        console.log(message);
    });
    await ffmpeg.load(config);
    loaded = true;
    console.log('ffmpeg.load success');
    transcodeBtn.removeAttribute('disabled');
}

const transcode = async () => {
    transcodeBtn.setAttribute('disabled', true);
    await ffmpeg.writeFile('input.webm', await fetchFile('https://raw.githubusercontent.com/ffmpegwasm/testdata/master/Big_Buck_Bunny_180_10s.webm'));
    await ffmpeg.exec(['-i', 'input.webm', 'output.mp4']);
    const data = await ffmpeg.readFile('output.mp4');
    videoEl.src = URL.createObjectURL(new Blob([data.buffer], { type: 'video/mp4' }));
}

addEventListener("load", async (event) => {
    loadBtn = document.querySelector('#load-button');
    loadBtn.addEventListener('click', async () => await load());
    loadBtn.removeAttribute('disabled');
    transcodeBtn = document.querySelector('#transcode-button');
    transcodeBtn.addEventListener('click', async () => await transcode());
    logDiv = document.querySelector('#log-div');
    videoEl = document.querySelector('#video-result');
    console.log('window loaded');
});

In webpack, this issue is still exists. @jeromewu

In webpack, this issue is still exists. @jeromewu

Not sure if this has reference value: https://webpack.docschina.org/guides/asset-modules/#url-assets

Hi. I've described the solution here)
https://www.linkedin.com/pulse/web-based-video-conversion-from-webm-mp4-ffmpegwasm-hladchenko-wfejf/?trackingId=d9wnxEdbS%2FOhd%2Fye5xtGmQ%3D%3D


Request to add Politikoz to the Showcase

Edited the showcase.js and uploaded politikoz.png.
Let me know if you require any further information.
Kind regards,
Politikoz | NFTs on Cardano - The Cardano On-Chain Lottery Game

Here is some info about the project.
We are going to start selling our Politikoz NFT on Sunday, August 1st, 2021 | 2:00 PM UTC.
We have a youtube channel with 2 videos about the pre-sale process and the MarketPlace V1, that will allow everyone to buy or sell a Politikoz inside the website, without Discord, with an automated process.
We already MINTED 10 Politikoz, under policyid: 6f80b47342de4b8d534d4fe59d8995471154ff5b416a9e46723440a4
Check our twitter for more info @politikoznft and feel free to ask anything.
website: politikoz.io

Thank you for participating here. Unfortunately, this pull request needs to be closed because of:

Project has no running product (for example presale)

The project showcase should be a place that someone new to the ecosystem/non-technical can come and see what can be done - it is not a database to list every project out there. (As this can not be achieved with the current UI)


Fix specialization for EmptyType in Array

Codecov Report

Merging #52 (09d6f02) into master (e065515) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #52   +/-   ##
=======================================
  Coverage   82.45%   82.45%
=======================================
  Files          48       48
  Lines        3061     3061
=======================================
  Hits         2524     2524
  Misses        537      537

Flag
Coverage Δ

app_tests
82.45% <ø> (ø)

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

Impacted Files
Coverage Δ

grape/utils/gcontainer.h
83.72% <ø> (ø)


slug is not working for single word

for example
www.example.com/content/about-us
is working
in table slug is "about-us "
www.example.com/content/about
is not working. it shows 404 page
in table slug is "about"

That's clearly a problem in the application code. Yii doesn't handle finding a record by slug.

I have the same problem, I have not yet been able to solve it, I thought about adding a slug manually and then to the single words to add a - at the end, it was so www.example.com/about- but I do not know if it's the result.


[formrecognizer] Update code to language code

Update code to language_code on DocumentLanguage

API changes have been detected in azure-ai-formrecognizer. You can review API changes here
API changes
-     ivar code: str
+     ivar language_code: str

LGTM. The prebuilt-read samples need rename too like here: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/formrecognizer/azure-ai-formrecognizer/samples/v3.2-beta/sample_analyze_read.py#L58

Thanks for the reminder! Fixed it. Also fixed the path issue.


Fixes to is_enabled state changes during runtime

The is_enabled flag is not correctly handled when changed between true and false state during runtime. This fixes the implementation so it is handled correctly.
This PR also fixes a small issue in the example rules.

Test are failing


Copy to clipboard not working on Ubuntu

Hi
On my ubuntu machine the cli_clipboard::set_contents function doesn't copy anything to the copy buffer.
I'm running Ubuntu 22.10 with xfce as my window manager.
This small program reproduces the problem:
use std::{thread, time};
use cli_clipboard;

fn main() {
   let the_string = "Hello, world!";
   cli_clipboard::set_contents(the_string.to_owned()).unwrap();

   let ten_millis = time::Duration::from_millis(100000);
   thread::sleep(ten_millis);
}

A similar program using the clipboard crate doesn't show the same problem:
use std::{thread, time};
use clipboard::ClipboardProvider;
use clipboard::ClipboardContext;

fn main() {
    let mut ctx: ClipboardContext = ClipboardProvider::new().unwrap();

    let the_string = "Hello, world!";

    ctx.set_contents(the_string.to_owned()).unwrap();

    let ten_millis = time::Duration::from_millis(100000);

    thread::sleep(ten_millis);
}

I did a bisect, and the error was introduced by this commit: https://github.com/ActuallyAllie/cli-clipboard/commit/15e39bf
And I guess that it's the upgrade of the x11-clipboard crate that have caused this:
x11-clipboard = "0.3"
x11-clipboard = "0.5.1"

I guess that I have to bisect the x11-clipboard crate now T_T

Did a bisect and opened a bug in x11-clipboard: https://github.com/quininer/x11-clipboard/issues/32

For both this and #17 the issue seems to lie with x11-clipboard.  Using it directly does not resolve the problem.  I looked into it quite a bit tonight and it seems like the options are downgrade x11-clipboard to 0.6.1, find a different x11 clipboard dependency (which it doesn't seem like there is), or handle the x11 clipboard directly with x11rb (possible but looks like a greater undertaking than I currently have time for).
My immediate suggestion would be to use cli-clipboard v0.3.0 which from what I can tell works correctly (it uses x11-clipboard 0.6.1) or switching to https://github.com/1Password/arboard. It seems to work on X11 correctly and is the only cross-platform clipboard library I could find that did not rely on x11-clipboard. I did not test it on windows, macOS, or wayland but it seems to be very actively maintained so is likely your current best bet.


check url scheme is twitter url or not

When project has a lot of scheme types this function can help.

@meteochu thank you for the review. i think I fix them all

LGTM 👍  Thanks for the PR, I'll merge the changes now.


url for file

Description of the new feature/enhancement
I want the terminal to automatically recognize file path hyperlinks, so that when clicked, they can be opened in the file explorer or the default application, for example, /path/to/file. Currently, URLs can already be opened in the browser, such as https://..., but file paths are not yet recognized.

Proposed technical implementation details (optional)

FWIW, the Terminal does recognize the file:// URI scheme:

But yea, I'd call this a /dup #8849 #2671 #5001
Thanks!


Support for languages other than English

Stemmer is great for English but is other languages support planned?

Not by me, but contributions are welcome!


UI design fix and CSS refactoring

#405

Codecov Report
Patch coverage: 66.66% and no project coverage change.

Comparison is base (ad8462a) 71.58% compared to head (e8b52a0) 71.58%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #421   +/-   ##
=======================================
  Coverage   71.58%   71.58%
=======================================
  Files          69       69
  Lines       14444    14444
  Branches     1872     1872
=======================================
  Hits        10340    10340
  Misses       2261     2261
  Partials     1843     1843

Impacted Files
Coverage Δ

src/renderer/view/primitive/BoardLayout.ts
90.02% <50.00%> (ø)

src/common/i18n/translate.ts
97.54% <100.00%> (ø)

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

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


Federation not supported?

I have a client on trust domain example.org calling a server on trust domain example2.org. I set up federation on both spire servers and copied trust bundles between the servers. When the client calls the server I'm getting
      System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.        ---> Spiffe.Bundle.BundleNotFoundException: Bundle not found for trust domain 'example2.org'          at Spiffe.Bundle.X509.X509BundleSet.GetX509Bundle(TrustDomain trustDomain) in /src/src/Spiffe/Bundle/X509/X509BundleSet.cs:line 36          at Spiffe.WorkloadApi.X509Source.GetX509Bundle(TrustDomain trustDomain) in /src/src/Spiffe/WorkloadApi/X509Source.cs:line 101          at Spiffe.Svid.X509.X509Verify.Verify(X509Certificate2 leaf, X509Certificate2Collection intermediates, IX509BundleSource bundleSource) in /src/src/Spiffe/Svid/X509/X509Verify.cs:line 45          at Spiffe.Ssl.SpiffeSslConfig.ValidateRemoteCertificate(X509Certificate cert, X509Chain chain, IX509BundleSource x509BundleSource, IAuthorizer authorizer) in /src/src/Spiffe/Ssl/SpiffeSslConfig.cs:line 90
Looking at the code, seems like X509Source loads only a bundle for the local trust domain?

Federation should be supported (TestWorkloadApiClient.TestWatchX509Context).
Could you set trace log level in workload client to check if bundle is streamed down from the Spire agent? Bundles should be logged here.

If I remember correctly, there are 2 ways to distributed federated trust bundles in SPIFFE:

SPIFFE server in your trust domain consumes foreign SPIFFE server trust bundle.
Then foreign trust bundle is streamed down to workloads in your trust domain.
Workload itself consumes federation endpoint of the foreign trust domain SPIFFE server (like spiffe/go-spiffe)

Scenario 1 should be supported (unless there is a bug).
Scenario 2 is not supported currently.

Thanks for quick response. The issue was on my side, I forgot to add -federatesWith flag to the workload registration entry.


Safe User import for migration in Django < 1.7

If you use settings.AUTH_USER_MODEL in django <1.7 the migration process fails.
I modified the migration file to use the correct class of users using  django.contrib.auth.get_user_model function

Thanks for your contribution @pa0lin082, I am currently working on multiple user support #8 and will have a closer look at the details of your pull request afterwards.


For Scope Copy/Paste iterator tokens aren't updated

For Scopes such as for each loops, when copy/pasted, the tokens references inside aren't updated to reference the new scope name they fall under

oh thought I did add support for this, I can take a look again

oh I see the issue, I update the token value (so when hovering the token itself), but i dont update the serialized value


8456 f / Ali Rida / https://github.com/RidaAli

https://github.com/orgs/projets2017cl/teams/nfp103/members


--not-when-audio doesn't timeout if audio stops after X goes idle

While playing with this, I noticed that I can set a timeout with --not-when-audio like so,
xidlehook --not-when-audio --timer 'echo done' ''

Play some audio, e.g. in Spotify, and stop the audio remotely e.g. with the Spotify app on my phone, and the timer never times out.
This also happens when I let a youtube video time out on its own.
This is with xidlehook 0.8.2

That was actually intentional, as to not needlessly waste CPU cycles checking if audio or fullscreen is STILL playing. If you think that's bad behavior, I can probably fix it fairly quickly

Well I guess my expectation is if there's no audio, it's xidlehook's job to know about it and have accurate timers.
For me, pausing spotify from my phone as I leave my apartment is something I do regularly, and if I rely on xidlehook for power management it means my computer will stay awake.
But maybe for this case it might be better to look at dbus events to get the "PlaybackStatus" from "org.mpris.MediaPlayer2.Player". Idk if it's a good fix, but interpretting those events like you do X input events might solve the problem, because I guess xidlehook checks volume after input events. And both Spotify and Youtube broadcast those events.
It wouldn't solve the problem for players that don't connect to dbus though. What do you think?

I'm not actually using dbus, the only way I found out how to check for activity was to check every X seconds (where X is the time until your next timer triggers). I do get pulseaudio events, but those are on a separate thread. But I don't need the pulseaudio events live, I still wake up before I trigger the timer, so I have plenty of time to check all the required factors.
Don't worry about implementation, I'll get to work.

ahh, okay I understand the behaviour now. Just tried the fix out, and it does work. It's worth noting I guess though that depending on when you stop the music or fullscreen, the timer will go off in anywhere between 0...X seconds. Which can seem like weird behaviour especially if it's closer to 0 seconds (:
Thanks for the quick fix though!

Oh, good catch! I'll let the issue be open until that's resolved... Hm... wonder how I'd solve that


PIN not working

Hi, I have passed by your repository and looks promising, but however PIN does not work.
I have:
Ubuntu Server 22.04
Node.js v18.19.1

Hello @emjhay2004!
I'm sorry, but I haven't yet produced a documentation on how to use Rahoot!
I think you're confusing the password in the socket config with the PIN code.
(config socket is here : https://github.com/Ralex91/Rahoot/blob/main/socket/quizz.config.js)
The password in the socket config is used to access the manager side to go to the manager page, go to http://localhost:3000/manager then enter the config password, and you'll be redirected to a page with the PIN code that players must use to join.
Have you installed the dependencies correctly?
Did you run the script commands in the package.json file?
For dev:
npm run all-dev
For prod
npm run all

Hi,
Yes, I tried to:
npm install
on the Rahoot directory and:
npm i sharp
for Image Optimization
The only this I am missing is the links where to go and you point me to the right direction, will try the link you provided.
The reason why I am looking here in github is Kahoot and Quizizz are no longer available for free use and they are limiting the free to previous created quiz, new quiz requires some subscription. So that is the reason I am looking for an alternative to Kahoot and Quizizz.

I am getting a problem with websocket

It seems that websocket host is localhost, wherein I hosted it on my VirtualBox environment, Ubuntu Server 22.04, Node.js v18.19.1.

I now found where to edit the websocket, it is at:

src/constants.js
export const WEBSOCKET_URL = "http://localhost:5157"

It seems that the Rahoot is now functional, the lacking functionality is leaderboard for all participants like in Kahoot where it displays the score of all participants including their incorrect and correct answers, timing of their submission, etc...

I apologize for the lack of explanations on how to install and use Rahoot, as it's a project I did quite quickly in a short space of time. I didn't have the courage to make a README, but I'll try to do one when I have the time.
I made this Kahoot clone because I didn't feel like creating an account and paying for it, and I wanted to make a project as quickly as possible to test my skills.

I apologize for the lack of explanations on how to install and use Rahoot, as it's a project I did quite quickly in a short space of time. I didn't have the courage to make a README, but I'll try to do one when I have the time.
I made this Kahoot clone because I didn't feel like creating an account and paying for it, and I wanted to make a project as quickly as possible to test my skills.

Well, I'll support your project with this one, in anyway I can... Surely we want a better functional online quiz like Kahoot...


Unable To Tell Which Field Validation Error Relates To

When editing a long list of document links for activity for Camfed GB-CHC-1029161-CSCF551 I was getting an error 'Please select an item from the list' but was completely unable to tell which of the many fields the error related to?

In every form, after each label if you see an '*' it means that those fields are mandatory. All mandatory fields need to be filled before saving. In this case, the language field is required.

Thanks for the update. However, I think that the majority of users will unfortunately not be aware of what is mandatory or not and will really need the field(s) in error being indicated much more specifically to them. This has unfortunately also been a problem for users with the V2.01 version of Aidstream .

Right now, we are using frontend validation (using js) to catch and display those errors without having to sending the request to server. This makes the form filling a bit easy and quick. The current HTML5 based validation doesn't look proper, however we will explore the other good looking and user-friendly js-validation library.
The server validation is intact for now - which we could use instead of the js validation.

Thanks @anjesh and I think if you can do anything here to make it clear to the user which field is in error then that would be extremely welcome. When there is a form with lots of data it is extremely frustrating not to be able to tell which is the field that needs fixing

This issue has been fixed already.


Add configuration for toggle syntax additions

This extension add syntax highlighting.
How can I disable it?
Attached screenshots.

Any news?
It conflicts with the new syntax highlighting engine highlighting https://github.com/georgewfraser/vscode-tree-sitter.


Do not emit empty non-NOLOAD sections

In the case of a splat segment that has only bss in its contents, splat will still generate the first non-NOLOAD linker section which will have nothing in it, e.g.
    codesegs0_1_bss_VRAM = ADDR(.codesegs0_1_bss);
    .codesegs0_1_bss 0x800AF860 : AT(codesegs0_1_bss_ROM_START) SUBALIGN(16)
    {
        codesegs0_1_bss_RODATA_END = .;
    }

This doesn't prevent anything from matching, but the linker script would be a bit cleaner if it didn't generate this.

Similarly, it looks like _TEXT_END symbols are generated even for splat segments that have no .text in them.


Can not reproduce the GPT-4-V results

Hi, I am trying to reproduce the results in the paper using GPT4V. I use the exact same code and just replace my API key in query_model.py, however, the results are very different from that reported in the paper. My results on validation set is as the following:
Using model: GPT4V
Task Art_Style Performance
val accuracy: 71.79%
Task Functional_Correspondence Performance
val accuracy: 32.31%
Task Multi-view_Reasoning Performance
val accuracy: 51.13%
Task Relative_Reflectance Performance
val accuracy: 3.73%
Task Visual_Correspondence Performance
val accuracy: 23.84%
Task Counting Performance
val accuracy: 44.17%
Task IQ_Test Performance
val accuracy: 28.0%
Task Object_Localization Performance
val accuracy: 48.36%
Task Semantic_Correspondence Performance
val accuracy: 18.71%
Task Visual_Similarity Performance
val accuracy: 55.56%
Task Forensic_Detection Performance
val accuracy: 37.12%
Task Jigsaw Performance
val accuracy: 46.0%
Task Relative_Depth Performance
val accuracy: 62.9%
Task Spatial_Relation Performance
val accuracy: 41.96%
For example, I have checked the output for Relative_Reflectance, there are a large number os cases where GPT4V outputs something like “I'm sorry, but I can't assist with requests involving the analysis or comparison of specific points in images. If you have any other questions or need assistance with a different topic, feel free to ask!”.
I am wondering if the results in the paper produced directly by this code or should I make any modification to achieve similar results?
Thanks!

Hi zzh, we think it was because the openai team updated the model under "gpt-4-vision-preview" checkpoint. We will soon update the GPT-4o and GPT-4 Turbo scores on our paper.
As for the safety issue with spatial_relation, did you set temperature=0?


Swiss flag should default to 1x1

A swiss guy told me that the swiss flag is supposed to be square.  It should be an easy fix; just default to the 1x1 version of the swiss flag instead of the 4x3.

In case you didn't notice.. they are all adjusted.. not only the Swiss flag..


Enable KeepAlive in TcpServer by Default

It's a long standing issue in our production environment, that the spring-cloud-gateway does not release tcp connections. Similar issues may be: https://github.com/spring-cloud/spring-cloud-gateway/issues/1233, https://github.com/spring-cloud/spring-cloud-gateway/issues/1788 and https://github.com/reactor/reactor-netty/issues/1200. We always update the component to the latest versions, but never solve the problem. With more and more clients using the gateway, tcp connections increase rapidly(10k+/week) and we cannot just ignore and do a restart fix.
After several days of investigation. I found the root cause: tcp keepalive is not set by default in TcpServer.
# cat /proc/sys/net/ipv4/tcp_keepalive_time
1800

# ss -4a -i
...
tcp   ESTAB      0      0                                                                          <IP_ADDRESS>:http                                                                                <IP_ADDRESS>:novell-zen
         cubic wscale:8,7 rto:201 rtt:0.151/0.028 ato:40 mss:1448 cwnd:22 send 1687.7Mbps lastsnd:2912849751 lastrcv:2912849754 lastack:2912849751 pacing_rate 3361.6Mbps rcv_space:28960
tcp   ESTAB      0      0                                                                          <IP_ADDRESS>:http                                                                                <IP_ADDRESS>:37625
         cubic wscale:8,7 rto:201 rtt:0.098/0.024 ato:40 mss:1448 cwnd:17 ssthresh:16 send 2009.5Mbps lastsnd:2896497497 lastrcv:2896497501 lastack:2896497497 pacing_rate 4013.8Mbps rcv_space:28960
tcp   ESTAB      0      0                                                                          <IP_ADDRESS>:http                                                                                <IP_ADDRESS>:30029
         cubic wscale:8,7 rto:201 rtt:0.09/0.017 ato:40 mss:1448 cwnd:20 send 2574.2Mbps lastsnd:773102915 lastrcv:773102919 lastack:773102915 pacing_rate 5148.4Mbps rcv_space:28960
tcp   ESTAB      0      0                                                                          <IP_ADDRESS>:http                                                                                <IP_ADDRESS>:60417
         cubic wscale:8,7 rto:201 rtt:0.114/0.012 ato:40 mss:1448 cwnd:22 send 2235.5Mbps lastsnd:488590217 lastrcv:488590221 lastack:488590217 pacing_rate 4471.0Mbps rcv_space:28960
tcp   ESTAB      0      0                                                                          <IP_ADDRESS>:http                                                                                <IP_ADDRESS>:56203
         cubic wscale:8,7 rto:201 rtt:0.154/0.098 ato:40 mss:1448 cwnd:20 send 1504.4Mbps lastsnd:1365713583 lastrcv:1365713587 lastack:1365713583 pacing_rate 2996.7Mbps rcv_space:28960
tcp   ESTAB      0      0                                                                          <IP_ADDRESS>:http                                                                                <IP_ADDRESS>:51560
         cubic wscale:8,7 rto:201 rtt:0.232/0.021 ato:40 mss:1448 cwnd:22 send 1098.5Mbps lastsnd:1377039985 lastrcv:1377039988 lastack:1377039985 pacing_rate 2188.7Mbps rcv_space:28960
tcp   ESTAB      0      0                                                                          <IP_ADDRESS>:http                                                                                <IP_ADDRESS>:43707
         cubic wscale:8,7 rto:201 rtt:0.504/0.138 ato:40 mss:1448 cwnd:22 ssthresh:22 send 505.7Mbps lastsnd:430545324 lastrcv:430545327 lastack:430545323 pacing_rate 1009.8Mbps rcv_space:28960
...

lastsnd and lastrcv values are much larger than the keepalive settings. So the solution is straight forward, by adding a netty customizer:
    @Bean
    public NettyServerCustomizer nettyServerCustomizer() {
        return httpServer -> httpServer.tcpConfiguration(tcpServer -> {
            tcpServer= tcpServer.option(ChannelOption.SO_KEEPALIVE, true);
            /*
             * We are modifying child handler, use doOnBind() instead of doOnConnection().
             */
            tcpServer = tcpServer.doOnBind(serverBootstrap ->
                    BootstrapHandlers.updateConfiguration(serverBootstrap, "channelIdle", (connectionObserver, channel) -> {
                        ChannelPipeline pipeline = channel.pipeline();
                        pipeline.addLast(new ReadTimeoutHandler(10, TimeUnit.MINUTES));
                        //pipeline.addLast(new WriteTimeoutHandler(10, TimeUnit.MINUTES));
                    }));
            return tcpServer;
        });
    }

I also add an application-level read timeout handler. After the change, connections do begin to decrease. So I'm suggesting to add the keepalive setting by default, either in spring-cloud-gateway or in reactor-netty. With this change, the TcpServer will do the right thing out of box.
Zabbix trend of tcp connections:

@violetagg Will you look at this?
Basically, our gateway route requests based on consul service discovery, with some audition & authentication filters. But I believe it's reproducible even with static route in our environment. Related configs:
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.register=false
spring.cloud.consul.discovery.prefer-ip-address=true
spring.cloud.consul.discovery.healthCheckPath=/actuator/health
spring.cloud.consul.discovery.healthCheckInterval=15s
spring.cloud.consul.discovery.acl-token=16c5413b-276c-45ab-9b0e-9664126f1123
spring.cloud.gateway.discovery.locator.enabled=true
spring.cloud.gateway.discovery.locator.lower-case-service-id=false
spring.cloud.gateway.metrics.enabled=true
spring.cloud.gateway.httpclient.connect-timeout=20000
spring.cloud.gateway.httpclient.response-timeout=60s
spring.cloud.gateway.httpclient.pool.type=fixed
spring.cloud.gateway.httpclient.pool.acquire-timeout=20000
spring.cloud.gateway.httpclient.pool.max-connections=100
spring.cloud.gateway.httpclient.pool.max-life-time=90s
spring.cloud.gateway.httpclient.pool.max-idle-time=60s

My first fix was adding read timeout handler with doOnConnection(), but it cannot handle read timeout in CONNECTED state.
   @Bean
   public NettyServerCustomizer nettyServerCustomizer() {
       return httpServer -> httpServer.tcpConfiguration(tcpServer -> {
           tcpServer = tcpServer.doOnConnection(conn -> conn
                   .onReadIdle(300000, conn::dispose);
           return tcpServer;
       });
   }

@gonwan When you say My first fix was adding read timeout handler with doOnConnection(), but it cannot handle read timeout in CONNECTED state.
What do you mean with CONNECTED state?
On the server we have BIND, BOUND and CONNECTION

@violetagg
State.CONNECTED is the state defined in ConnectionObserver: https://github.com/reactor/reactor-netty/blob/902c4ae072191233e5659128c120f47bb7da7bdf/reactor-netty-core/src/main/java/reactor/netty/ConnectionObserver.java#L91
If use doOnConnection, Connection#onReadIdle() is called when State.CONFIGURED (see TcpServerDoOnConnection). And State.CONFIGURED is set in HttpTrafficHandler#channelRead().
So, Connection#onReadIdle() is not callbacked if a client channel never gets bytes to read. I'm using reactor-netty 0.9.10.

@violetagg
State.CONNECTED is the state defined in ConnectionObserver: https://github.com/reactor/reactor-netty/blob/902c4ae072191233e5659128c120f47bb7da7bdf/reactor-netty-core/src/main/java/reactor/netty/ConnectionObserver.java#L91
If use doOnConnection, Connection#onReadIdle() is called when State.CONFIGURED (see TcpServerDoOnConnection). And State.CONFIGURED is set in HttpTrafficHandler#channelRead().
So, Connection#onReadIdle() is not callbacked if a client channel never gets bytes to read. I'm using reactor-netty 0.9.10.

Ok understood. Yes State.CONFIGURED is emitted on the first read and if there isn't any read event you want be able to add that handler.
So adding that handler on State. CONNECTED should be OK.

Any plan to fix this? It's really annoying and costs time to track down. Better to add keepalive or timeout handlers here in spring-cloud-gateway, as application-level defaults.
I'm not knowing why some clients only connect and do not send anything, may be caused by firewall settings or bad client library implementation.

@gonwan Would you like to open a feature request here https://github.com/reactor/reactor-netty/

@violetagg https://github.com/reactor/reactor-netty/issues/1345 created.

As https://github.com/reactor/reactor-netty/issues/1345 is fixed, it would be nice to have a config in spring-cloud-gateway, like spring.cloud.gateway.httpserver.idle-timeout. The default value maybe 10 minutes, which means 10 minutes to detect/drop idle incoming connections. Also see explanation from tomcat: https://tomcat.apache.org/connectors-doc/common_howto/timeouts.html#Firewall_Connection_Dropping

@spencergibb

`
step 1:change default netty version

io.projectreactor.netty
reactor-netty
0.9.15.RELEASE

step2: chagne idle timeout
@Configuration
public class NettyServerCustomizerConfig {
@Bean
public NettyServerCustomizer nettyServerCustomizer() {
    return httpServer -> httpServer.idleTimeout(Duration.ofMillis(1));
}

}
`

`
step 1:change default netty version

io.projectreactor.netty
reactor-netty
0.9.15.RELEASE

step2: chagne idle timeout
@Configuration
public class NettyServerCustomizerConfig {
@Bean
public NettyServerCustomizer nettyServerCustomizer() {
    return httpServer -> httpServer.idleTimeout(Duration.ofMillis(1));
}

}
`

We use Spring Cloud Gateway version 2020.0.2 and we have the same issue of continually increasing connections.
The code example of Binhao Qian seems deprecated in the current version. BootstrapHandlers and ChannelPipeline classes are not resolved in my project.
Has somebody a more recent code example that solves this issue or an other solution for the increasing connections in Spring Cloud Gateway?

@EdwardKuenen Check the previous comment httpServer.idleTimeout(Duration.ofMillis(1))

@violetagg , thank you for your fast response! I tried the code but we got a lot of failures of the clients. After changing the idle timeout to 10 minutes the faults resolved, but the connections were still raising and never removed. Should it be just 1 millisecond?

@EdwardKuenen Please open an issue in Reactor Netty with a reproducible example

Hi @violetagg, it is very difficult to create a reproducible example. We see the issue only in our production environment. I do not know which parameters have an impact on this behavior to create a valid test scenario in our development environment. I hope you or the community have some suggesties I can try in production to see the effects. It seems the increase has no relation with the amount of traffic, it is a stable increase. I hope somebody can give me some suggestions.

The issue was not Spring Cloud Gateway, but Spring Boot Admin dashboard on the same server. Our edge api gateway does not support streams and will time-out the connection after some time. The browser creates a new connection, but the old one is keept alive. Is this also a netty issue? Is it possible to clean up these abondonded connections?

@EdwardKuenen You may try SO_KEEPALIVE?
https://projectreactor.io/docs/netty/release/reference/index.html#connection-timeout

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


I have a question  Expected u.is_cuda() to be true, but got false.  (Could this error message be improved?  If so, please report an enhancement request to PyTorch.)

Expected u.is_cuda() to be true, but got false.  (Could this error message be improved?  If so, please report an enhancement request to PyTorch.)
OMG This question,I can't resolve. can you help me? please

Have you solved this problem yet? I'm having the same problem.

OH yes  ，put your data on cuda than it can run
like this
if name == 'main':
input_ = torch.Tensor(5, 3, 256, 256).cuda()
net = MiM([2]*3,[8, 16, 32, 64, 128]).cuda()

out=net(input_)

ok, I get it! thanks!


WIP: Changes to get dereferenced values working with completion, hover, and go-to-definition

I wasn't sure how to split this work up exactly, so for now I'm just posting this as WIP PR just so other people are aware this work exists and can build off of it.  This contains the current version of the server that I am using as my daily driver.  This includes the fixes from #8 and #7 in addition to some new fixes to get dereference values working properly (eg. you can now hover, go-to-def, and get suggestions for the bar in foo.bar instead of just foo)

So your version of the server has working autocomplete, whereas main does not?  Seems like we'd want that merged.


README.md: fix two leftovers from pull request #10545

commit 02054d791a52f02de66844ef6f9384378fb2877d (master)
Author: Dr. Matthias St. Pierre<EMAIL_ADDRESS>Date:   Thu Jul 2 20:00:03 2020 +0200
README.md: replace incorrect access token for the AppVeyor badge

The AppVeyor badge was still showing the build state for
the mspncp/openssl fork.

This commit fixes a forgotten todo from #10545.

Author: Dr. Matthias St. Pierre<EMAIL_ADDRESS>Date:   Thu Jul 2 20:04:44 2020 +0200
README.md: remove incorrect link to openssl.github.io

The link to the OpenSSL Project Pages <openssl.github.io>
actually points to an unfinished draft <mspncp.github.io>.

The original intention of this pet project of mine was to
have a website dedicated to describing the OpenSSL workflow
on GitHub and to answer frequently asked questions related
to pull requests and the review process.

The progress on that project has stalled and I'm not so sure
anymore whether it is good idea to have yet another project
website. In particular since the OpenSSL Wiki has seen some
revival and increased activity caused by the upcoming
OpenSSL 3.0 release.

ping

Rebased and autosquashed without further changes. Ping for second review.

This pull request is ready to merge

Merged to master, thanks!
36b778fbb7 README.md: remove incorrect link to openssl.github.io
0799b79a45 README.md: replace incorrect access token for the AppVeyor badge


[SPARK-28469][SQL] Change CalendarIntervalType's readable string representation from calendarinterval to interval

What changes were proposed in this pull request?
This PR change CalendarIntervalType's readable string representation from calendarinterval to interval.
How was this patch tested?
Existing UT

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/13098/
Test PASSed.

Test build #107989 has started for PR 25225 at commit e84fce8.

Test build #107989 has finished for PR 25225 at commit e84fce8.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

retest this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/13102/
Test PASSed.

Test build #107994 has started for PR 25225 at commit e84fce8.

Thank you for updating.

cc @gatorsmile

Test build #107994 has finished for PR 25225 at commit e84fce8.

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

Merged build finished. Test PASSed.

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

I'm +1 for this changes.

Although PostgreSQL has several variants. In Spark side, we have no such things. So, this will not be misleading. How do you think about this PR, @gatorsmile ?
postgres=# CREATE TABLE T AS SELECT INTERVAL '1' YEAR A, INTERVAL '1' MONTH B, INTERVAL '1' DAY C, INTERVAL '1' HOUR D, INTERVAL '1' MINUTE E, INTERVAL '1' SECOND F, INTERVAL '1 day';
SELECT 1
postgres=# \d T;
                      Table "public.t"
  Column  |      Type       | Collation | Nullable | Default
----------+-----------------+-----------+----------+---------
 a        | interval year   |           |          |
 b        | interval month  |           |          |
 c        | interval day    |           |          |
 d        | interval hour   |           |          |
 e        | interval minute |           |          |
 f        | interval second |           |          |
 interval | interval        |           |          |

+1, too.
fyi: the interval name seems to be specified by SQL-92:
Compatibility: The following types (or spellings thereof) are specified by SQL: bigint, bit, bit varying, boolean, char, character varying, character, varchar, date, double precision, integer, interval, numeric, decimal, real, smallint, time (with or without time zone), timestamp (with or without time zone), xml.

cited from https://www.postgresql.org/docs/9.2/datatype.html

Yep. I think it's okay by itself. Thank you for the pointer.

+1 too


THRIFT-5104: Forward call context into handlers

https://issues.apache.org/jira/browse/THRIFT-5104
Client: cpp
Generating additional methods of If which accept call context to achive for example such a feature as authorization. This change shouldn't affect Cob style generation.

[x] Did you create an Apache Jira ticket?  (not required for trivial changes)
[x] If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
[x] Did you squash your changes to a single commit?  (not required, but preferred)
[x] Did you do your best to avoid breaking changes?  If one was needed, did you label the Jira ticket with "Breaking-Change"?
[ ] If your change does not involve any code, include [skip ci] anywhere in the commit message to free up build resources.

I need a second opinion on this.


is this supposed to be in pypi?

The readme suggests that to install I should run:
pip install cmd2-submenu
And the changelog on the main cmd2 project reads:
Submenu support has been moved to a new cmd2-submenu plugin. If you use submenus, you will need to update your dependencies and modify your imports.
Both of these together seem to suggest that cmd2-submenu should be in pypi.  Yet, if I search for it, it's not showing up.  And indeed, the given pip command fails; as one would expect, given the listing isn't showing up.  Similarly, adding "cmd2-submenu" to a setup.py file yields the same results.
I am trying to update my setup.py as you suggest but it's unclear if I should be hacking it up to pull directly from this GitHub repository/branch or if it's supposed to be listed in pypi.

@leith-bartrich Yes, this is supposed to be in PyPI.  It appears to be an oversight on our part.  Thanks for pointing this out!
@kotfu @kmvanbrunt Would one of you have time to test to make sure that this plug-in still works properly with the latest version of cmd2 and if so publish a release to PyPI and if not create an Issue specifying what the bug is so we can fix it?  I’m still out of town without my computer.

Oops. I forgot to publish this to pypi. I’ll do it later today.

Version 0.2.0 uploaded to pypi.


inefficient polling in cvat ui (api/lambda/requests)

My actions before raising this issue

[x] Read/searched the docs
[x] Searched past issues

I registered a new user on cvat.org. Logged in and immediately noticed that UI was continuously making a whole lot of unusual API requests.
Expected Behaviour
UI should not make extraneous API calls to check for anything unrelated to user's activity.
If there is a global task queue, it doesn't make sense to poll for its results in each user's UI, does it?
Current Behaviour
I was curious, so I did some digging. Turns out the culprit was this piece of code:
            const requests = await core.lambda.requests();
            requests
                .map((request: any): object => ({
                    taskID: +request.function.task,
                    requestID: request.id,
                }))
                .forEach((inferenceMeta: InferenceMeta): void => {
                    listen(inferenceMeta, dispatchCallback);
                });

/lambda/requests end-point does seem to return non-empty list of requests, unrelated to user's previous activity (which was precisely none).

I assume this is a global queue for "lambda" requests. Not sure why cvat-UI needs to listen/poll on each and every one of them, even though these are completely irrelevant to other users.
Steps to Reproduce (for bugs)

Register a new user at cvat.org
Confirm e-mail and log-in
Check out network tab in Dev Tools

@alx- , I agree that it has to be fixed.

@alx- , I agree that it has to be fixed.

Fixed in #6116


[Bug]: get_participation_events() returns empty array and locks database

Description
Calling get_participation_events() returns empty array and locks the database. If the user subsequently logs out, it's not possible to log in until the previous manager is destroyed.
Error Log:
logs-error-initializing-account.zip
Error happens in the minute before Tue, 14 Mar 2023 00:33:45 GMT
Motivation
This bug results in a white screen when going to the FF governance proposal overview. If the user subsequently logs out, it seems like the previous profile manager is not destroyed.
Open questions (optional)
Reproduction steps?
Are you planning to do it yourself in a pull request?
No.

Deadlock fixed in https://github.com/iotaledger/wallet.rs/pull/1955
You sure that the empty returned array was wrong for the node?

Please reopen if it's still an issue


[CPP Client] Can't build successfully when LINK_STATIC is ON

Describe the bug
I use the following command to execute cmake, and can't build successfully when LINK_STATIC is ON,
cmake . -DBUILD_TESTS=OFF \
    -DLINK_STATIC=ON  \
    -DBOOST_ROOT=/usr/local/include \
    -DPYTHON_LIBRARY=/System/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib \
    -DPYTHON_INCLUDE_DIR=/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7

the error info as follows:
[ 93%] Built target SampleReaderCApi
[ 93%] Built target SampleConsumerCApi
[ 93%] Built target SampleConsumerListenerCApi
[ 93%] Built target SampleProducerCApi
[ 93%] Building CXX object perf/CMakeFiles/perfProducer.dir/PerfProducer.cc.o
[ 93%] Building CXX object perf/CMakeFiles/perfConsumer.dir/PerfConsumer.cc.o
[ 94%] Linking CXX static library libpulsar.a
[ 94%] Linking CXX shared library libpulsarnossl.dylib
Undefined symbols for architecture x86_64:
  "_EVP_MD_CTX_new", referenced from:
      pulsar::MessageCrypto::MessageCrypto(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, bool) in MessageCrypto.cc.o
  "_EVP_MD_CTX_reset", referenced from:
      pulsar::MessageCrypto::MessageCrypto(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, bool) in MessageCrypto.cc.o
  "_OPENSSL_init_ssl", referenced from:
      pulsar::MessageCrypto::MessageCrypto(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, bool) in MessageCrypto.cc.o
  "_OPENSSL_sk_num", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in ClientConnection.cc.o
  "_OPENSSL_sk_value", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in ClientConnection.cc.o
  "_SSL_CTX_get_default_passwd_cb_userdata", referenced from:
      boost::asio::ssl::context::~context() in ClientConnection.cc.o
  "_SSL_CTX_set_options", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in ClientConnection.cc.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libpulsarnossl.2.7.0-SNAPSHOT.dylib] Error 1
make[1]: *** [lib/CMakeFiles/pulsarSharedNossl.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 94%] Linking CXX executable SampleProducer
[ 95%] Linking CXX executable SampleConsumer
[ 95%] Built target SampleProducer
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libpulsar.a(Log4cxxLogger.cc.o) has no symbols
[ 95%] Built target SampleConsumer
[ 95%] Linking CXX executable SampleConsumerListener
[ 95%] Linking CXX executable SampleAsyncProducer
[ 95%] Built target SampleConsumerListener
[ 95%] Built target SampleAsyncProducer
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libpulsar.a(Log4cxxLogger.cc.o) has no symbols

When  replace-DLINK_STATIC=ON with -DLINK_STATIC=OFF, we can build successfully.
Desktop (please complete the following information):

OS: MAC OS
Python: 2.7

We can use the following script to get the location of PYTHON_LIBRARY and PYTHON_INCLUDE_DIR:
#!/bin/bash
set -o errexit
cd `dirname $0`
PYTHON_LIB_DIR=$(python -c "import distutils.sysconfig as sysconfig; print(sysconfig.get_config_var('LIBDIR'))")
PYTHON_VERSION=$(python -c "import platform; print(platform.python_version()[:3])")
PYTHON_LIBRARY="$PYTHON_LIB_DIR/libpython$PYTHON_VERSION.dylib"
PYTHON_INCLUDE_DIR=$(python -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())")
echo "PYTHON_INCLUDE_DIR=$PYTHON_INCLUDE_DIR"
echo "PYTHON_LIBRARY=$PYTHON_LIBRARY"

It's already fixed in latest code: https://github.com/apache/pulsar-client-cpp


the version was discontinued 2.3.4?

Hello what's up ?? I am trying to install version 2.3.4 with the following
bower install<EMAIL_ADDRESS>--save
and the execution of the same I get the error
"bower ENOTFOUND Package<EMAIL_ADDRESS>not found",
I would like to know if it is temporary or the version was discontinued?

I am facing the same problem, anyone can publish the 2.3.4 version to npm?


Add BinsegTrendTransform, ChangePointsTrendTransform

IMPORTANT: Please do not create a Pull Request without creating an issue first.
Before submitting (must do checklist)

[x] Did you read the contribution guide?
[x] Did you update the docs? We use Numpy format for all the methods and classes.
[x] Did you write any new necessary tests?
[ ] Did you update the CHANGELOG?

Type of Change

[ ] Examples / docs / tutorials / contributors update
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Improvement (non-breaking change which improves an existing feature)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Proposed Changes

Related Issue

Closing issues

closes #69

Codecov Report

Merging #87 (2dacc5f) into master (2e7ba44) will decrease coverage by 3.42%.
The diff coverage is 99.21%.

@@            Coverage Diff             @@
##           master      #87      +/-   ##
==========================================
- Coverage   88.04%   84.61%   -3.43%
==========================================
  Files          50       52       +2
  Lines        2283     2405     +122
==========================================
+ Hits         2010     2035      +25
- Misses        273      370      +97

Impacted Files
Coverage Δ

etna/transforms/binseg.py
96.96% <96.96%> (ø)

etna/transforms/__init__.py
100.00% <100.00%> (ø)

etna/transforms/change_points_trend.py
100.00% <100.00%> (ø)

etna/transforms/pytorch_forecasting.py
26.38% <0.00%> (-73.62%)
:arrow_down:

etna/models/nn/tft.py
45.00% <0.00%> (-55.00%)
:arrow_down:

etna/models/nn/deepar.py
47.36% <0.00%> (-52.64%)
:arrow_down:

etna/loggers/base.py
92.15% <0.00%> (-2.08%)
:arrow_down:

etna/loggers/wandb_logger.py
33.33% <0.00%> (-1.50%)
:arrow_down:

etna/loggers/console_logger.py
92.30% <0.00%> (-0.29%)
:arrow_down:

etna/metrics/base.py
96.42% <0.00%> (-0.07%)
:arrow_down:

... and 3 more

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 2e7ba44...2dacc5f. Read the comment docs.


how to creat my own dataset?(I have only RGB-D camera)

Just depth information is necessary. You can follow the codes of sunrgbd dataset loader https://github.com/facebookresearch/votenet/blob/master/sunrgbd/sunrgbd_detection_dataset.py.

@jytime when i want to train in different categories of SUN RGBD ,how i should setting "type-mean-size" in sunrgbd/model_util_sunrgbd.py as follows.
self.type_mean_size = {'bathtub': np.array([0.765840,1.398258,0.472728]),
'bed': np.array([2.114256,1.620300,0.927272])...
and what if i use my own data set? looking forward to your solution.

For each category, it's the mean size of all objects among the training set. It can also work well if being set as [1,1,1].


server crashed for some reason, unable to proceed

I executed the following script but keep getting an error.
python -m mii.entrypoints.openai_api_server
--model "/logs/llama-2-70b-chat/"
--port 8000
--host <IP_ADDRESS>
--tensor-parallel 2
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.10/dist-packages/mii/entrypoints/openai_api_server.py", line 506, in
mii.serve(app_settings.model_id,
File "/usr/local/lib/python3.10/dist-packages/mii/api.py", line 155, in serve
import_score_file(mii_config.deployment_name, DeploymentType.LOCAL).init()
File "/tmp/mii_cache/deepspeed-mii/score.py", line 33, in init
mii.backend.MIIServer(mii_config)
File "/usr/local/lib/python3.10/dist-packages/mii/backend/server.py", line 47, in init
self._wait_until_server_is_live(processes,
File "/usr/local/lib/python3.10/dist-packages/mii/backend/server.py", line 62, in _wait_until_server_is_live
raise RuntimeError(
RuntimeError: server crashed for some reason, unable to proceed
I don't know how to solve this issue.

Hi @Archmilio could you try running the model in a pipeline? I suspect that the server is crashing when loading the model, but since it is a separate process the real error is not being shown:
import mii
pipe = mii.pipeline("/logs/llama-2-70b-chat/", tensor_parallel=2)
print(pipe("DeepSpeed is"))

Run this example with deepspeed --num_gpus 2 example.py


Mantle Mash - Gitcoin Hackathon Bounty - NFT & Gaming

Best NFT/Gaming Project: 2 teams win $2,500 per team
Challenge Description
Build an NFT or web3 gaming-related project. Ideas:

Read through the Game7 report and build a solution for one of the established challenges
Improve wallet interactions for games

Create a dApp that uses novel NFT use cases. Ideas:

Use NFTs to represent a Compound/Aave position
Use NFTs to represent ownership in a multisig

Create an innovative NFT tooling solution. Ideas:

Allow people to easily create and mint NFTs on Mantle testnet, where the image is uploaded to IPFS

Submission Requirements

The submission must be deployed on Mantle testnet
A video demo and GitHub repo must be submitted

Judging Criteria

Originality of the idea and innovation in the implementation of NFTs or Gaming tech/tools
User experience and ease of use for NFT and/or gaming-related interactions
Relevance and impact on the gaming and/or NFT ecosystem
Technical feasibility and implementation quality

Winner Announcement Date
Winners will be announced by Friday, February 24 EOD EST.
Links

Mantle Discord Server
Mantle Devs Telegram Channel
Mantle Docs
Mantle Developers Website
Mantle GitHub
Mantle Developer Interest Form

Is this bounty still up for grabs


Fix incorrect failing error for merge deploy to dev site?

Some merges are reading as "failed" from the Airflow but they are actually passing and deploying to the dev site. Should we adjust our GitHub actions to accommodate this?

closed by #2966


[Modelzoo] DBMTL model.

acc calculation in line 209 need update.self.acc, self.acc_op = tf.metrics.accuracy(labels=self.label, predictions=self.model)
'tf.metrics.accuracy'  don't accept probability as predictions.
Please update to self.acc, self.acc_op = tf.metrics.accuracy(labels=self.label, predictions=tf.round(self.model))

Update on jira [WC1-1043]

Changed SEED to args.seed.


noUnsedLocals and aliased types used as function arguments bug

Search Terms:
Salsa, noUnsedLocals, import
Code
I could not simplify this to a smaller code. It is happening at webpack here:
https://github.com/mohsen1/webpack/blob/ddb4b9efa41e9605256ab3339d0da688035769cf/lib/Module.js#L14-L30
/** @typedef {typeof import("./Chunk")} Chunk */

/** @typedef {typeof import("./RequestShortener")} RequestShortener */

/** @typedef {(requestShortener: RequestShortener) => string} OptimizationBailoutFunction */

/** @type {OptimizationBailoutFunction} */
var fn = (a) => { return {} }

Expected behavior:
No Error
Actual behavior:
Error
 error TS6133: 'RequestShortener' is declared but its value is never read.

16 /** @typedef {typeof import("./RequestShortener")} RequestShortener */
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Related Issues:
https://github.com/webpack/webpack/pull/7033/

@weswigham can you take a look. not sure if we should even report these errors on jsdoc comment declarations

@mhegazy I think the error is valuable (since it's a lint enabled by noUnusedLocals - it's optional and should be complete) - we just weren't visiting typedef types to mark visibility.


pull request for e2e test at 01/17/2017 05:26:14

: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.


why not realease it to PyPI and make entry_points?

Hi,
Currently it has to be installed from github source
Why not release it to PyPI and add console_scripts as entry point?
So it allows us to do
pip install codemod
codemod -m -d /home/jrosenstein/www --extensions php,html \
    '(.*?)' \
    '\2'

If any help  needed I can help packacking and releasing.

Absolutely!


Accessibility

Reworked navigation tree to follow standards set by W3C.
enabled keyboard navigation on high chart
other small clean ups and fixes

Great, thanks!!! I will check the explorer tomorrow!


Make dependency on Clarabel optional

The latest version of CVXR adds a dependency on clarabel, which, unfortunately, uses Rust. This a) pulls in a dependency on Rust, which is a huge thing to build; and b) breaks it for all platforms where Rust is broken.
This is a very undesirable move affecting multiple platforms and downstream distributions.

@bnaras Could you please take a look? I could revert related commits, of course, to fix it for MacPorts locally, but it is better to have it done properly for everyone.

@barracuda156 thanks for letting me know.  Certainly not our intent, and perhaps I pulled the trigger a bit too fast. We can make it optional by adding it to the "Enhances" field. Down the line, however, with ECOS not being maintained, we need a good conic solver as a default and so it might become necessary. I will do this as soon as I can.

@bnaras Thank you.
With Rust there are two potential options to have it working on every platform:

mrustc supports bootstrapping new enough Rust and GCC backend for Rust is completed. That will still require non-trivial efforts though, since rustc compiler is designed in a silly fashion and getting to the current version from some version bootstrapped by mrustc from C will require sequential builds of multiple versions of rustc. (Days/weeks of compilation.)
gccrs (GCC compiler for Rust) is production-ready and can be used in place of rustc. This will actually fix it for every platform where GCC works, i.e. more or less everywhere, but we do not know when that happens.

Neither is gonna happen soon, AFAIK.
So it is desirable to have a fallback via a non-default configure option (to keep Rust-less systems with ECOS) or otherwise find some cross-platform replacement for Clarabel.

Down the line, however, with ECOS not being maintained

I am not familiar with the related code, so saying this blindly, but perhaps you could make a fork and maintain it?
Generally speaking, math should not require Rust, C/C++/Fortran work perfectly fine. If not, there are OCaml and Lisp, which are not completely cross-platform, but at least not as bad as Rust.

@barracuda156 I already maintain the R package ECOSolveR already and I have seen one example where the underlying ECOS C library leaks memory. I do fix things where I can, but not being an original author makes it time-consuming and difficult. (ECOS is also in the process of being deprecated in CVXPY too.)
Re: math. The authors of Clarabel chose to write the solver in Rust and I am glad to be able to make it available to R users.
But, at least for now, I can make this an enhancement rather than an import.

@bnaras Thank you, this is appreciated.

This fix is in place in the clarabel_interface branch.  You can install via:
devtools::install_github("cvxgrp/CVXR", ref="clarabel_interface")

or download the whole tree and checkout the clarabel_interface branch and install as usual.
It will make it to CRAN in due course.


downloading from dailymotion is very slow ..

I tried many videos from dailymotion and feel its very slow for downloading videos from dailymotion .. but its works for all other website very good. ... can you please check it may be some thing can make it better .
Thanks

Having the same issue with dailymotion download speed doesn't go over 150kbps. I am on a 500mbps connection.

+1
This issue occurs only on DailyMotion but in addition to slow downloading I experience false download done!
I'm using
Linux Mint 17.1 x64
youtube-dl 2015.05.20
PS. When I tried to upgrade to recant version (2<IP_ADDRESS>) I get the following output:
# pip install --upgrade youtube-dl
Requirement already up-to-date: youtube-dl in /usr/local/lib/python2.7/dist-packages
# youtube-dl --version
2015.05.20

A little update on this, I noticed that the first few seconds of download on Dailymotion are quite satisfactory (around 6MiB/s here) and as soon as you get around 1.5% at max speed, the download speed slows down drastically.
As youtube-dl is able to resume, I used this to "hack" the download by cancelling/starting/cancelling/starting/... and it works but it takes a while and is quite annoying. I don't know how to patch it, but starting new downloads often seems to bypass what I think is a way for them to save bandwidth: never give you more than you could watch.
Two consecutive traces (~30 seconds interval, the first one was just after the download resumed):
[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['-v', '-f', 'hd', 'http://www.dailymotion.com/video/xvel9v_episode-1-alone-on-the-wall_lifestyle']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 3.4.3 - Linux-4.0.5-1-ARCH-x86_64-with-arch
[debug] exe versions: ffmpeg 2.7.1, ffprobe 2.7.1, rtmpdump 2.4
[debug] Proxy map: {'https': 'http://<IP_ADDRESS>:8118/', 'http': 'http://<IP_ADDRESS>:8118/'}
[dailymotion] xvel9v: Downloading webpage
[dailymotion] xvel9v: Extracting information
[dailymotion] xvel9v: Downloading embed page
[debug] Invoking downloader on 'https://www.dailymotion.com/cdn/H264-1280x720/video/xvel9v.mp4?auth=1435783659-2562-a66resg0-e6c24b7caf0043d2b7eb2c8fc1a9c5f8'
[download] Resuming download at byte 592649822
[download] Destination: Episode 1 - Alone On The Wall-xvel9v.mp4
[download]  61.3% of 928.88MiB at  5.50MiB/s ETA 01:05

[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['-v', '-f', 'hd', 'http://www.dailymotion.com/video/xvel9v_episode-1-alone-on-the-wall_lifestyle']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 3.4.3 - Linux-4.0.5-1-ARCH-x86_64-with-arch
[debug] exe versions: ffmpeg 2.7.1, ffprobe 2.7.1, rtmpdump 2.4
[debug] Proxy map: {'https': 'http://<IP_ADDRESS>:8118/', 'http': 'http://<IP_ADDRESS>:8118/'}
[dailymotion] xvel9v: Downloading webpage
[dailymotion] xvel9v: Extracting information
[dailymotion] xvel9v: Downloading embed page
[debug] Invoking downloader on 'https://www.dailymotion.com/cdn/H264-1280x720/video/xvel9v.mp4?auth=1435783659-2562-a66resg0-e6c24b7caf0043d2b7eb2c8fc1a9c5f8'
[download] Resuming download at byte 592649822
[download] Destination: Episode 1 - Alone On The Wall-xvel9v.mp4
[download]  62.5% of 928.88MiB at 446.82KiB/s ETA 13:17

Sorry for the local proxy thing, I'm using privoxy as an ad-free tool, I don't think it changes anything on the download speed.

Hi, I have also the same pb. with dailymotion download speed.
What do you think that can be done to solve this issue ?

Having the same issue. I guess Dailymotion uses some kind of token bucket to throttle their upload rate. A possible workaround would be to automatize the stop-and-restart approach explained by @Artymort.

Hi, I am experiencing the same issue with dailymotion.
I am downloading tons of "Regular Show" cartoon for my kid and at the very begging is way fast,
but beyond 1.5% the speed drops down.
Any trick yet?

I have exactly the same problem with the latest version.

@PannenkoekenNL Could you give your video URL?

@yan12125 For example this ones:
http://www.dailymotion.com/video/x3m1qro_crayon-shin-chan-call-me-pencil-shinchan_fun
http://www.dailymotion.com/video/x3m9dw9_crayon-shin-chan-fighting-with-kazama_fun
http://www.dailymotion.com/video/x3m9eg3_crayon-shin-chan-a-present-for-miss-nanako_fun
http://www.dailymotion.com/video/x3m9eza_crayon-shin-chan-i-broke-the-glass_fun

Just tried http://www.dailymotion.com/video/x3m1qro_crayon-shin-chan-call-me-pencil-shinchan_fun. On the webpage HLS is used, while in youtube-dl the default format is HTTP. This command can be used to download the HLS format:
youtube-dl -v -f 'best[format_id^=hls]' "http://www.dailymotion.com/video/x3m1qro_crayon-shin-chan-call-me-pencil-shinchan_fun" --hls-prefer-native

Here --hls-prefer-native is necessary due to a ffmpeg bug.
Closing as download speed is beyond the scope of youtube-dl.

Commenting here even if the issue is closed, I do understand that's it's not an youtube-dl bug but I want to help by providing a trick mentionned by @Artymort.
Dailymotion still trottle the download after 10 seconds, so you stop & relaunch youtube-dl... every 10 seconds. I had good results!
An easy way to it with a modern shell (zsh, bash, maybe others implementing timeout) is:
while :; do timeout 10 youtube-dl https://www.dailymotion.com/video/xxxxxxx; done


Add character: Eschor

Hero Description

Eschor is a hero with apparently simple armor, but underestimated. His armor is super strong, and his "simple shield" is a powerful shield, bestowed on him with a strong magical spell that leaves him almost indestructible.

Eschor's shield is magical, and can change shape.

Concept Art

Inspiration
Inspired by Naofumi, protagonist of the anime Shield Hero and the protagonist of the anime Goblin Slayer.
Moves
Idle
He stands holding his shield.

[STICK] Walk
Normal.

[LEFT] Aero Shield

Description (Cast) Raise your shield and give yourself and your ally a shield.
Animation (Effect) The shield effect is an aura, with 3 shields that are rotating around the ally and the Eschor.
Aura effect Damage reduction.

The effect ends after he casts another ally again.

[MIDDLE] Atomic Protection

Description (Cast) Gives a short Dash with your shield.
Animation (Effect) When he gives the Dash, he will raise his shield, in its most powerful form, protecting whoever is close to him, besides being able to walk with the shield.

(You cannot use LEFT while you are using MIDDLE)

[RIGHT] Shield Attack

Description (Cast) Hits the shield on the ground and pushes enemies. (Impact Effects)
Animation (Effect) Enemies pushed are stunned for X seconds.
[Q] Ultimate: Turtle Training
Description (Cast) He casts a shield formation that binds allies or enemies making them invulnerable.
Animation (Effect) Allies or Enemies inside the shield cannot cast abilities or do anything.

The shield falls after X seconds or casting the ability again.

Inspiration

OPTIONAL
[E] Taunt

The hero defends himself from a bow and arrow, empowering his shield.

Tasks

[x] Idle
[x] Walk
[ ] Hurt
[x] [LEFT] Aero Shield
[x] [MIDDLE] Atomic Protection
[ ] [RIGHT] Shield Attack
[ ] [Q] Ultimate: Turtle Training
[ ] [E] Taunt

Skills in development. I'm waiting for Alexandre's approval.

Day 05/08

Resume (Updates in the main post)

[x] Issue Finished

[x] Concept Arts

[x] References

[x] Model

[x] Idle

Hours worked 8:46

Approved for work. I forget to mention that before hahaha

Day 05/09

Resume (Updates in the main post)

[x] Walk

Hours worked 6:03

Day 05/10

Resume

[x] Aero Shield (WIP)

Hours worked 5:30

Day 05/11

Resume (Updates in the main post)

[x] Aero Shield Finished
[x] Atomic Protection Cast

Hours worked 6:18

Day 05/12

Resume (Updates in the main post)

[x] Shield Attack Cast + Effect

OBS Only the shield's impact on the ground is missing, which I will do on the 13th.

The shield will have two variations.

Variation 1 When the player uses the shield while Middle is activated.
Variation 2 When the player uses the shield without the Middle activated.

[ ] Put that in the issue.

Hours worked 8:25

Day 05/13
- Eschor Finished

Resume (Updates in the main post)

Atomic Protection (Idle + Walk)
Aero Shield Effect
Ultimate (Finished)

Hours worked today 8:43
*Total hours worked 43:45


Table of Contents does not behave correctly

Describe the bug
After the most recent update (1.5.2), when viewing an exported document, it appears that pages not in the root folder have trouble with the table of contents provided by webpage-export. Clicking on them often scrolls the page to the top and navigation doesn't work.
Operating System and versions
Windows 10/11,
Firefox 112.0.2,
Obsidian 1.2.7,
Tried using file:// and http://,
Tried exporting self-contained documents and multi-file website.
To Reproduce
Steps to reproduce the behavior:

Export the entire vault vault.
Click on 'a page not located in the root folder' or 'go to a page through a page link in the root folder' (results are the same).
Click on a link at the generated 'table of contents' in a file that's not in the root folder.
See the page glitching to the top of the screen or not working at all.

Hmm yes I can reproduce this easily. Let me see if I can fix that! Thanks for the report! :)

Okay if you reload obsidian and re-export you should find this issue fixed assuming obsidian doesn't cache the scripts. If is still doesn't work try reloading obsidian a rouple more times. (There is a command to reload obsidian without having to close it btw)

I did a reload in Obsidian and the problem seems to be fixed. I've checked both root and non-root files, and tested both file:// and http://. Thank you for the quick response and fix! Really appreciate the effort. Love your work <3

Awesome! I'll continue using this flow here. This issue can be marked as closed.


Segmentation fault while checking out bare repository with notifications

I don't know if the problem comes from git2 or libgit2 itself, but here's the reduced code:
extern crate git2;

use git2::build::{CheckoutBuilder, RepoBuilder};
use git2::{CheckoutNotificationType, Repository};

fn main() {
    let repo = RepoBuilder::new()
        .bare(true)
        .clone(
            "https://github.com/alexcrichton/git2-rs",
            "/tmp/segfault_poc_bare".as_ref(),
        )
        .unwrap();

    let tree = repo
        .revparse_single(&"master")
        .unwrap()
        .peel_to_tree()
        .unwrap();
    let mut index = repo.index().unwrap();
    index.read_tree(&tree).unwrap();

    let mut checkout_opts = CheckoutBuilder::new();
    checkout_opts.target_dir("/tmp/segfault_poc_checkout".as_ref());
    checkout_opts.notify_on(CheckoutNotificationType::all());
    checkout_opts.notify(|notif, path, file1, file2, file3| {
        println!("{:?}", file1.path());
        true
    });
    repo.checkout_index(Some(&mut index), Some(&mut checkout_opts))
        .unwrap();
}

It seems that trying to print either file1.path() or file3.path() in the notify callback produces the segfault (but not file2 for some reason).
Doing the same with a non-bare repository seems to work fine.
Tested with Rust 1.31.0-nightly and 1.27.0 (no difference).
Thank you for the great work!

After reading the source code for libgit2 (here in particular) I've found that each of the diff file pointers passed to the callback have cases where they can be null. One way to fix the segfault would be to change the notify callback in git2 to take Option<DiffFile> instead of DiffFile as arguments. What do you think?

Sounds like a reasonable change to me!

Closing since it was fixed in linked PR


Compatibility with API 8 & Solved activity destruction issue

Don't kill me, first time helping in other projects

Might be useful: http://stackoverflow.com/questions/7217031/github-accept-pull-request-but-only-some-commits

I will try to do a pull request with only "Compatible w/API 8!" commit.


Symlinks under "s3-config/access_keys" should contain a relative path rather absolute path

Environment info

NooBaa Version: noobaa-core-5.15.0-20240313.el9.x86_64 (4.15 down stream)
Platform: Standalone RHEL 9.2

Actual behavior
We have a DR scenario with configuration backup/restore:
When an account is created, it creates a symlink under “s3-config/access_keys” directory.
[root@scale-2node-x-worker1 s3-config]# ls -lrt access_keys/
lrwxrwxrwx 1 root root 65 Mar 18 22:55 wwqNVMVquPBOfXIud5hK.symlink -> /gpfs/fs-ces-shared/new_path/ces/s3-config/accounts/account1.json

Use case:
Scale has a backup/restore feature which takes backup of configuration (everything under “s3-config” dir).
When user change the configuration path to a different FS, he can restore the old configuration.
However after restore, the “access_keys” directory still has the symlinks to old configuration path (absolute path). Thus access keys are no more working.
If I fix the symlinks to new absolute path, accounts become accessible again.
[root@scale-2node-x-worker1 access_keys]# ln -sfn /gpfs/fs-ces-shared_new/ces/s3-config/accounts/account1.json wwqNVMVquPBOfXIud5hK.symlink
Expected behavior
Symlinks should contain a relative path rather absolute path
More information - Screenshots / Logs / Other output

@anandhu-karattu I dont think adding relative path will fix this specific scenario you mentioned here.
Suppose user already have a symlink
wwqNVMVquPBOfXIud5hK.symlink -> /gpfs/fs-ces-shared/new_path/ces/s3-config/accounts/account1.json and we convert link to relative path to ../../../../../s3-config/accounts/account1.json but after restoration if user copy the account config files to folder /gpfs/fs-ces-shared/new_path/new_dir/ces/s3-config/accounts/ then the symlink will fail because new relative path should be ../../../../../s3-config/accounts/account1.json, Correct me if I am wrong.
cc : @guymguym @romayalon

@anandhu-karattu I dont think adding relative path will fix this specific scenario you mentioned here. Suppose user already have a symlink wwqNVMVquPBOfXIud5hK.symlink -> /gpfs/fs-ces-shared/new_path/ces/s3-config/accounts/account1.json and we convert link to relative path to ../../../../../s3-config/accounts/account1.json but after restoration if user copy the account config files to folder /gpfs/fs-ces-shared/new_path/new_dir/ces/s3-config/accounts/ then the symlink will fail because new relative path should be ../../../../../s3-config/accounts/account1.json, Correct me if I am wrong. cc : @guymguym @romayalon

@naveenpaul1 The accounts/ and access_keys/ directory exist at the same level. So to have a symlink you can simply have:
wwqNVMVquPBOfXIud5hK.symlink -> ../accounts/account1.json
This will fix the issue in my view.

@naveenpaul1 not sure I follow, why do you need the relative path to go all the way up to the root? these files have a closer shared ancestor which is the cesSharedRoot...
To create that link from shell you would start from the target dir, and link a relative path like this for example
cd /gpfs/cesSharedRoot/access_keys/
ln -s ../accounts/<name>.json <key>.symlink

@guymguym @madhuthorat I got it, will do the changes as you mentioned. Thank you.

@anandhu-karattu code is merged, You can test using upstream branch.

Picking this up for verification in latest u/s build @naveenpaul1

Verified on upstream build "noobaa-core-5.17.0-20240415.el9.x86_64"
[root@earth-x-worker1 access_keys]# ls -lrt
total 1
lrwxrwxrwx 1 root root 30 Apr 17 00:15 KYolnzku0k59X57fkM66.symlink -> ../accounts/account-35940.json

Now only relative path is available with symlink. Fix looks good.

@anandhu-karattu thanks!
closing per the last comment