Adaway  can't grab file

Somehow Adaway can not grab the file from https://raw.githubusercontent.com/JasonD94/android-hosts/master/hosts.txt
Any suggestions?
All my other hosts sources get loaded.

Same, able to download the txt using chrome but adaway can't seem to download the link

I don't use AdAway currently, as my current Android phone is not rooted. However, DNS66 was able to find the URL and loaded it without issue.
I remember running into a similar issue when I was using AdAway. I found an issue on StevenBlack's hosts repository that I even commented on (my old phone was rooted and had AdAway installed) with the following comment:

This seems to be a bug with AdAway. It doesn't seem to show any GitHub URLs as being available. I've added my own hosts file for blocking Spotify ads and it does the same thing - "Local: not available, Online: not available".
However, since I've added my own hosts file I haven't gotten a single Spotify ad. So I'm willing to guess that it shows "not available" but can still access the hosts file and merge it. I've also noticed it shows the right number of sources applied, even if a few (such as the hosts file for this repo) show up as "not available" in the app.

You can find the Github Issue I mentioned above here. I'm guessing it's the same issue as before, which is a bug with AdAway that is causing it to not recognize raw.githubusercontent.com links as valid. Since this isn't an issue with my hosts file (nor with StevenBlack's), I suggest you make an issue on AdAway's GitHub repo. They may have more insight into why raw.githubusercontent.com URLs fail.

Closing this issue because it's not really an issue with my hosts file, but instead an issue with AdAway or Github raw URLs not being supported by AdAway for some unknown reason. DNS66 works with the android-hosts file, so that is another alternative to try.


Added semi colon to some code snippet

Thanks!
Could you add them to the related dartdocs too?

ok sure!

I can not find the dartdoc
can you please tell me the file name?
@rrousselGit

Thanks!

Thanks!


Use yarn workspaces

This should now work based on this issue: https://github.com/Microsoft/TypeScript/issues/6496#issuecomment-321389237

@timsuchanek pls re-enable workspaces.


mixer: servicecontrol side channel

servicecontrol adapter makes use of net context metadata to extract the destination service:
https://github.com/istio/istio/blob/60c7f8f5396fd206b6695de0b0406e5a44598a5e/mixer/adapter/servicecontrol/handler.go#L153
This seems to bypass the normal means of passing attributes and likely cause issues with caching.
/cc @geeknoid

@mandarjog who owns servicecontrol adapter? we should clean it up sooner than later to remove context-based destination.service as part of deprecation of destination.service.

@douglas-reid @mandarjog @geeknoid
I've tried to dig through history to understand why destination.service is not just passed as a field in apikey template, but still confused. Anyone remembers the reasoning?

We should just remove that adapter altogether at this point, right? No one is maintaining it and it isn't being used for anything, right? Is it still even functional?


libcamera still: keypress / signal mode

Hi!
I am trying to use the signal mode triggered from a python script on a headless Raspi.
The idea is to warm up the camera and then call for capture at the desired time.
Right now I am simply calling libcamera-sill via a subprocess from the mentioned python script.
How do I send a signal from the control script to libcamera-still?
How is the signal defined?
Do I need to send it via a socket?

Hi, you should only need to send it a signal, that is, the equivalent of kill -SIGUSR1 $LIBCAMERA_STILL_PID.  You can check this works initially in a terminal window: first enter libcamera-still -t 0 -s -o test.jpg & and then type kill -SIGUSR1 $!  Hope that helps!

Thanks! I was able to reproduce the terminal part. The control script part ... not so much.
When calling subprocess.popen ('libcamera-still', '-t 0'. '-o test.jpg', '-s' via UDP, libcam blocks the UDP / the control script.
I experimented with listener and camera functionality running in separate threads, passing the output to queues, but nothing helped so far.
Any hint where I should look at?
Thanks!

Nevermind... I joined the threads...
Thanks for your time!


msd-eureka-svr to 0.0.10

Promote msd-eureka-svr to version 0.0.10

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

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


Remove version: Jackett.Jackett version 0.20.1916

404 - release deleted
Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/Jackett/Jackett/releases/download/v0.20.1916/Jackett.Installer.Windows.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 917)

URL: https://github.com/Jackett/Jackett/releases/download/v0.20.1916/Jackett.Installer.Windows.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 917)


Remove ParseErrors::errors_as_strings

Category
Internal refactors/changes
Describe the feature you'd like to request
It's not necessary and not public
Describe alternatives you've considered
Leave it
Additional context
No response
Is this something that you'd be interested in working on?

[ ] 👋 I may be able to implement this feature request
[ ] ⚠ This feature might incur a breaking change

I think it might be public.  It's a pub method on the ParseErrors type, which is exposed in cedar-policy (see docs.rs docs for 3.0).
It is problematic though because, as we continue to invest more in miette, it only grabs the main error message, not any of the other miette data such as error code or help string

Bumping this as a breaking change to make alongside the rest of the breaking changes to the error API in #745

Yes.  I believe that #800 removed the last user of this API

Those should probably be replaced by uses of the new ffi::DetailedError

(That's the substitution that #800 made in the other APIs)


Create Slide Deck Articulating Relevant Systems Aspects

Create powerpoint with relevant features for assignment 3 and upload to wiki

Not required - so closing.


Full screen

Describe your bug here.
The game is no longer fullscreen when i press f on the title screen
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Source
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
no

alt + enter

I didnt even kmow this existed :0


HTML code error

Test demo version on this website : https://validator.w3.org/nu/?doc=https%3A%2F%2Fpwgdemo.kuther.net%2F

That's caused by my custom code for the banner on the demo site. Does not affect the plain distribution.


remove pyrenew_demo from tutorials

removed pyrenew_demo.qmd and pyrenew_demo.rst from the tutorials folder

Thanks @sbidari!


If the SeisNoise.jl and SeisIO can batch process cross-correlation function between lots of station Seisdata?

Dear professor,
I want to know how to use the package of SeisNoise.jl and SeisIO to batch process cross-correlation function between lots of station Seisdata. I hvae got one hour station data cross-correlation function between two station.My codes are as follow.
(base) [Fangfan@localhost ~]$ cd /home/Fangfan/huanan2022/test
(base) [Fangfan@localhost test]$ julia
julia> using Pkg
julia> Pkg.build()
julia> using SeisNoise,SeisIO,Plots
julia> fs = 40. # sampling frequency in Hz
julia> freqmin,freqmax = 0.1,0.2 # min and max frequencies
julia> cc_step, cc_len = 450., 1800. # corrleation step and length in S
julia> maxlag = 60. # maximum lag time in correlation
julia> S1=read_data("sac","2<IP_ADDRESS>.14.50.YD202.BHE.sac")
julia> S2=read_data("sac","2<IP_ADDRESS>.12.12.YD204.BHE.sac")
julia> merge!(S1)
julia> merge!(S2)
julia> ungap!(S1)
julia> ungap!(S2)
julia> process_raw!(S1,fs)
julia> process_raw!(S2,fs)
julia> R = RawData.([S1,S2],cc_len,cc_step)
julia> detrend!.(R)
julia> taper!.(R)
julia> bandpass!.(R,freqmin,freqmax,zerophase=true)
julia> FFT = rfft.(R)
julia> whiten!.(FFT,freqmin,freqmax)
julia> C = correlate(FFT[1],FFT[2],maxlag)
julia> clean_up!(C,freqmin,freqmax)
julia> abs_max!(C)
julia> plot(C)
julia> savefig("2.png")
The attachment is the result of the program running

You'll have to write scripts (.jl files) to do exactly what you want. You can take a look at the scripts in this repository for examples: https://github.com/tclements/SeisNoise_paper


Suggestion: always-on as an option

Hello,
Can you add an always-on option (like . or whatever it may be for equivalent, I haven't managed to figure it out as I'm unfamiliar w/ JS-style coding.).
Thanks

@nemethviktor, I do not recommend it, see https://github.com/jswanner/DontF-WithPaste/issues/88.
If you must, a pattern of . will do it

Noted, thanks.


Update index.js for Gatsby video lesson #6...

In the new version of Gatsby (v3), CSS modules need to be imported like (as ES Modules) or you get an error. :) Love your teaching!

It worked for me! Thanks


Monkey script works well in chrome, but not kiwi, due to window.onload function not called

Describe the bug
Monkey script works well in chrome, but not kiwi, due to window.onload function not called. If link is open at the same tab, then the window.onload not work. but if it is opened at another tab  or just   click the address bar, then click enter  to load , the window.onload function works well as chrome.
To Reproduce

Insatall ViolentMonkey or other monkey plugin
Write a simple monkey script, just as window.onload=function(){console.log("onload fired.")}
visit https://m.xuangubao.cn/selected-articles And click any one item from the list
the url now should be https://m.xuangubao.cn/article/<***ArticleId> , monkey script with window.onload not work
click the address bar, then click enter  to load Again, the window.onload function works well as chrome

Expected behavior
window.onload is fired when href changed and paged loaded.
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):

Device: Xiaomi
Android Version : 8 and 11
Kiwi Browser Version 99 and 101

Additional context
Add any other context about the problem here.

Sorry, maybe this is a issue related to the target website


Feature Request

This is a great little repo!
Any chance of adding handling for BillingRetry and Grace period transaction states?

Hi @224XS,
I will see what I can do here.

Thank you Pavel!I know you are busy with other things.IraSent from my iPhoneOn Oct 17, 2022, at 7:10 AM, Pavel T @.***> wrote:
Hi @224XS,
I will see what I can do here.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

@224XS I was looking into BillingRetry and Grace period transaction states and I'm thinking to introduce some handler on at the top level and you can listen to the changes


Ignore Sorting "Hidden" Objects

Radio box/toggle for ignoring "Hidden" objects when applying the sort

Can do this using flags on the select command, but may run into issues related to #12 being unresolved

as/if you encounter bugs, create a new issue


added HasHeaders function

Closes #17

Added HasHeader Function

FYI looks like AppVeyor is failing build on all the pull requests on this project with the same error messages. Seems to be an installation issue with NUnit.

Yeah, a "nuget restore" must be called before the build run. If you're in AppVeyor it's under:
Settings -> Build -> Build Before Script
Add "nuget restore" in the text area

Done, minor differences due to tab/spaces but tests pass

I actually was looking at this...should you have coding guidelines? One of
the guidelines could be about useing spaces or tabs. My personal guide is
to usually follow the format of the existing page. Or when you accept PR
into a dev branch reformat it for consistency, squash it and then merge
master?
On Apr 9, 2016 12:40 PM, "Paul Hatcher"<EMAIL_ADDRESS>wrote:

Done, minor differences due to tab/spaces but tests pass
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/phatcher/CsvReader/pull/19#issuecomment-207816718

I normally put in a StyleCop file, but as the code was acquired rather than written I didn't do so for this project.
I decided to tidy up the code style as part of the refactoring so I'll probably add one on the next commit


DPL-599 Change to Heron Quanthub process for tapestation output data

Summary
As Heron Lab. we are looking to use a different analysis method which gives an output text file which has a different data structure and will require a change to Quanthub.
Story
The data structure of the new Tapestation file assigns molarity to different peaks the software detects in our samples (Peak Molarity [nmol/l]).
The peaks are variable in size, but we always want the peak molarity of the right library size at approximately 600bp, and can ignore the other peak concentrations. The number of peaks present per sample also varies, so the text file won’t always have the concentration we want in a universal position in its structure.
Requirement
We would like to add a step to Quanthub that allows us to manually select the peaks we want to submit.
Who are the primary contacts for this story
Ben (bm21), Marios (mp37)
Related RT request
https://rt.sanger.ac.uk/Ticket/Display.html?id=762132
For referrence and examples of old/new output files (attached to story also)

The new output format is a result of using a different mode of TapeStation operation to find a number of peaks for each pool measured.
There will be a max of 5 pools in each csv. The first pool "Ladder" should be ignored.
It's seems likely that the peak closest to 600 bp should be the one selected for the QC calculated - however it was felt there still needed to be a human check involved to be sure. Adding this ability within QuantHub would greatly complicate the QuantHub UI and make this a large story.
An alternative to this is for the users to manually select the correct peak for each well and create a csv in the existing format for upload into Quanthub. While more fiddly if a manual check is needed anyway - this is not a lot more work for the users.

Closed as not needed


Upgrade to Spring Boot 3

The Java components should be upgraded to Spring Boot 3, which provides better support for building native executables.

[ ] UI
[ ] Orders
[ ] Cart

Migration guide: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0-Migration-Guide

I am working on this issue

Closed by #111


fix: COLORTERM quoting on Windows

On Windows, when COLORTERM is set, you'll get an error like this when trying to run any Lima command. exit status 255 with stderr:
command-line line 0: invalid quotes

This is an issue because some programs (like VSCode's integrated terminal) set COLORTERM by default.
I tracked this down to the quoting of COLORTERM in the SendEnv SSH option. The input to SendEnv doesn't even technically need to be quoted, but following the conventions already in the file, I just put it in single quotes instead, and it still works as expected.

Also, out of scope for this PR, but the way we're adding COLORTERM to the sshd's AcceptEnv is broken on some modern distro's (like Fedora) because they don't ship an /etc/ssh/sshd_config with AcceptEnv in it at all.
I can make an issue or PR for this separately.

The input to SendEnv doesn't even technically need to be quoted, but following the conventions already in the file, I just put it in single quotes instead, and it still works as expected.

If single quotes work everywhere, then I wonder why we have separate quotes for Windows and Linux in https://github.com/lima-vm/lima/blob/88c89165273d87b33753a593af867b20c1d1c67d/pkg/sshutil/sshutil.go#L139-L144
However, when I tried to test if either form works, I noticed that single, double, or no quotes, none would actually import the COLORTERM variable into the instance:
$ lima sudo grep AcceptEnv /etc/ssh/sshd_config
AcceptEnv COLORTERM LANG LC_*
$ COLORTERM=truecolor lima env | grep COLOR

Any idea what is going wrong?

some modern distro's (like Fedora) because they don't ship an /etc/ssh/sshd_config with AcceptEnv in it at all.

This is also true for Alpine 3.19.
I would suggest to write the AcceptEnv to a file in /etc/ssh/sshd_config.d when possible, and only patch /etc/ssh/sshd_config as a backup when the directory doesn't exist.

none would actually import the COLORTERM variable into the instance

did you restart the initial ssh session, such as limactl restart or rm ssh.sock?
(I know I know, you are supposed to issue a ssh -O exit with the ssh config)
I didn't actually test the proposed change.

The input to SendEnv doesn't even technically need to be quoted, but following the conventions already in the file, I just put it in single quotes instead, and it still works as expected.

If single quotes work everywhere, then I wonder why we have separate quotes for Windows and Linux in
https://github.com/lima-vm/lima/blob/88c89165273d87b33753a593af867b20c1d1c67d/pkg/sshutil/sshutil.go#L139-L144
However, when I tried to test if either form works, I noticed that single, double, or no quotes, none would actually import the COLORTERM variable into the instance:
$ lima sudo grep AcceptEnv /etc/ssh/sshd_config
AcceptEnv COLORTERM LANG LC_*
$ COLORTERM=truecolor lima env | grep COLOR

Any idea what is going wrong?

some modern distro's (like Fedora) because they don't ship an /etc/ssh/sshd_config with AcceptEnv in it at all.

This is also true for Alpine 3.19.
I would suggest to write the AcceptEnv to a file in /etc/ssh/sshd_config.d when possible, and only patch /etc/ssh/sshd_config as a backup when the directory doesn't exist.

I was able to verify the COLORTERM change on both Windows and Linux. I haven't tested if it works for the other special-cased options in sshutil yet. When I initially special-cased those quotes, I just left them as double quotes since I wasn't sure if there was a weird edge-case I wasn't aware of, but I can go back and test switching those to single quotes, at least on macOS.
As for why you weren't able to get COLORTERM to work, I just tried it on Fedora and followed @afbjorklund's steps:

Make sure AcceptEnv is configured properlylimactl shell <instance>
cat <<EOF >>/etc/ssh/sshd_config.d/50-lima-cidata.conf
AcceptEnv=COLORTERM LANG LC_*

EOF

Make sure the file has the right permissionssudo chown root:root /etc/ssh/sshd_config.d/50-lima-cidata.conf
sudo chmod og-rwx /etc/ssh/sshd_config.d/50-lima-cidata.conf

Restart sshd (sudo systemctl restart sshd)
Exit Lima shell and delete ssh.sock (rm $LIMA_HOME/<instance>/ssh.sock)
Make sure COLORTERM is set on your host and then check if its propagatedecho $COLORTERM
truecolor
limactl <instance> shell echo $COLORTERM
truecolor

You can see that my command is using singe quotes in the ps aux | grep COLORTERM output (truncated for readability):
 ... /usr/bin/ssh ... -o SendEnv='COLORTERM' -q -p 50646 <IP_ADDRESS> ...

did you restart the initial ssh session, such as limactl restart or rm ssh.sock?

No, shouldn't this happen automatically via https://github.com/lima-vm/lima/blob/9a964c0fa9c012d9b2ca94495666220f0abdf0e3/pkg/cidata/cidata.TEMPLATE.d/boot/11-colorterm-environment.sh#L14-L24
Also limactl restart doesn't seem to be implemented 😄

4. Exit Lima shell and delete ssh.sock (rm $LIMA_HOME/<instance>/ssh.sock)

I see that it works with these steps with Fedora, and I think the PR is fine as-is, so I approved it.
But there is something wrong with the implementation when it doesn't work out-of-the-box for the default instance. Even restarting the instance doesn't make it work for me. But that is unrelated to your PR, so I'll open a separate issue (plus one for Fedora not having an AccentEnv line in /etc/ssh/sshd_config).

The change looks fine; I would prefer to just drop the quotes completely.

Yeah, I think dropping the quotes entirely makes sense too. I'll make a revision.

Exit Lima shell and delete ssh.sock (rm $LIMA_HOME/<instance>/ssh.sock)

I see that it works with these steps with Fedora, and I think the PR is fine as-is, so I approved it.
But there is something wrong with the implementation when it doesn't work out-of-the-box for the default instance. Even restarting the instance doesn't make it work for me. But that is unrelated to your PR, so I'll open a separate issue (plus one for Fedora not having an AccentEnv line in /etc/ssh/sshd_config).

Thanks for making these issues for tracking. I'll try to make some followup PRs to fix this for the different distros we test (especially default).
As a followup: Does Lima aim to support any distros that ship different sshd's with different requirements for these variables, or just different variables entirely?

As a followup: Does Lima aim to support any distros that ship different sshd's with different requirements for these variables, or just different variables entirely?

I don't understand what you are asking. Do you want to be able to add additional variables to AcceptEnv, or are you asking about something else?

As a followup: Does Lima aim to support any distros that ship different sshd's with different requirements for these variables, or just different variables entirely?

I don't understand what you are asking. Do you want to be able to add additional variables to AcceptEnv, or are you asking about something else?

Just to clarify, this is unrelated to this PR and more for followup fixes to the issues you created.
OpenSSH specifies AcceptEnv variables one way, are there any other distros / sshds (like dropbear or something) that Lima supports or aims to support, and that we know do thing differently? It doesn't matter that much right now if everything is expected to use OpenSSH.

if everything is expected to use OpenSSH.

I think this is the current assumption. We can think about generalizing things when there is an actual use-case?

I'll make a revision.

Just to make sure: I haven't merged because you said you would still want to remove the quotes, so I'm waiting for that change. Otherwise let me know if you want to merge as-is.

I'll make a revision.

Just to make sure: I haven't merged because you said you would still want to remove the quotes, so I'm waiting for that change. Otherwise let me know if you want to merge as-is.

Was just triple checking without quoting, should be good now


Add Ownership Transfer Detection to Attack Detector bot

Example alert of DApp Node attack: https://explorer.forta.network/alert/0x47779c362258b695e73678a74571368e66dceed14a62fb950b5f221325ae4454
Bot: https://explorer.forta.network/bot/0x7704a975c97ed444c0329cade1f85af74566d30fb6a51550529b19153a0781cb

The ownership transfer event can be really crucial to detect or prevent attacks

fixed in https://github.com/forta-network/starter-kits/pull/278


Setting balloning to 1 set minimum memory to 1MB

According to the docs ballooning should be set to 0 or 1, but it's actually according to the code it's a int to set minimum memory.

fixed with #327


Support reading of cluster stats and full response from DB stats

Backported from #85

Codecov Report

Merging #86 into stable1.x will increase coverage by 0.02%.
The diff coverage is 100%.

@@              Coverage Diff              @@
##           stable1.x      #86      +/-   ##
=============================================
+ Coverage      96.96%   96.99%   +0.02%
=============================================
  Files             20       20
  Lines           1251     1263      +12
=============================================
+ Hits            1213     1225      +12
  Misses            27       27
  Partials          11       11

Impacted Files
Coverage Δ

db.go
100% <100%> (ø)
:arrow_up:

chttp/chttp.go
98.52% <100%> (ø)
:arrow_up:

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 6f73dda...40c7d05. Read the comment docs.


Blade scrolls back to far left after closing right blade

Steps:

Open iframe blade from App Services list
Make it so blade takes up all screeen
Go to "Functions app settings" / "Go to App Service Settings" to open site blade.
Close site blade

Result: the App Services blades scrolls back into view.

I logged this bug against the Ibiza team:
RDBug 6069469:[AppBlade] Browse blade slides back into view after closing a child blade of the app blade

@Tuesdaysgreen - any updates?

This is fixed.


Show current value for Selects or Checklists, if any.

For rendering purposes it's useful for the generated tag to include the field's current value, before the javascript is active.

Hey, thanks for contribution. May I merge it now?:)

Absolutely! Thanks!


How do objects created using JsCreateExternalObject get cleared up

I was wondering how you are able to clean up objects created on the heap and used via JsCreateExternalObject.
I tried using the FinalizerCallback (in my previous issue #4679) but whenever i have that referenced in my JsCreateExternalObject call (and not even do anything) I get all sorts of crashes and corruptions happening. So I must be doing something wrong.
I tried looking at one of the hosting samples and that doesn't delete the GLPoint objects created so it must be leaking unless JsCreateExternalObject auto-cleans up?

You can take a look at how we do things in node-chakracore, e.g. in https://github.com/nodejs/node-chakracore/blob/master/deps/chakrashim/src/v8functiontemplate.cc. The general shape of things is we new up some native thing, and then wrap it in an ExternalObject with an appropriate finalizer function. In that finalizer, we cast the void * argument back to the correct type that we expect it to be, and then delete it to clean up.
As long as you are passing plain c-style functions (not member functions etc, but static class functions are fine) as the finalizer callback then nothing strange should happen when calling JsCreateExternalObject.

Hmm, that's effectively what i am doing but its crashing when disposing of the runtime with "Object reference not set to instance" or other strange messages, sometimes even with memory corruption errors. These all go away as soon as I remove the finalizer.

I ran into similar issues when trying to read properties off of JS objects in my finalizers.  As the finalizer may be called during runtime destruction (i.e. after the JsContextRef is out of scope) you can only safely access native resources in your finalizer.

I get exceptions and all sorts of odd errors if i just setup a FinalizerCallback which is empty and does nothing. As soon as i pass null as my callback in the JsCreateExternalObject function, those exceptions go away.

You are still using your c# wrapper, is that correct? Are you making sure to pass a plan c-style function to JsCreateExternalObject? Could your wrapper be taking or converting references somehow?

Yes still using the C# Wrapper, yes its a plain static function:
private static void ImageFinalizeCallback( IntPtr dataPtr )
{
    // empty
}

var image = new MagickImage( "d:\\file.png" );
var imageHandle = GCHandle.Alloc( image );
var externalInstanceObject = JavaScriptValue.CreateExternalObject( GCHandle.ToIntPtr( imageHandle ), ImageFinalizeCallback );
externalInstanceObject.Prototype = PawaImagePrototype;

But even an empty one causes exceptions on disposing of the runtime. The only thing that works is passing null as the callback to JavaScriptValue.CreateExternalObject (which is a simple wrapper around JsCreateExternalObject.
I am really confused!!

Maybe your finalizer function gets GC'ed? Try making a delegate holding on to the finalizer and then pass the delegate to JsCreateExternalObject to keep it alive.

Yeah, very good point. This would explain the oddities and also that sometimes it gets called, sometimes it doesn’t. Don’t know why I didn’t think of that as you have to do that for the FunctionCallbacks to ensure they don’t get GC’ed.
I will try in the morning and feedback

Admittedly I'm not that familiar with the inner workings of the CLR, but I'm confused on 1) why a function defined as part of a class and presumably baked right into the IL would (or even could) ever be GC'd, and 2) how wrapping it in a delegate prevents that same function from being GC'd once the delegate goes out of scope.

Basically in .NET when you pass a function to unmanaged code, .NET doesn't know unmanaged side has an implicit reference after that line of code and will proceed and GC. Having a static delegate is an explicit way of keeping that reference in .NET world.

That was it, thanks everyone. Seems obvious now, argh!!


Support metadata input in Mathching API

Title: Support metadata input in Matching API
Description:
The Matching API currently doesn't support Metata Input. It would be valuable if Envoy could support it.
For instance, we prefer using Matcher over RBAC rules for authorization due to its flexibility. However,  while  RBAC allows specifying metadata as the principal, the matcher API currently lacks this capability, limiting use cases such as JWT claims as principals.
The supported Matching Inputs: https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/matching/matching_api#extension-category-envoy-matching-http-input
@arkodg

Sure, this would be a great addition, and can follow similar code to filter state input.

Hey @zhaohuabing Are you working to implement it?

/assign

@vikaschoudhary16 when you start implementing this, my use case is that I would like to use JWT claim like "email"<EMAIL_ADDRESS>for RBAC. Also I would like to use JWT []string claims. That can be like "roles": ["foo", "bar"]. If these array claims are forwarded to backends, these will be shown in headers as base64 encoded. It is pretty difficult to do authorization for base64 encoded string. So is there somekind of shortcut to base64 decode and check is there value in array?

@zetaab I have tested changes in the likes PR. If there is a claim like "roles": ["foo", "bar"] in the token, matcher which is added in the linked PR is able to authorize on specific claims like foo allowed and bar denied etc.

So is there somekind of shortcut to base64 decode and check is there value in array?

You can test with my PR your usecase, if you want to give it a quick try. Functionally it should be working.

This would also be extremely useful for ExtensionWithMatcher to allow doing things such as setting HTTP headers depending on a specific JWT match.
Looking forward to seeing this included in the mainline code.

I can confirm that this patch indeed works nicely with ExtensionWithMatcher filter. For example, I can trigger HeaderMutation based on a specific metadata match (envoy.extensions.matching.common_inputs.network.v3.DynamicMetadataInput input with type.googleapis.com/envoy.extensions.matching.input_matchers.metadata.v3.Metadata custom_match under single_predicate).


Adaptive Lighting missing since update.

Prerequisite

[X] Yes, I've read the readme completely.

Cache

[X] Yes, I've cleaned accessory cache and the issue still exists.

Version
1.7.0. Beta 44
Device Infomation JSON File
Since beta updates, the adaptive lighting settings are not available.

Device Control Mode
None
Logs
No response
Other Infomations
All else functioning correctly

It was disabled by default since v1.7.0-beta.42 please see docs to enable.

Thanks,
However can you walk me through enabling it, as it worked well with me.

https://github.com/0x5e/homebridge-tuya-platform/blob/develop_1.7.0/ADVANCED_OPTIONS.md#configuration


Fix sample plc file in language-plutus-core/bench

stack bench language-plutus-core fails because one of the benchmarks (type-check) involves deserialising the CBOR file script.plci, which was created using an old version of the serialisation code.  It's not clear what the source of this file was, so it's not easy to re-create it.  We should put a PLC source file in here together with the serialised version in order to make it easier to update the benchmarks.  I have no idea where the CBOR file came from, so we should use something different, probably a validator from one of the sample contracts.  (I noticed this a while ago then forgot all about it).

It also doesn't seem like we should need to start with a checked-in serialized file either. TBH, those benchmarks could probably do with a do-over.

TBH, pick any PLC code. They haven't been picked for any specific reason, I mostly took a bit of PLC code I found somewhere and ran it through the CeK to check if everything looks ok and to track changes of the cost model.


QnA Maker bot on Teams - apostrophe problem

Hi, I've made a QnA Maker knowledge base and one answer has an apostrophe that in Teams returns a different encoding in the response, for example, the answer to one question in Teams to my bot was:
My name is bombot. I'm a bill of materials bot for the training team. I provide links to resources.

A general tip for watching that your utilization of apostrophes is right is to change the phrase around so that the part before the apostrophe turns into the last word. If it still has a similar meaning, the meaning, was right.
anagram finder...

Are you seeing this in the Teams web client, desktop, or ?  In the emulator, I can replicate the problem if I display in monotype (e.g. type ' and you get: '), but in emulator only...

Hi,
The QnA Maker returns string as HTML encoded format. Unfortunately some clients like Teams do not decode before rendering. We have raised this issue with them.
As a work around for now you can decode before you send the message yourself:
///
/// Simple Dialog, that invokes the QnAMaker if the incoming message is a question
///
[Serializable]
public class FAQDialog : IDialog
{
public async Task StartAsync(IDialogContext context)
{
context.Wait(MessageReceivedAsync);
}
public async Task MessageReceivedAsync(IDialogContext context, IAwaitable argument)
{
var message = await argument;
await context.PostAsync(WebUtility.HtmlDecode(CallQnAMaker(message.Text)));
context.Wait(MessageReceivedAsync);
}
public string CallQnAMaker(string query)
{
string responseString = string.Empty;
var knowledgebaseId = ; // Use knowledge base id created.
var qnamakerSubscriptionKey = ; //Use subscription key assigned to you.
//Build the URI
Uri qnamakerUriBase = new Uri("https://westus.api.cognitive.microsoft.com/qnamaker/v1.0");
var builder = new UriBuilder($"{qnamakerUriBase}/knowledgebases/{knowledgebaseId}/generateAnswer");
//Add the question as part of the body
var postBody = $"{{"question": "{query}"}}";
//Send the POST request
using (WebClient client = new WebClient())
{
client.Encoding = System.Text.Encoding.UTF8;
//Add the subscription key header
client.Headers.Add("Ocp-Apim-Subscription-Key", qnamakerSubscriptionKey);
client.Headers.Add("Content-Type", "application/json");
responseString = client.UploadString(builder.Uri, postBody);
}
QnAMakerResult response;
try
{
response = JsonConvert.DeserializeObject(responseString);
}
catch
{
throw new Exception("Unable to deserialize QnA Maker response string.");
}
}
//Callback, after the QnAMaker Dialog returns a result.
public async Task AfterQnA(IDialogContext context, IAwaitable argument)
{
context.Wait(MessageReceivedAsync);
}
}
class QnAMakerResult
{
///
/// The top answer found in the QnA Service.
///
[JsonProperty(PropertyName = "answer")]
public string Answer { get; set; }
///
/// The score in range [0, 100] corresponding to the top answer found in the QnA    Service.
///
[JsonProperty(PropertyName = "score")]
public double Score { get; set; }
}

@michhar, I'm assuming @pchoudhari's answer helped you out mitigating the issue, so I'm closing this as resolved. Please feel free to reopen it if this is not the case. Thanks!

I also faced this issue, then I created the message with below formats in MS bot Code(app.js).
var customMessage = new builder.Message(session)
        .text("I didn't quite get that. For us ......")
        .textFormat("plain")
        .textLocale("en-us");
    session.send(customMessage);

Refer Official URL for V3: https://docs.microsoft.com/en-us/azure/bot-service/nodejs/bot-builder-nodejs-message-create?view=azure-bot-service-3.0


Botany guide chemicals

About the PR

A section on "chemicals" has been added to the Botanist's Guidebook, outlining the effects of chemistry on a plant.
Why / Balance

The special effects of chemicals on plants can only be learned in code, so it will be easier for beginners to master the mysteries of botany.
I assume that these peculiarities of substances on plants are known to a few people.
Guidebook Update.
Technical details

Added text to Resources/ServerInfo/Guidebook/Service/Botany.xml
Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

:cl: AstolfoFan, Ilya (Elliott)

add: A "chemicals" section has been added to the botanist's guidebook

Please do swabbing next

Please do swabbing next

What are you talking about?

The red and green colour coding being used near interchangably for negative and positive effects is very confusing.
Either make it consistent or only use the colours as a highlighter for what is important in the text.

The red and green colour coding being used near interchangably for negative and positive effects is very confusing.
Either make it consistent or only use the colours as a highlighter for what is important in the text.

Okay

cl should be :cl: Alice, Bob, Charlie

cl should be 🆑 Alice, Bob, Charlie

Thanks

Please do swabbing next

What are you talking about?

I think they mean expanding cross polinating effects or something

Please do swabbing next

What are you talking about?

Cross pollinating. Nobody knows how it works... Including me...

Cross pollinating. Nobody knows how it works... Including me...

Unfortunately I don't really know how to do cross pollination. Especially I am not ready to write a guide on this topic. This PR is a guide from discord and my code analysis.

cross pollination work like this: you swab a first plant and then dust the pollen on another, transferring some trait(s) from the first plant to the second one, it's completely random

cross pollination work like this: you swab a first plant and then dust the pollen on another, transferring some trait(s) from the first plant to the second one, it's completely random

I'll think about it. Right now, I'd like to take care of this PR


Release version 0.9

Is there any plan to release version 0.9 and upload to PyPI? Would be great to have the HTTPS fix live.
Thanks!

Good point. I do it now. Thanks


nf_resnet50 is not working in pytorch XLA

i was trying to use nf_resnet50 model in this notebook : https://www.kaggle.com/mobassir/faster-pytorch-tpu-baseline-for-cld-cv-0-9
like other models,i followed these steps for using this model :
i include this updated dataset : https://www.kaggle.com/mobassir/timm2021 in my notebook(latest version of this repository), in this notebook : https://www.kaggle.com/mobassir/faster-pytorch-tpu-baseline-for-cld-cv-0-9
and then replace these imports :
package_paths = [
    '../input/pytorch-image-models/pytorch-image-models-master', #'../input/efficientnet-pytorch-07/efficientnet_pytorch-0.7.0'
    '../input/image-fmix/FMix-master'
]
for pth in package_paths:
    sys.path.append(pth)

with this :
package_paths = [
    '../input/timm2021/pytorch-image-models-master', #'../input/efficientnet-pytorch-07/efficientnet_pytorch-0.7.0'
    '../input/image-fmix/FMix-master'
]
for pth in package_paths:
    sys.path.append(pth)

then use for example,
kernel_type = 'nf_resnet50'
net_type = 'nf_resnet50'
and model class that i used is  like this :
class cassavamodel(nn.Module):
    def __init__(self, model_arch, n_class, pretrained=True):
        super().__init__()
        self.model = timm.create_model(model_arch, pretrained=pretrained)
        n_features = self.model.head.fc.in_features
        self.model.head.fc = nn.Linear(n_features, n_class)

    def forward(self, x):
        x = self.model(x)
        return x

but when i try to train the model the code hangs here  :

def _mp_fn(rank, flags):
    global acc_list
    torch.set_default_tensor_type('torch.FloatTensor')
    res = train_model()

FLAGS={}
xmp.spawn(_mp_fn, args=(FLAGS,), nprocs=8, start_method='fork')

i waited almost 1 hour and nothing got printing and didn't get any error as well, all other models are working on tpu but don't know why i face this issue with nf_resnet50 or any other normfreenets.
i've tested the same baseline on gpu and it works fine there,how can i solve this issue?i am working on kaggle kernel, thank you

I don't test/try these models in torch XLA right now. The process is too time consuming with the TPU/XLA state. I am considering revaluating that when PyTorch supports TPU-VM (sometime in March likely).
You'll have to further debug the issue and trace down the problem if you'd like a fix for this.

@mobassir94 I would follow the PyTorch XLA troubleshooting guide.
What's likely happening is that there are operations that are not lowered and not supported by PyTorch XLA. You can discover which operations these are using the xla metrics report (explained in the troubleshooting guide) and request these operations to be lowered by opening an issue in the PyTorch XLA repository (or if you have C++ knowledge you could lower them yourself and submit a PR).
FYI, I had a similar issue with timm's EfficientNets. We discovered the SiLU operation was not lowered and we got that lowered and now timm's EfficientNets work with reasonable speed with PyTorch XLA.

Linking the corresponding XLA issue for reference. std_mean and var_mean are not lowered.


Add dates?

Hey, this is super useful, but in a quick glance if I'm looking for something that came out only in (let's say), the last 2 years, it'd be more informative to add the years of release next to the names as well!
But an awesome job with this!

I agree and to expand: it'd be cool have different sorting methods (sort by date, number of citations). But I'm not sure how realistic the proposal is.

I didn’t mean you sort it differently. But I guess it’s reasonable to do something like -
DC-GAN (20xx)
Conditional GAN (20yy)
And so on, and keep them sorted in alphabetical order.
Regards,
Katha Chanda

On 16-May-2017, at 10:22 AM, Bruno Gavranović<EMAIL_ADDRESS>wrote:
I agree and to expand: it'd be cool have different sorting methods (sort by date, number of citations). But I'm not sure how realistic the proposal is.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/hindupuravinash/the-gan-zoo/issues/10#issuecomment-301853585, or mute the thread https://github.com/notifications/unsubscribe-auth/AZPmea2ffLDLYlszhqJ1aU5vuwGBP9ovks5r6dtHgaJpZM4Nb5j-.

One other possible useful way sorting would be to simply group them by year. Or alternatively to maintain multiple lists in the repository in different documents.

@kathachanda Thanks for compliments :) The suggestion to add years sounds good to me too, can add them in the format you propose. Name - Title ( Year ) Example: GAN - Generative Adversarial Networks (2014)
@pwaller @bgavran Sorting the list is something that I wanted to do right from the beginning, but within markdown is not possible unless the readers install some third party plugins. Other than year and citations, I would like to add links to code implementations, status if selected for ICLR etc to the list! But I couldn't come up with a decent format like a sortable table for the list which would make it easy to read.

Here's an example of how it might look. I just took the dates in the arxiv URL, and sorted by date.
https://github.com/pwaller/the-gan-zoo/tree/put-in-table

@pwaller This does jumble the alphabetic order of the papers. As you suggested, we can put this date sorted list in a separate .md apart from the original alphabetically sorted list. Would that be better?

I also gave github's .csv/.tsv support a try. @hindupuravinash : it is searchable!
https://github.com/lgalke/the-gan-zoo/blob/master/gans.tsv
However, the links are not clickable anymore, and I have no idea how you could trick github's tsv support to display links (maybe <a> would work?).
I'd prefer some kind of hierarchy where the top level sorting order are years (maybe just as headers) and the lower levels are either alphabetically or month, alphabetically.

@lgalke This looks super, didn't know about this before. Will see if I can get link clickable!

Thanks to @lgalke there's a table now, which is listed in chronological order and is searchable by years/titles (and anything else too, but I found these two to be most helpful).


add workflow by GitHub_actions

Run test(#9) on push and pull_request.

@wakamezake
Sorry for the late review!
LGTM! Thank you!


Improved editor for Ace settings

What does it do ?
Called MODx.ux.Ace.replaceComponent() which gives MODX tag and syntax highlighting.
The only oddity is that when saving, 2 values are given in value, because MODx.ux.Ace.replaceComponent() seems to create a new editor but not remove the old one. And I had to add $value = $value[1]; to fix it. Maybe @Mark-H can give a better fix.
Before:

After:

Related issue(s)/PR(s)
N/A

The idea is extremely nice, I love it!!! 🚀
But for my use-cases (CSS/JS) using text/html is the wrong one.
Ideally we would give the admin the possibility to choose from all available mime-types.
What do you think?

Yes, it would be convenient to set the mme-type either manually, or load it with a list from MODx.ux.Ace.mimeTypes.
If you have the time and opportunity - add a fix to this PR.

I'm thinking this could be a hard-coded list of all that mimeTypes, but it would need to be in a dropdown or something.
I will look into it in the near future 👍


Inserting ( trying to ) insert a c language snippet should give example in C language - But it gives json language example

Issue Type: Bug
1 ) Try to insert a snippet, while doing a project, in C

See the example

VS Code version: Code 1.23.0 (7c7da59c2333a1306c41e6e7b68d7f0caa7b3d45, 2018-05-03T15:23:19.356Z)
OS version: Linux x64 4.15.0-20-generic

@raikrahul Please provide actionable information. Thanks


A Draft for the Spaces Page

The ./blogpost4.html file contains the Spaces Page designed to direct the customer towards their needs and the online budget calculator indexLayout.html . It has not been linked from the homepage in the Navbar/Header component, but that can be easily done.
Link to a view of the page
https://youtu.be/Z4YMwhhB-y0

Good Work @Nkca122 Buddy.
please link the page with home redirect from navbar.


generateadress

Background
Describe your issue here.
Your environment

version of lnd
which operating system (uname -a on *Nix)
version of btcd, bitcoind, or other backend
any other relevant environment details

Steps to reproduce
Tell us how to reproduce this issue. Please provide stacktraces and links to code in question.
Expected behaviour
Tell us what should happen
Actual behaviour
Tell us what happens instead

Your issue has no details. Are you asking how to create addresses?

What the f. I didn't open this? Sorry, something seems fishy here, disregard it.


Unhandled Methods in Power.log (Possibly related to Spectator mode)

I get these warnings when parsing a large Power.log file. The application also crashes before creating an XML file.
Warning: Unhandled method 'PowerSpellController [taskListId=43].InitPowerSpell'
Warning: Unhandled method 'GameState.OnEntityChoices'
Warning: Unhandled method 'GameState.OnEntityChoices'
Warning: Unhandled choices: 'id=1 Player=GameEntity TaskList= ChoiceType=MULLIGAN CountMin=0 CountMax=3'
Traceback (most recent call last):
  File "/home/redacted/projects/hscs/HSReplay/python/main.py", line 671, in <module>
    main()
  File "/home/redacted/projects/hscs/HSReplay/python/main.py", line 665, in main
    parser.read(f)
  File "/home/redacted/projects/hscs/HSReplay/python/main.py", line 331, in read
    self.add_data(*sre.groups())
  File "/home/redacted/projects/hscs/HSReplay/python/main.py", line 348, in add_data
    self.handle_choices(ts, data)
  File "/home/redacted/projects/hscs/HSReplay/python/main.py", line 446, in handle_choices
    self.current_choice_node.source = entity
AttributeError: 'PowerLogParser' object has no attribute 'current_choice_node'

Full command and output: https://gist.github.com/SpectralCoding/235340f9e0fc2b60a628
Full power.log file (38MB): https://files.spectralcoding.com/files/projects/hscs/hsreplay/issue20151011/fe9a9b1fb14dafa308bf0ab94befcd18.log

There's still some warnings but it won't crash now.


fix: add fallback for kitty during checkhealth

closes #138

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


Title position

A screenshot says enough:

Is it possible to move the title up?

It might be possible to avoid this by setting more conservative fig_bounds such as:
%%opts Layout [fig_bounds=(0.1, 0.1, 0.9, 0.8)]

which expresses where the axes are to be drawn in unit space as a tuple of (left, bottom, right, top). You'll want to adjust the top.

Going to close this as there is a workaround and it won't get addressed without rewriting the layout code (which is on the roadmap).


Drop disable-notes feature.

Outside the test repo, this feature has been used exactly once in the last year.

For now I'm preserving the code that prevents adding notes, just in case someone uses the feature for a new record before this gets pushed out. I'll clean it up in a later PR, as part of some refactoring I'm doing for the new UI.

You might be wondering why I changed the given names used for a couple of tests. Those tests failed with this change when I ran all server tests (tools/server_tests), but each passed individually. We've had issues with tests (specifically in person_note_tests) interfering with each other before, and in this case it turns out changing the names resolves it. If that file was going to be around in the long term I'd try to dig into what's going on, but it's getting gradually split up as I do the Django migration, so it doesn't seem worth debugging further.

LGTM


(config): generate chain name in config generation

Codecov Report

Merging #105 (3eacec2) into release-1.0.0 (c342153) will decrease coverage by 0.00%.
The diff coverage is 100.00%.

@@                 Coverage Diff                 @@
##             release-1.0.0     #105      +/-   ##
===================================================
- Coverage            53.53%   53.52%   -0.01%
  Complexity             385      385
===================================================
  Files                   42       42
  Lines                 3413     3408       -5
  Branches               265      264       -1
===================================================
- Hits                  1827     1824       -3
+ Misses                1400     1398       -2
  Partials               186      186

Impacted Files
Coverage Δ
Complexity Δ

.../webank/wecross/stub/fabric/FabricStubFactory.java
8.86% <ø> (ø)
4.00 <0.00> (ø)

.../wecross/stub/fabric/ChaincodeResourceManager.java
77.00% <100.00%> (ø)
21.00 <3.00> (ø)

...k/wecross/stub/fabric/FabricConnectionFactory.java
93.58% <100.00%> (ø)
11.00 <3.00> (ø)

...a/com/webank/wecross/stub/fabric/FabricDriver.java
58.36% <100.00%> (-0.23%)
55.00 <0.00> (ø)

...m/webank/wecross/stub/fabric/FabricConnection.java
58.33% <0.00%> (+0.11%)
54.00% <0.00%> (ø%)

...ross/stub/fabric/proxy/ProxyChaincodeResource.java
56.04% <0.00%> (+0.60%)
10.00% <0.00%> (ø%)

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 e389efe...3eacec2. Read the comment docs.


Bug: pyqtdeploy-sysroot sip-module didn't create a sdist.

Hi,@achille-martin
thank you for your amazing meticulous job and selfless open source.
according to tutorial, I have an issue while implementing step 1.7. I couldn't find a solution to the relevant problem online, if you know how to solve it, please let me know and Thank you so much!
The error message is as follows:
$ python3 build_app.py --pdt $PYQT_CROM_DIR/examples/demo/demo_project/config.pdt --jobs 1 --target android-64 --qmake $QT_DIR/android/bin/qmake --verbose

----- REVIEWING COMMAND-LINE ARGS -----

[INFO] The .pdt path received is: /home/gw/LYH/androidDepoly/pyqt-crom/examples/demo/demo_project/config.pdt
[INFO] The number of jobs received is: 1
[INFO] The qmake path received is: /home/gw/Qt/5.15.2/android/bin/qmake
[INFO] The request to reload the sysroot is: False
[INFO] The request to disable progress messages is: False
[INFO] The request to enable verbose progress messages is: True

----- INITIALISING AND COLLECTING VARIABLES -----

[INFO] Pdt directory location is: /home/gw/LYH/androidDepoly/pyqt-crom/examples/demo/demo_project. This is the reference directory.
[INFO] The sysroot path received is: /home/gw/LYH/androidDepoly/pyqt-crom/examples/demo/demo_project/sysroot.toml
[INFO] Setting application name to: DemoCrossPlatformApp
[INFO] The app entrypoint name received is: demo_app
[INFO] The app package path received is: /home/gw/LYH/androidDepoly/pyqt-crom/examples/demo/demo_project/demo_pkg
[INFO] The app release dir is set to: /home/gw/LYH/androidDepoly/pyqt-crom/examples/demo/demo_project/demo_pkg/../releases/2024_05_14-08_32_08

----- BUILDING TARGET SYSROOT -----

Verifying host architecture 'linux-64'...
Verifying target architecture 'android-64'...
zlib: verifying...
zlib: determining installed version from '/home/gw/Android/Sdk/ndk/21.4.7075529/sysroot/usr/include/zlib.h'.
zlib: verified v1.2.7.
Qt: verifying...
Running '/home/gw/Qt/5.15.2/android/bin/qmake -query'.
Qt: verified v5.15.2.
Python: verifying...
WARNING: Python: v3.8.19 is untested.
Python: verified v3.8.19.
SIP: verifying...
Running 'sip-module --version'.
SIP: verified v6.7.12.
PyQt: verifying...
PyQt: verified v5.15.10.
Deleting /home/gw/LYH/androidDepoly/pyqt-crom/examples/demo/demo_project/sysroot-android-64/build.
Creating /home/gw/LYH/androidDepoly/pyqt-crom/examples/demo/demo_project/sysroot-android-64/build.
SIP: installing component...
Running 'sip-module --sdist PyQt5.sip --abi-version 12'.
pyqtdeploy-sysroot: SIP: sip-module didn't create an sdist.

system information:
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.6 LTS
Release:	20.04
Codename:	focal

Linux gw-System-Product-Name 5.15.0-105-generic #115~20.04.1-Ubuntu SMP Mon Apr 15 17:33:04 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Hi @stone-cloud,
Thank you for your interest!
And thanks for the debug prints, that is useful.
I am working on bug templates and a debugging tool for pyqt-crom, but it will be released in the next version, so for now we have to debug "manually".
First of all, I can see that you are using:

Ubuntu 20.04
Python 3.8.19

Now for your bug that might not be a problem, but for full support, I would recommend you to use:

Ubuntu 22.04
Python 3.10.12

That's quite restrictive for now because I can't keep track of thousands of specs!
Anyway, regarding your bug:
Observations

sip-module didn't create an sdist. tells me that sip-module encountered a problem

Research

In fact, the command sip-module --sdist PyQt5.sip --abi-version 12 didn't create the source archive (usually wheels) required. Information about this can be found in pyqtdeploy-3.3.0/pyqtdeploy/sysroot/plugins/SIP.py.
Furthermore, pyqtdeploy-3.3.0/pyqtdeploy/sysroot/plugins/SIP.py tells us that SIP requires ['Python', 'Qt'] to be pre-installed. Which does not seem to be the case in your log.

Potential solutions
Here are some solutions to try out:

There might be something odd with PyQt5-sip module -> Can you run the command pip show PyQt5-sip (so I can know which version you are using -> it should be 12.13.0).
Try to run the failed command in verbose mode: sip-module --sdist PyQt5.sip --abi-version 12 (but I am not sure that the flag --verbose will work) -> so observe the output in case errors are showing up
Move the [SIP] section to the bottom in your sysroot.toml and remove all the sysroot-android-64 generated folders to avoid caching issues and then rebuild the app

Hi@achille-martin,
First of all, I test Python-3.8.19 and Python-3.10.12 in the same Ubuntu20.04 system, and they all have this Bug.
But I still can't be sure if it's unconcerned.
I tried all the solutions, but none of them worked.
The detailed information is as follows:
Try solutions

There might be something odd with PyQt5-sip module -> Can you run the command pip3 show PyQt5-sip (so I can know which version you are using -> it should be 12.13.0 according to requirements.txt).

Name: PyQt5-sip
Version: 12.13.0
Summary: The sip module support for PyQt5
Home-page: https://www.riverbankcomputing.com/software/sip/
Author: Riverbank Computing Limited
Author-email<EMAIL_ADDRESS>License: SIP
Location: /home/gw/anaconda3/envs/torch19/lib/python3.8/site-packages
Requires:
Required-by: PyQt5

Name: PyQt5
Version: 5.15.10
Summary: Python bindings for the Qt cross platform application toolkit
Home-page: https://www.riverbankcomputing.com/software/pyqt/
Author: Riverbank Computing Limited
Author-email<EMAIL_ADDRESS>License: GPL v3
Location: /home/gw/anaconda3/envs/torch19/lib/python3.8/site-packages
Requires: PyQt5-Qt5, PyQt5-sip
Required-by: pyqtdeploy

Package                Version
---------------------- ------------
coloredlogs            15.0.1
dill                   0.3.8
flatbuffers            24.3.25
humanfriendly          10.0
mkl-fft                1.3.8
mkl-random             1.2.4
mkl-service            2.4.0
mpmath                 1.3.0
numpy                  1.24.3
onnx                   1.16.0
onnxconverter-common   1.13.0
onnxruntime-gpu        1.17.1
onnxruntime-tools      1.7.0
opencv-python-headless <IP_ADDRESS>
packaging              23.2
pillow                 10.3.0
pip                    24.0
pipdeptree             2.18.1
ply                    3.11
protobuf               3.20.3
psutil                 5.9.8
py-cpuinfo             9.0.0
py3nvml                0.2.7
PyQt-builder           1.15.3
PyQt5                  5.15.10
PyQt5-Qt5              5.15.2
PyQt5-sip              12.13.0
pyqtdeploy             3.3.0
setuptools             69.5.1
sip                    6.7.12
sympy                  1.12
toml                   0.10.2
tomli                  2.0.1
torch                  1.9.0+cu111
torchaudio             0.9.0
torchvision            0.10.0+cu111
typing_extensions      4.11.0
wheel                  0.43.0
xmltodict              0.13.0

Try to run the failed command in verbose mode: sip-module --sdist PyQt5.sip --abi-version 12 (but I am not sure that the flag --verbose will work) -> so observe the output in case errors are showing up

I tried, but no information was printed. 😫

Move the [SIP] section to the bottom in your sysroot.toml and remove all the sysroot-android-64 generated folders to avoid caching issues and then rebuild the app

I tried, but it is not worked.

Ok, let's take it a step at a time then, since there are no debug prints associated to sip-module.

Run sip-module --sdist PyQt5.sip --abi-version 12 anywhere

It should download in the current directory the archive for PyQt5-sip matching with your installed version.
So you should see a folder called PyQt5_sip-12.13.0.tar.gz in your current directory.
If you don't see it -> there is an issue with your sip or PyQt5-sip and I would recommend you pip3 uninstall and pip3 cache purge && pip3 install them back again.
If you see it -> then there might be an issue with your pyqtdeploy and we will need to add debug prints to $PYQT_CROM_DIR/venv/pyqt-crom-venv/lib/python3.10/site-packages/pyqtdeploy/sysroot/plugins/SIP.py.

Amazing！Base on your guidance, I found pyqt5_sip-12.13.0.tar.gz in my current directory. So I debug $PYQT_CROM_DIR/venv/pyqt-crom-venv/lib/python3.10/site-packages/pyqtdeploy/sysroot/plugins/SIP.py.
Debug
I found that glob can't recognize the pyqt5_sip-12.13.0.tar.gz due to a mismatch in the capitalization of the instructions archives = glob.glob(pattern)(https://www.riverbankcomputing.com/hg/pyqtdeploy/file/df680b956780/pyqtdeploy/sysroot/plugins/SIP.py). The file name is lowercase and the instructions contain uppercase.
Solutions

First, What comes to my mind is to modify SIP module_name in pyqt-crom/examples/demo/demo_project/sysroot.toml. But it is not worked and print error.
So I modify the code to archives = glob.glob(pattern.lower()) and it's working!

I'm not sure if this is a special case, such as the reason for the version number.

Glad you figured out the issue.
I suspect that the "lowercase" action is performed at some point in the sip package for some reason.
To investigate a bit further, can you:

Add a debug print print(args.sip_modules) (at the beginning of the try block) in $PYQT_CROM_DIR/venv/pyqt-crom-venv/lib/python3.10/site-packages/sipbuild/module/main.py
Run the command sip-module --sdist PyQt5.sip --abi-version 12
Share the output of the command, which should be ['PyQt5.sip']

If you get ['PyQt5.sip'], then the problem is likely later on in the code. Therefore, add debug prints in $PYQT_CROM_DIR/venv/pyqt-crom-venv/lib/python3.10/site-packages/sipbuild/module/module.pyto figure out when the lowercase operation happens (because it should not according tosip==6.7.12`).
WARNINGS

It is not recommended to modify the site-packages directory directly

This is because changes cannot be tracked and it creates confusion when you want to change versions.
The recommended way is to use pip in "edit" mode -> https://pip.pypa.io/en/stable/topics/local-project-installs/#editable-installs

It is not recommended to modify the pyqtdeploy package directly

This is because of the licence which forces you to disclose all the changes you made to the package before a release of your app. If you are happy doing that, then you are fine.

Hi @achille-martin ,
It's been a long time.
I tested the detailed output of '$PYQT_CROM_DIR/venv/pyqt-crom-venv/lib/python3.10/site-packages/sipbuild/module/module.py', and I found that when running the subprocess.run(             [sys.executable, 'setup.py', '--quiet', 'sdist', '--dist-dir',                     '..'])command, the python package name,  'pyqt5_sip-12.13.0.tar.gz'  is changed to lowercase letters.
I asked ChatGPT, and it told me that it might be because some systems are case-insensitive. And it suggested using all lowercase letters. Maybe it needs to consider the system version for testing in the next version.

@stone-cloud  thanks for your debugging efforts!
I am a bit surprised by the fact that subprocess.run( [sys.executable, 'setup.py', '--quiet', 'sdist', '--dist-dir', '..']) modifies the module_name, I thought it would
If you are happy to proceed, can you replace your $PYQT_CROM_DIR/venv/pyqt-crom-venv/lib/python3.10/site-packages/sipbuild/module/module.py file with the one I have attached:
module.txt
can you replace your $PYQT_CROM_DIR/venv/pyqt-crom-venv/lib/python3.10/site-packages/sipbuild/module/main.py file with the one I have attached:
main.txt.txt
I have added a lot of debug prints - make sure to save your original files (in site-packages) before replacing their content (so you can revert back to your version, alternatively you can reinstall sip via pip).
Then please send me the terminal outputs so we can have a look.

The terminal outputs:
(androidDeploy) gw@gw-System-Product-Name:~/LYH/androidDepoly/QTgui$ sip-module --sdist PyQt5.sip --abi-version 12
main - ARGS: Namespace(abi_version='12', project=None, sdist=True, setup_cfg=None, sip_h=False, sip_rst=False, target_dir=None, sip_modules=['PyQt5.sip'])
module - SIP MODULE: PyQt5.sip
module - PROJECT: None
module - PROJECT 2: PyQt5_sip
_create_patches - SIP MODULE PARTS: ['PyQt5', 'sip']
_create_patches - SIP MODULE NAME: sip
_create_patches - SIP MODULE: PyQt5.sip
module - PATCHES: {'@SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@SIP_MODULE_PROJECT_NAME@': 'PyQt5_sip', '@SIP_MODULE_PACKAGE_NAME@': 'PyQt5', '@SIP_MODULE_VERSION@': '12.13.0', '@_SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@_SIP_MODULE_NAME@': 'sip', '@_SIP_MODULE_SHARED@': '1', '@_SIP_MODULE_ENTRY@': 'PyInit_sip', '@_SIP_MODULE_LEGACY@': '1', '@_SIP_VERSION@': '0x6070c', '@_SIP_VERSION_STR@': '6.7.12'}
module - SDIST DIR: PyQt5_sip-12.13.0
module - SDIST DIR 2: PyQt5_sip-12.13.0
_create_sdist - SDIST DIR: PyQt5_sip-12.13.0
_create_sdist - SDIST DIR 2: PyQt5_sip-12.13.0
_create_sdist - MODULE SOURCE DIR: /home/gw/anaconda3/envs/androidDeploy/lib/python3.10/site-packages/sipbuild/module/source/12
_create_sdist - SETUP CONFIG: None
_create_sdist - NAME FROM SOURCE DIR: MANIFEST.in
_create_sdist - NAME FROM SOURCE DIR: objmap.c
_create_sdist - NAME FROM SOURCE DIR: sip_array.h
_create_sdist - NAME FROM SOURCE DIR: siplib.c
_create_sdist - NAME FROM SOURCE DIR: sipint.h
_create_sdist - NAME FROM SOURCE DIR: LICENSE
_create_sdist - NAME FROM SOURCE DIR: threads.c
_create_sdist - NAME FROM SOURCE DIR: sip.rst.in
_create_sdist - NAME FROM SOURCE DIR: sip_array.c
_create_sdist - NAME FROM SOURCE DIR: setup.py.in
_install_source_file - module_source_dir: /home/gw/anaconda3/envs/androidDeploy/lib/python3.10/site-packages/sipbuild/module/source/12
name: setup.py
target_dir: PyQt5_sip-12.13.0
_install_file - NAME OUT: PyQt5_sip-12.13.0/setup.py
PATCHES: {'@SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@SIP_MODULE_PROJECT_NAME@': 'PyQt5_sip', '@SIP_MODULE_PACKAGE_NAME@': 'PyQt5', '@SIP_MODULE_VERSION@': '12.13.0', '@_SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@_SIP_MODULE_NAME@': 'sip', '@_SIP_MODULE_SHARED@': '1', '@_SIP_MODULE_ENTRY@': 'PyInit_sip', '@_SIP_MODULE_LEGACY@': '1', '@_SIP_VERSION@': '0x6070c', '@_SIP_VERSION_STR@': '6.7.12'}
_create_sdist - NAME FROM SOURCE DIR: bool.cpp
_create_sdist - NAME FROM SOURCE DIR: setup.cfg.in
_create_sdist - NAME FROM SOURCE DIR: LICENSE-GPL3
_create_sdist - NAME FROM SOURCE DIR: int_convertors.c
_create_sdist - NAME FROM SOURCE DIR: voidptr.c
_create_sdist - NAME FROM SOURCE DIR: apiversions.c
_create_sdist - NAME FROM SOURCE DIR: LICENSE-GPL2
_create_sdist - NAME FROM SOURCE DIR: sip.pyi
_create_sdist - NAME FROM SOURCE DIR: pyproject.toml
_create_sdist - NAME FROM SOURCE DIR: sip.h.in
_install_source_file - module_source_dir: /home/gw/anaconda3/envs/androidDeploy/lib/python3.10/site-packages/sipbuild/module/source/12
name: sip.h
target_dir: PyQt5_sip-12.13.0
_install_file - NAME OUT: PyQt5_sip-12.13.0/sip.h
PATCHES: {'@SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@SIP_MODULE_PROJECT_NAME@': 'PyQt5_sip', '@SIP_MODULE_PACKAGE_NAME@': 'PyQt5', '@SIP_MODULE_VERSION@': '12.13.0', '@_SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@_SIP_MODULE_NAME@': 'sip', '@_SIP_MODULE_SHARED@': '1', '@_SIP_MODULE_ENTRY@': 'PyInit_sip', '@_SIP_MODULE_LEGACY@': '1', '@_SIP_VERSION@': '0x6070c', '@_SIP_VERSION_STR@': '6.7.12'}
_create_sdist - NAME FROM SOURCE DIR: qtlib.c
_create_sdist - NAME FROM SOURCE DIR: descriptors.c
_create_sdist - NAME FROM SOURCE DIR: README.in
_install_source_file - module_source_dir: /home/gw/anaconda3/envs/androidDeploy/lib/python3.10/site-packages/sipbuild/module/source/12
name: README
target_dir: PyQt5_sip-12.13.0
_install_file - NAME OUT: PyQt5_sip-12.13.0/README
PATCHES: {'@SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@SIP_MODULE_PROJECT_NAME@': 'PyQt5_sip', '@SIP_MODULE_PACKAGE_NAME@': 'PyQt5', '@SIP_MODULE_VERSION@': '12.13.0', '@_SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@_SIP_MODULE_NAME@': 'sip', '@_SIP_MODULE_SHARED@': '1', '@_SIP_MODULE_ENTRY@': 'PyInit_sip', '@_SIP_MODULE_LEGACY@': '1', '@_SIP_VERSION@': '0x6070c', '@_SIP_VERSION_STR@': '6.7.12'}
_create_sdist - SETUP CONFIG 2: /home/gw/anaconda3/envs/androidDeploy/lib/python3.10/site-packages/sipbuild/module/source/12/setup.cfg.in
_install_file - NAME OUT: PyQt5_sip-12.13.0/setup.cfg
PATCHES: {'@SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@SIP_MODULE_PROJECT_NAME@': 'PyQt5_sip', '@SIP_MODULE_PACKAGE_NAME@': 'PyQt5', '@SIP_MODULE_VERSION@': '12.13.0', '@_SIP_MODULE_FQ_NAME@': 'PyQt5.sip', '@_SIP_MODULE_NAME@': 'sip', '@_SIP_MODULE_SHARED@': '1', '@_SIP_MODULE_ENTRY@': 'PyInit_sip', '@_SIP_MODULE_LEGACY@': '1', '@_SIP_VERSION@': '0x6070c', '@_SIP_VERSION_STR@': '6.7.12'}
_create_sdist - SAVED CWD: /home/gw/LYH/androidDepoly/QTgui
_create_sdist - SDIST DIR 2: PyQt5_sip-12.13.0
_create_sdist - SYS EXEC: /home/gw/anaconda3/envs/androidDeploy/bin/python
running sdist
running egg_info
creating PyQt5_sip.egg-info
writing PyQt5_sip.egg-info/PKG-INFO
writing dependency_links to PyQt5_sip.egg-info/dependency_links.txt
writing top-level names to PyQt5_sip.egg-info/top_level.txt
writing manifest file 'PyQt5_sip.egg-info/SOURCES.txt'
reading manifest file 'PyQt5_sip.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
adding license file 'LICENSE-GPL2'
adding license file 'LICENSE-GPL3'
writing manifest file 'PyQt5_sip.egg-info/SOURCES.txt'
running check
creating pyqt5_sip-12.13.0
creating pyqt5_sip-12.13.0/PyQt5_sip.egg-info
copying files to pyqt5_sip-12.13.0...
copying LICENSE -> pyqt5_sip-12.13.0
copying LICENSE-GPL2 -> pyqt5_sip-12.13.0
copying LICENSE-GPL3 -> pyqt5_sip-12.13.0
copying MANIFEST.in -> pyqt5_sip-12.13.0
copying README -> pyqt5_sip-12.13.0
copying apiversions.c -> pyqt5_sip-12.13.0
copying bool.cpp -> pyqt5_sip-12.13.0
copying descriptors.c -> pyqt5_sip-12.13.0
copying int_convertors.c -> pyqt5_sip-12.13.0
copying objmap.c -> pyqt5_sip-12.13.0
copying pyproject.toml -> pyqt5_sip-12.13.0
copying qtlib.c -> pyqt5_sip-12.13.0
copying setup.cfg -> pyqt5_sip-12.13.0
copying setup.py -> pyqt5_sip-12.13.0
copying sip.h -> pyqt5_sip-12.13.0
copying sip_array.c -> pyqt5_sip-12.13.0
copying sip_array.h -> pyqt5_sip-12.13.0
copying sipint.h -> pyqt5_sip-12.13.0
copying siplib.c -> pyqt5_sip-12.13.0
copying threads.c -> pyqt5_sip-12.13.0
copying voidptr.c -> pyqt5_sip-12.13.0
copying PyQt5_sip.egg-info/PKG-INFO -> pyqt5_sip-12.13.0/PyQt5_sip.egg-info
copying PyQt5_sip.egg-info/SOURCES.txt -> pyqt5_sip-12.13.0/PyQt5_sip.egg-info
copying PyQt5_sip.egg-info/dependency_links.txt -> pyqt5_sip-12.13.0/PyQt5_sip.egg-info
copying PyQt5_sip.egg-info/top_level.txt -> pyqt5_sip-12.13.0/PyQt5_sip.egg-info
copying PyQt5_sip.egg-info/SOURCES.txt -> pyqt5_sip-12.13.0/PyQt5_sip.egg-info
Writing pyqt5_sip-12.13.0/setup.cfg
Creating tar archive
removing 'pyqt5_sip-12.13.0' (and everything under it)
_create_sdist - SAVED CWD 2: /home/gw/LYH/androidDepoly/QTgui
_create_sdist - SDIST DIR 3: PyQt5_sip-12.13.0

Ok I can confirm that you are right about the command setup.py messing things up.
I dug a bit more into the setup template and I have added a few more debug prints to module.py:
module.txt
Again, if you have time, replace module.py with my extra verbose code and run sip-module --sdist PyQt5.sip --abi-version 12 and we'll inspect the output.
This time, the output will tell us from which python function the problem emerges (it might be the replace).
If this round comes back inconclusive, I'll close the issue and mark it as "temporarily fixed" with your previous fix.

All right!  The print log information is in log file:
log.txt
If you locate where the problem occurred, please let me know.

Ah! I found it... I was looking at the wrong place...
Details of the issue
The "issue" comes from setuptools v69.3.0 Changelog infos here:

sip-module --sdist PyQt5.sip --abi-version 12 calls the command subprocess.run( [sys.executable, 'setup.py', '--quiet', 'sdist', '--dist-dir', '..'])
The command subprocess.run( [sys.executable, 'setup.py', '--quiet', 'sdist', '--dist-dir', '..']) calls the make_distribution() from command/sdist.py which calls the one from setuptools/_distutils/command/sdist.py
make_distribution() calls get_fullname() from setuptools/_core_metadata.py
get_fullname() calls canonicalize_name() from setuptools/_vendor/packaging/utils.py which is effectively distutils (https://github.com/pypa/distutils)

The changes have been made with this chronology:

The canonicalisation function from distutils has been introduced during this issue: https://github.com/pypa/distutils/pull/244 (in April 2024)
The call to distutils canonicalisation in setuptools has been introduced during this issue: https://github.com/pypa/setuptools/issues/3593 (in April 2024). The code addition is visible here: https://github.com/pypa/setuptools/compare/v69.2.0...v69.3.0.

Context of the issue

When the sip component is checked by the sysroot, the command sip-module --sdist PyQt5.sip --abi-version 12 is run to get the source distribution.
However, pyqtdeploy struggles to find the archive PyQt5_sip-12.13.0.tar.gz because the name has been canonicalised to pyqt5_sip-12.13.0.tar.gz by distutils.

Solutions

Constrain setuptools to be < v69.3.0 in requirements.txt -> quite restrictive but works for now
Modify self.module_name to be canonical in pyqtdeploy/pyqtdeploy/sysroot/plugins/SIP.py so that it can find the archive downloaded (the tar.gz) -> need to check with Phil

Thanks for your debugging support!

TL;DR: for now, use pip install setuptools==69.2.0

That's great!  We can continue doing this great work. :wink:


url .cc

If I what to boardcast an url as xxx.cc ,how can I make it?I have tried but because the ".com/" is 0x00,the url will change to "xxx.cc.com/".How can I fix this problem?

You need to report the length of the service data correctly so you know when to stop parsing. (Android will always give you 62 bytes in the scan record with the "extra" bytes zeroed out, so if you're off-by-one in the length you'll get a .com/ at the end.)

Will you add the ".cc" to the HTTP URL encoding in the future?I am looking forward to it.

We've received lots of requests that want one TLD or another. As the BLE 5.0 spec is coming this fall (with a 10x increase in packet size) we hope that will give people the flexibility they need going forward


Issue/95 perf improvement 1

Performance improvements Pt. 1
Summary

Sets the allowed origins and forwarded headers to static value
Drop CDN asset prefix
Add sharp package

Fixes # (#95 )
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

How To Test
Validate page loads correctly and quickly
Checklist:

[x] My code follows the style guidelines of this project and has no linting errors
[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation, including any applicable ADRs
[x] My changes generate no new warnings
[ ] I have added tests that fail without these changes
[ ] New and existing tests (unit, integration, accessibility) pass locally
[ ] Documentation updated
[ ] If there are security concerns they are addressed or ticketed after being discussed

Sharp is recommended by next for built-in image optimization @gmrabian


how to do tplink-raw-wifi setup in linux for next half of the miniSDK project

i am trying to implement miniSDK in my project. i have did the first step to install openWRT into the tp-linkWR841N router. youtube video that you posted was not clear about the tplink-raw-wifi. so can you tell the procedure to get connect the ESP-12E module to the openWRT router and to configure with the wireshark.
actually i am not getting the command part @6.13 in the video(cnlohr@cnlohr-desktop ~/git/tplink-raw-wifi................).
email<EMAIL_ADDRESS>

You should try to get the system working with wireshark before trying to get it working with the 12E.  So, what error are you getting specifically when you try to execute, from a host Linux system:
ssh root@[ip] "/tmp/remotecap" | wireshark -i - -k
Charles

Please copy-and-paste the full command you are putting in.


Introduce dead line settings from gRPC document.

We have listened about at some bad network environment, people report gRPC not responding sometimes.
Following gRPC document of the deadline, I think this fits for us. https://grpc.io/blog/deadlines/
10 seconds is the value I set for

Register, JVM reporter and Segment reporters at agent side.
Remote client and gRPC exporter at OAP side.

I don't set any sever side timeout, because all of gRPC clients don't require the response.
Any suggestion?

This is the error log when deadline/timeout happens at the client, even in stream mode. Exception accepts in #onError method.
io.grpc.StatusRuntimeException: DEADLINE_EXCEEDED: deadline exceeded after 969455382ns
	at io.grpc.Status.asRuntimeException(Status.java:526)
	at io.grpc.stub.ClientCalls$StreamObserverToCallListenerAdapter.onClose(ClientCalls.java:434)
	at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
	at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
	at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
	at io.grpc.internal.CensusStatsModule$StatsClientInterceptor$1$1.onClose(CensusStatsModule.java:678)
	at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
	at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
	at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
	at io.grpc.internal.CensusTracingModule$TracingClientInterceptor$1$1.onClose(CensusTracingModule.java:403)
	at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:459)
	at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:63)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:546)
	at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$600(ClientCallImpl.java:467)

The document you gave have description is

By default this deadline is a very large number, dependent on the language implementation.
This sets the deadline to 100ms from when the client RPC is set to when the response is picked up by the client.

But from the error log you gave is that deadline exceeded after 969455382ns.
Important thing: 969455382ns == 900ms == 0.9s
We don't set the deadline before this PR, and our agent and OAP server are written with Java language, so the deadline should the default value of 100ms.
Question:

I'm very curious about why the deadline exceeded is 900ms instead of 100ms?
Why you set the deadline to 10s? The document said: In general, when you don’t set a deadline, resources will be held for all in-flight requests, and all requests can potentially reach the maximum timeout. This puts the service at risk of running out of resources, like memory, which would increase the latency of the service, or could crash the entire process in the worst case. I think the 10s deadline is too large because the agent sends the segments to the server-side every 30s. No more time for the next round. I suggest make it smaller is best. 5s?

@wu-sheng

Important thing: 969455382ns == 900ms == 0.9s

Where do you get this?
From my local test, without setting a deadline, it doesn't end in 0.9s. I tried to wait 20 seconds in stream mode, still no timeout response.

Important thing: 969455382ns == 900ms == 0.9s

Where do you get this?
From my local test, without setting a deadline, it doesn't end in 0.9s. I tried to wait 20 seconds in stream mode, still no timeout response.

Here it is: io.grpc.StatusRuntimeException: DEADLINE_EXCEEDED: deadline exceeded after 969455382ns.

Here it is: io.grpc.StatusRuntimeException: DEADLINE_EXCEEDED: deadline exceeded after 969455382ns.

This is the result after I set the parameter, not before. I think you misunderstand.


CASSANDRA-16969-copyright-check-4.3.x

All copyrights detected in codebase noted in NOTICE.txt

Please close in favor of #1856 (which retains original contributor credit)


Issue with evaluation when there are no true go class

I wonder if the behavior of the function def evaluate_annotations(go, real_annots, pred_annots): for the DeepGOPlus model at https://github.com/bio-ontology-research-group/deepgoplus/blob/e031def1f0fb1921e8ae57d7b3ef1cbb2fc2e5fe/evaluate_deepgoplus.py#L222
which skips the evaluation if there are no true go labels is desired?
for i in range(len(real_annots)):
    if len(real_annots[i]) == 0:
        continue

Should not also this case be taken into account? as the model may have predicted some go classes while there were no true go classes.

Hi,
According to CAFA evaluation strategy, we evaluate the performance for each subontology in GO (MFO, BPO, CCO) with the proteins which have at least one experimental annotation from respective subontology. Otherwise, the number of unannotated proteins is quite large and we cannot evaluate on them because we don't know if the predictions are true or not. In general, the experimental annotations are incomplete and no annotation does not mean negative annotation.

Fair enough. Thanks a lot for the explaination


Rewrite updater

Rewrite updater mess as separate services with persistent queues, fault tolerant and better logging.

[x] Updater api that reads studentnumber from queue and gathers all data for that student from oodi API and passes the data to another queue for writing.

Database writing done TDD to make sure it does everything the old updater did (but better).

[x] Student

[x] Course

[x] Course_disciplines

[ ] Course_enrollments*

[x] Course_groups* (created manually)

[x] Course_providers

[x] Course_types

[ ] courserealisations*

[x] courserealisation_types

[x] credit

[x] credit_teachers

[x] credit_types

[x] disciplines

[x] error_data~

[x] element_details

[x] organization

[x] providers

[x] semester_enrollments

[x] semesters

[x] student_list*

[x] studyright

[x] studyright_elements

[x] studyright_extents

[x] teacher

[x] teacher_course_group* ( filled through oodikone )

[x] transfers

[x] unit*~

[x] unit_tag*~

[x] tag_student*~

[x] tag*~

(*) means that these had no rows after running old updater with few students
(~) means that these were empty in old DB
WE ALSO NEED A SCHEDULER TO UPDATE STUFF

[x] update X students periodically
[x] update meta data periodically
[x] update studentnumber list periodically
[x] update providers periodically
[x] refresh studyright associations periodically
[x] update productivity

TODO:

[x] move updater service to backend so it can share models
[x] move to staging
[ ] parallel testing with existing updater
[x] move to production ( SVM-77 )
[ ] create dumps automatically
[ ] move dumps to production automatically

Whenever we move to latest updater..
If we use a clean database, we should make sure we get the base database structure from our current production.
The reason for this is that a lot of the foreign keys, indexes and even tables are not defined in the sequelize models (maybe they should be?) and using structure created with force sync is missing a lot of stuff that makes things actually function properly.

I put us in production before reading this so I guess we're going YOLO


Unable to connect to Elasticsearch at http://localhost:9200.

I get the above error in Kibana  at localhost:80. I recieve the following log file from docker logs of the image then I try and spin up the cointaner.
2017-06-16 12:51:51,999 CRIT Supervisor running as root (no user in config file)
2017-06-16 12:51:52,001 INFO supervisord started with pid 6
2017-06-16 12:51:53,004 INFO spawned: 'nginx' with pid 9
2017-06-16 12:51:53,005 INFO spawned: 'elasticsearch' with pid 10
2017-06-16 12:51:53,006 INFO spawned: 'logstash' with pid 11
2017-06-16 12:51:53,007 INFO spawned: 'kibana' with pid 12
2017-06-16 12:51:54,527 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:51:54,650 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:51:54,652 INFO success: logstash entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:51:58,723 INFO success: kibana entered RUNNING state, process has stayed up for > than 5 seconds (startsecs)
2017-06-16 12:52:00,796 INFO exited: elasticsearch (exit status 1; not expected)
2017-06-16 12:52:01,855 INFO spawned: 'elasticsearch' with pid 82
2017-06-16 12:52:03,886 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:52:10,927 INFO exited: elasticsearch (exit status 1; not expected)
2017-06-16 12:52:11,624 INFO spawned: 'elasticsearch' with pid 138
2017-06-16 12:52:12,625 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:52:27,410 INFO exited: elasticsearch (exit status 1; not expected)
2017-06-16 12:52:27,962 INFO spawned: 'elasticsearch' with pid 194
2017-06-16 12:52:28,858 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:52:41,573 INFO exited: elasticsearch (exit status 1; not expected)
2017-06-16 12:52:42,148 INFO spawned: 'elasticsearch' with pid 250
2017-06-16 12:52:43,153 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:52:55,206 INFO exited: elasticsearch (exit status 1; not expected)
2017-06-16 12:52:56,299 INFO spawned: 'elasticsearch' with pid 306
2017-06-16 12:52:57,355 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:53:10,543 INFO exited: elasticsearch (exit status 1; not expected)
2017-06-16 12:53:10,632 INFO spawned: 'elasticsearch' with pid 362
2017-06-16 12:53:11,635 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2017-06-16 12:53:23,833 INFO exited: elasticsearch (exit status 1; not expected)
2017-06-16 12:53:24,771 INFO spawned: 'elasticsearch' with pid 418
2017-06-16 12:53:25,776 INFO success: elasticsearch entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

Have you done this? https://github.com/blacktop/docker-elastic-stack#known-issues-warning

Also please see #5

Enviroment is windows 10 pro.

Ah that is interesting.  I am seeing the same thing on Docker for Mac and have asked for help in the docker and elasticsearch forums and with this issue https://github.com/docker/for-mac/issues/1687

I started running the image with docker-machine and your image ran on a colleagues computer without, I don't know if that makes a difference. I have cleaned my installation for docker-engine and still no success.

yeah it works great on a linux host so if you use docker-machine then it will use VirtualBox under-the-covers which uses a TinyLinux VM to run docker on.  Docker for Windows uses HyperV and I think they (docker) are excluding some syscalls in the creation of those VMs that my docker image uses?

I hope that I get an answer for my issue docker/for-mac#1687 and can get to the bottom of this.  The other option is to build a DAB (docker application bundle) instead of running all the processes in a single container.  I think it is nice to have a single command get you up and running with an ElasticStack though 😞

I was perhaps a bit too implicit. I started off with trying with a weird mix of using hypertV and docker-mahcine changed it to purely using hyperv . The colleague that sucessfully ran the image with docker using hyperv and on same type of machine and operating system.

this appears to be related to https://github.com/elastic/elasticsearch/issues/23710 and to https://bugs.openjdk.java.net/browse/JDK-8165852

this also https://discuss.elastic.co/t/cant-create-lock-file-when-sharing-data-path-folder-between-docker-and-host/81617/5

seems to be working in Docker for Mac edge now docker 17.07.0


inconsistency: configuration dictionary and environment variables

there is an inconsistency between some configuration dictionary keys and corresponding environment variables. Examples below.

config
variable
notes

mpi
DEVITO_MPI
consistent

language
DEVITO_LANGUAGE
consistent

platform
DEVITO_PLATFORM
consistent

compiler
DEVITO_ARCH
inconsistent

log-level
DEVITO_LOGGING
inconsistent

@FabioLuporini @mloubout is there any plan to change this?


Update ccache in CI to 4.9.1

Summary

Update ccache in CI to the version 4.9.1.
Motivation

We should keep up-to-date the software we use.
Solution

Do the update.
Paths Not Taken

4.10.2 by now in brew. Will update in #1558


Use ros/package.h api to get package name for required full file names

Use ros/package.h api to get package name for required full file names

Done at f206941effbc1446c678fcb4effb53c5858e6f1e


silently fails for windows file paths

great package. I encountered a problem where it silently failed when I used windows style file paths instead of linux. I was running from Pycharm terminal on windows machine.
The first time I ran it appeared to work but did not produce any images.
(Simulate-Correct-ColorBlindness) C:\Users\conwayjp\Documents\code\Simulate-Correct-ColorBlindness>python recolor.py -input "C:\Users\conwayjp\test.png" -output "C:\Users\conwayjp" -run_all
ReColorLib completed running! Check output images in C:\Users\conwayjp

When it was run with linux style path names it worked just fine.
(Simulate-Correct-ColorBlindness) C:\Users\conwayjp\Documents\code\Simulate-Correct-ColorBlindness>python recolor.py -input "C:/Users/conwayjp/test.png" -output "C:/Users/conwayjp" -run_all
ReColorLib completed running! Check output images in C:/Users/conwayjp

also, might be worth noting the name of the opencv package on conda is py-opencv, for newbies.

Hi! Thank you! Unfortunately I did not have a windows machine back then to test on it. I do have it now so will try to get a fix in. Thanks for pointing it out!


add patch to remove ceres include dirs

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender

It seems indeed that this is the fix for #43
Merging in if build passes.


set client latest: Remove 4.11 specific code paths

Since 4.11 is EOL now, we can remove these

/lgtm
/approve


integrated flash attention 2

Integrated flash attention 2 (ver. 0.2.2 -> 2.2.1). Wall-clock performance improvement observed for 125M param model with seq length 4096 and batch size 128 running on 1 a10 GPU.

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


Add initial test functions for SpaceKLIP using pytest

This is a start (partial, very incomplete) at having functions for automated package testing, using the pytest framework.
This PR adds a subdirectory spaceKLIP/tests which contains a few test files and functions. These test some very basic bits of functionality (loading files, etc). In part these are intended as initial examples since @kammerje doesn't have prior experience with setting up such tests.
To discuss:

what to do about test data files? Based on past experience testing other packages I would advocate for having some modest, minimal set of test data in a zip file that can be retrieved by the test system automatically from Dropbox when needed. The intent is to provide a standard set of test data, without putting tons of binary data into the Git repo. Ideally this should not be too large (100s of MBs would be OK, but probably would like to avoid it being multiple GB).
Can we agree upon some basic set of such files, for instance from the ERS 1386 dataset?  A couple files each per NIRcam and MIRI, in one filter each, for instance.
The test functions in this PR currently assume the existence of test data in spaceKLIP/tests/test_data. My intent is that once we agree on some minimal test dataset, we'll configure pytest to automatically retrieve those files if needed, via a pytest_sessionstart fixture.
Defining the scope of testing expected. Ideally we want to have enough testing to ensure that new PRs don't break existing functionality. Testing can get arbitrarily complex in scope and we want to keep this manageable. It may suffice to just test e.g. "does stage 1 processing work at all without crashing", versus checking correctness or optimality of results. When possible, it's generally preferable to test individual lower-level functions on their own as units, but the integrated nature of spaceKLIP makes that a bit hard, so it may be easier to start out by testing entire pipelines start to finish.

Long term, we could aim at having this run automatically in a continuous integration system, for instance Github Actions. That's best when possible, but I can imagine the runtime of testing spaceKLIP could become quite long and slow, so we might not want to have it run automatically for every commit or PR.

FYI @semaphoreP @maxwellmb @AarynnCarter - would be interested to hear your thoughts on setting up automated testing for spaceKLIP. @semaphoreP how have you handled automated testing/CI for pyKLIP ?

Replaced by the PR in the spaceklip repo


Subwiki name dose not support unicode.

I am running windows version TW5-BobEXE.
Subwiki can't be opened if wiki name is unicode (in my case, Chinese). The link of sub wiki can be create, but page  cannot open.
I am running (check any that apply, put an x inside the [ ] to check a box, like this: [x]):

[ x] Windows
[ ] OSX
[ ] Linux
[ ] Other

and using

[ ] The nodejs version
[x] The single file executable

Before posting I read issue guidelines and:

[x] I am using the newest version
[ ] The answer to my question isn't listed in the documentation or this isn't
a question
[x] This is not a duplicate issue
[ ] I have not done anything that required me to set acceptance to
I Will Not Get Tech Support For This

I believe I have found the problem. It looks like many non-europeans characters are outside the characters used in utf-8 and some javascript functions do not handle them correctly. I am looking up solutions.
Thank you for letting me know about this, it is interesting and not something I would have found by myself.

I think I fixed the bug. The fixed version is uploaded here https://github.com/OokTech/TW5-BobEXE/releases/tag/1.2.2r6
It has worked on my tests, please let me know if solves the problem for you.

Chinese subwiki name now working fine in new wiki folder (create a new folder, put BobWin.exe inside and run),.
Two problems if I update BobWin.exe to an existing wiki folder.

After create a subwiki with Chinese characters,  the name in subwiki list different with what I create. For example: to this:
Create subwiki: 中文測試 , The link in subwiki list: 中文測試/__path , Folder name: 中文測試
Create subwiki: Hello 中文測試 , The link in subwiki list:  [[Hello 中文測試/]]__path , Folder name: Hello 中文測試

New function: Available Wikis:  <>List in sidebar [Update List] not show.

In the wiki that is showing problems please check if you have a tiddler called $:/plugins/OokTech/Bob/Wiki Listing, if you do delete it. This will remove the listing from the sidebar but you will be able to re-add it from the control panel.
If that does not work I will look into this further.

After simplifying my test environment, I confirmed that this is not a proxy issue.
After delete '$__plugins_OokTech_Bob_Wiki Listing.tid' from all subwiki folder. XXX/__path no longer appears.
Thanks again.

Are you still having any trouble? If not I will close this issue.