CMake install failure

Hi, I'm using CLion and CMake,
it recognized two targets, py and static,
I could manage to build static, but when I install I see this:
====================[ Install | Debug ]=========================================
F:\CLion\bin\cmake\win\bin\cmake.exe --build F:\dev\c\nanopb\cmake-build-debug --target install -- -j 6
[ 20%] Generating nanopb_pb2.py
[100%] Built target protobuf-nanopb-static
process_begin: CreateProcess(NULL, protoc --python_out=F:/dev/c/nanopb/cmake-build-debug -IF:/dev/c/nanopb/generator/proto F:/dev/c/nanopb/generator/proto/nanopb.proto, ...) failed.
make (e=2): Не удается найти указанный файл.
mingw32-make.exe[2]: *** [CMakeFiles\generate_nanopb_pb2.py.dir\build.make:80: nanopb_pb2.py] Error 2
mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:97: CMakeFiles/generate_nanopb_pb2.py.dir/all] Error 2
mingw32-make.exe: *** [Makefile:149: all] Error 2

At py - it even did not build it at all.

Sounds like it is not finding protoc.exe.

@PetteriAimonen - then howe can I find it?

https://github.com/nanopb/nanopb/blob/29b8ee492ec33dbd6f2f25203705803cb70b28e4/CMakeLists.txt#L17 set nanopb_PROTOC_PATH to your executable when configuring cmake


Strip binaries

Stripped binaries are removed of unused objects and become lighter in
resource usage and have better performance.

travis is failing with invalid option: --no-ri
I wanted to remove the ext/ dir to make the gems smaller, as far as I see with the --prune option the removed files are removed from the gemspec but then the gem I tested it with failed because it wanted ext/mri/extconf.rb... I don't know the internals of rubygems enough to find where it's required :)
Also, to take advantage of ccache I think the full path needs to remain the same between builds, would you be open to a patch about that?

Hello @fauno, thanks for your contribution.
I didn't had time yet to review fully the impact of this change, but two points I would like to bring before anything:

The changes requires to be portable across Ruby and compilers. There might not be strip or might be called differently in other platforms. This information is exposed by RbConfig::CONFIG and should be used instead of hardcoding. This also includes the file extensions. Ironically, Ruby's extensions have .so, even on Windows.
Shelling out using backticks might not scale correctly. What would happen when things fail? How the user should be informed? gem-compiler relies on RubyGems' own building process, so perhaps we can rely on them. If not, perhaps the issue could be solved directly by extconf.rb itself and not at gem-compiler.

I'm leaving these notes here and let me know if you have explored those. Last but not least, I'm interesting to better understand your motivation of this change, if a concrete scenario or need raised it.
Thank you in advance and looking forward your feedback.
Cheers.

Luis Lavena<EMAIL_ADDRESS>writes:

Hello @fauno, thanks for your contribution.

thanks!  usually i run something like find -name .so | xargs strip on
my gems directory, but since i wanted to start using gem-compiler to
reduce cpu/energy usage i thought it would be a nice feature (amongst
the other things i mentioned)

I didn't had time yet to review fully the impact of this change, but
two points I would like to bring before anything:

The changes requires to be portable across Ruby and
compilers. There might not be strip or might be called differently
in other platforms. This information is exposed by RbConfig::CONFIG
and should be used instead of hardcoding. This also includes the file
extensions. Ironically, Ruby's extensions have .so, even on Windows.

sure, i can make it check for *nix systems instead of file extension.
what compiler does ruby use on windows?

Shelling out using backticks might not scale correctly. What would
happen when things fail? How the user should be informed?

i can use popen3 instead and check if strip is available, though if
you have a build env you probably have it already.

gem-compiler relies on RubyGems' own building process, so perhaps we
can rely on them. If not, perhaps the issue could be solved directly
by extconf.rb itself and not at gem-compiler.

wouldn't that require changing every gem?  in the long run it would
benefit everyone but that's a lot of pull requests :P

I'm leaving these notes here and let me know if you have explored
those. Last but not least, I'm interesting to better understand your
motivation of this change, if a concrete scenario or need raised it.

well, i've been packaging for a distro (https://parabola.nu) for several
years and recently found out that binary gems aren't stripped, which is
common practice while packaging (usually the packager does this for you,
if you run file /usr/bin/anything it will say 'stripped' at the end).
stripped binaries are much smaller in size and memory use, since you
don't have to load unneeded objects. for example, i just tested against
a ruby 2.3.7 i had from an old rbenv and the ruby interpreter went from
15 to 3MB.
https://en.wikipedia.org/wiki/Strip_(Unix)
i could run a few benchmarks if you want, i would need to find a binary
gem that has it's own though :)

Thank you in advance and looking forward your feedback.

thanks for the feedback!
--
https://endefensadelsl.org/

i can make it check for *nix systems instead of file extension. what compiler does ruby use on windows?

RubyInstaller uses MinGW (gcc) and also Visual Studio (MSVC). I wouldn't recommend excluding things by that method.
I took a quick look and Ruby already collects if strip is available using RbConfig::CONFIG["STRIP"]
In relation to process execution and capture, we should be following RubyGems' own approach, similar to the following, Using open3:
https://github.com/rubygems/rubygems/blob/master/lib/rubygems/ext/builder.rb#L62-L81
I will not have time to tackle yet (probably in a few weeks) but feel free to update this PR and we will sync back soon.
Once again, thank you for your contribution and the details on the motivation, indeed makes a really useful case and looking forward integrate such changes to improve the usability of this tool.
Cheers.

hi, i didn't forget about this but i've been doing other things. i did a
quick test with popen3 and even added a flag to optionally keep symbols,
but found out that RbConfig::CONFIG['STRIP'] detects strip with some
flags that do remove debug symbols, but don't strip everything, so the
binaries are still identified as "not stripped".
do you think it would be ok to detect if strip is present via RbConfig
but still use strip --strip-unneeded via popen3?  (i remember
--strip-all preventing them from loading).
--
D

hi, i didn't forget about this but i've been doing other things.

Don't worry, not going anywhere 😄
Appreciate the time you take to collaborate and investigate how we can reach the best option.

do you think it would be ok to detect if strip is present via RbConfig but still use strip --strip-unneeded via popen3?

I think we can work with that. Will be tricky to test striping since the test fake an extension, so doesn't produce a valid shared object file.
I will try at some point to workout some integration tests that generates a real C extension, but I think is OK for now.
One last nitpick: can you sort strip_binaries alphabetically? 😅
Thank you for your time and patience with my feedback.
And thank you for your contribution!

Hello @fauno, thanks for your patience.
I had some time during the holidays to look at this and submitted an alternate version that I believe gives you enough flexibility. Please take a look to #48.
This will be part of upcoming release.
Cheers!

Hi! I was just thinking of this and found out the notification email! Great! Thanks!
We've been using gem-compiler in production for a few months now and everything's great.  Here are some examples for creating a binary gem repository for Alpine (ruby < 2.7 requires a patch on rubygems to correctly detect the linux-musl target):

gem-compiler container
Makefile to build and push binary gems to a private repository, it picks gems from the Gemfile
Rubygems patch

This is excellent @fauno!!! Really happy to see this project being put to a good use (outside of me, 😁).
Just wanted to let you know that simplified symbol stripping UI/UX and reduced to just --strip, with optional custom command. I've updated the README in master to reflect the syntax and this will be part of the upcoming release.
Only need to finish some include/exclude pattern globing changes and will release the new version, probably this weekend.
Cheers
❤ ❤ ❤


V0p1p12d

Codecov Report

Merging #29 (b98c85a) into master (c0cfced) will increase coverage by 1.90%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #29      +/-   ##
==========================================
+ Coverage   81.45%   83.35%   +1.90%
==========================================
  Files           4        4
  Lines         647      631      -16
==========================================
- Hits          527      526       -1
+ Misses        120      105      -15

Impacted Files
Coverage Δ

src/MITprof.jl
82.82% <ø> (+5.83%)
:arrow_up:

src/GDAC.jl
69.76% <100.00%> (-0.69%)
:arrow_down:

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 c0cfced...b98c85a. Read the comment docs.


Container Hovered Style

Hi! Is it correct that the container currently does not have a hovered style? Would you accept a PR?

You are correct, the is not a style for hovering a container. There are a few technical reasons for it
Here is Hecrj's input from the Zulip chat about events for entering a container:
"
However, `on_mouse_enter` has implementation challenges. What happens if the `view` changes and a new widget ends up under the mouse cursor? The user would expect the event to trigger, but currently it won't.
"

Still not a no though. PRs are always welcome 😃 , just no promises that they will get merged (and will likely take a while even if they are)

Why not just use a button?

I'm trying to display a list of complex items. Each item is a Row. When the user hovers the row, the background color of the whole row should change. I didn't think this could be implemented with a button, especially since the row will contain buttons itself. Will it be possible to use a button for this? That would be nice

I think this use case should be tackled directly by some kind of Table widget.


ServiceClient does not use the provided TagDecorator when reporting metrics

Internally, it formulates hTags and hpTags and uses those instead.
private val hpTags: TagMap = Map("client_host" -> address.getHostName, "client_port" -> address.getPort.toString)
private val hTags: TagMap = Map("client_host" -> address.getHostName)

This one is a bit tricky.  THe main reason being that TagDecorator wants both a Request and a Response, and in ServiceClients, there are only a few instances when we have both.  To do this ticket, I will need to create a new data structure within ServiceClient which holds deferred values for metrics.  When both req/res are handy, we would then get the values out of this data structure, and then go through and tick all the metrics, using the TagDecorator to provide tags.

Ok, so I lied.  There was only one Metric (queueTime) that had that characteristic, which was easily fixable.


Algorithm and getDistance mismatch

Hi just want to bring attention to Ping and Josh that there is a small mismatch with DistanceManager.getDistance( **PARAMETER MISTMATCH**)

In algorithm/getDistances.java method calls

in the Distance/DistanceManager.

getDistance() in getDistances is a placeholder for an upcoming change to DistanceManager, as per #7. Will close this issue alongside it.


Daddylive streaming not working via plex

Issue streaming channels via daddylive addon with plex.
I am new to Cabernet, and recently had it setup. I use cabernet docker, with plex docker running off intel nuc 10th gen with ubuntu server 24.04 lts.
I've followed all the instructions, and actually had streaming working fine from plex. Then all of a sudden after a few daddylive addon updates it just appeared to stop working. When attempting to stream from plex, I get " There was an error while attempting to tune the selected channel. Please check your connection and try again."  I am running cabernet <IP_ADDRESS>-RC01 and daddylive addon v0.1.31 which is latest one. I've restarted app, plug-ins, refreshed channels and epg and still no luck. Bounced server etc.....
I've tried streaming same channels from plex mobile app on android, plex on Samsung TV, plex on chrome browser via windows pc, and androidtv box plex app all show same error message.
When checking cabernet logs after enabling debug I see the below?
2024-07-10 22:41:19,164-INFO:decorators HTTPError in function M3U8GetUriData.get_uri_data(), retrying 234 403 Client Error: Forbidden for url: https://key2.mizhls.ru/wmsxx.php?name=premium594&number=1 https://key2.mizhls.ru/wmsxx.php?name=premium594&number=1
2024-07-10 22:41:19,173-DEBUG:m3u8_queue Reloading m3u8 stream queue 234
2024-07-10 22:41:19,175-DEBUG:internal_proxy No Video Stream from Provider 234 https://ddy1.mizhls.ru/ddy1/premium594/tracks-v1a1/2024/07/10/20/40/56-04000.ts
Below is copy of my config file:
[loggers]
keys = root
[logger_root]
level = TRACE
handlers = filehandler,loghandler
[handlers]
keys = loghandler, filehandler
[formatters]
keys = extend,simple
[handler_filehandler]
enabled = True
level = DEBUG
formatter = extend
class = lib.common.log_handlers.MPRotatingFileHandler
args = (os.getenv('LOGS_DIR','data/logs')+'/cabernet.log', 'a', 10000000, 10)
[handler_loghandler]
enabled = True
level = DEBUG
class = StreamHandler
formatter = extend
args = (sys.stdout,)
[formatter_extend]
format = %(asctime)s-%(levelname)s:%(module)s %(message)s
[formatter_simple]
format = %(levelname)s:%(module)s %(message)s
[main]
uuid = 4DA30C38-3B67-11EF-A80F-0242AC110002
maintenance_mode = False
[hdhomerun]
hdhr_id = 105E40F0
disable_hdhr = True
[tvguide]
enabled = True
[m3u]
hdhr_id = 1057973D
enabled = True
[daddylive]
hdhr_id = 105C1D9F
enabled = True
player-tuner_count = 10
epg-plugin = ALL
[display]
display_level = 3-Advanced
[epg]
epg_use_channel_number = True
epg_prettyprint = True
[daddylive_default]
label = DaddyLive Instance
enabled = True
player-stream_type = internalproxy
[tvguide_default]
label = TVGuide Instance
enabled = True
default_zone = Central
Please help if can assist.

Did anything perhaps change... I checks this morning and see now sky sports NZ channels are working fine! I didn't change anything my end to my setup, just started working all of a sudden.
Epg works fine and streaming those sports channels.
Any idea what issue was?

It was not working for me either previously and when I ran the logs in trace mode it indicated the server with the encryption keys was returning a http 403 code for me. Seems like it no longer gives me a 403 error code, so guess something was updated on the daddylive servers (strangely enough kodi worked during the time when cabernet was not). Makes me wonder if they had some cloudflare or other protection going on temporarily.
2024-07-09 23:08:21,734-INFO:decorators HTTPError in function M3U8GetUriData.get_uri_data(), retrying 3244 403 Client Error: Forbidden for url: https://key2.mizhls.ru/wmsxx.php?name=premium343&number=1 https://key2.mizhls.ru/wmsxx.php?name=premium343&number=1

Thanks for sharing, saw same logs propping up my side via debug......
At least it's working now! 😁
Do you perhaps know of any other good epg xml online sites to get guides from? I am looking for one with UK channels, in particular the sports channels. Ones from https://i.mjh.nz/ do not seem to have these ones or even movie channels which is odd..

I'm in the US, so not sure. I use emby and plex and they both have built in EPGs (if you are premium or whatever they call it) and just map the channels to a cable service instead of using an xml guide.

Thanks will play around in plex and see


Fauxmo with echo dot 3

Original report by Wernfried Schwenkner (Bitbucket: schwenkner, GitHub: schwenkner).

First I will introduce, that I use Espurna and came from that to Fauxmo.
My goal was to enable a Raspi for Alexa and found the fauxmo code very handy. Since I'm running Windows 10 IoT Core on my Raspi I have to adopt fauxmo to C#/UWP. FIrst I've done this with fauxmo 2.x, which emulate WeMo devices. This is wirking well with an echo dot 2.
No I purchased an echo dot 3 and the WeMo emulation didn't work anymore. I could get the device recognized, but when I try to control the device, I get the answer, "That isn't supported". Because of reading about some problems I adopted the fauxmo version 3.x with the Hue emulation and tried it first with my echo dot 2. This again worked well.
Now I'm trying to get the same code with echo dot 3 running. The short story, the device is not recognized.
The search package I get is:
M-SEARCH * HTTP/1.1
Host: <IP_ADDRESS>:1900
Man: "ssdp:discover"
MX: 3
ST: upnp:rootdevice
With echo dot 2 it was "ST: urn:schemas-upnp-org:device:basic:1". Sinec fauxmo accepts also "upnp:rootdevice", the udp answer is sent.  And there is also a get-request comming back, but different as in  case of echo dot 2. It is
GET /description.xml HTTP/1.1
Content-Type: application/json
User-Agent: Dalvik/2.1.0 (Linux; U; Android 7.1.2; AEODN Build/NS6504)
Host: <IP_ADDRESS>:1901
Connection: Keep-Alive
Accept-Encoding: gzip
After sending the description, Alexa answers, with no devices found and I see nothing in the device list. I also do not see any GET /api/ request.
Has anyone tried fauxmo already with echo dot 3?
Is there a hint what I can try to get this working?
I now tried echo dot 3 with the binaries of ESPurna  for Sonoff pow R2. There is also no device found. With echo dot 2 it works.

Closing stale issue


Fix run-comparison metrics and show Information

Previously the run comparison duplicated dimensions resulting in an interesting table. This PR fixes that.
It also adds the run information to the comparison page - but the commit information would probably be more useful? Some input is needed here.
The alignment of the infos is also a bit unpleasant. Sizing them dynamically helps on the detail page, but hurts us here. Maybe it should be scrapped and only commit info shown?

I think I found a slightly nicer layout:

It also adds the run information to the comparison page - but the commit information would probably be more useful? Some input is needed here.

Yeah, I don't think we need the run information here. Especially when it's just a click away anyway.

The current draft is this:

The comparison table is at the top, then the run and commit info is below that. Clicking on the hash in the run information takes you to the commit detail, clicking on the run takes you to the run detail. The table headers sort the table and are not otherwise clickable.
Is there anything missing or annoying? Or would you prefer a different layout?
You can also wait until tomorrow/later today when it is live on the Aaaaaaaah instance and try it out and see how you like it.

It looks fine like that to me.


Fix error with zsh aliases in nvm_print_color_code

Hopefully fixes #2362

(cc @naomiquinones @gitburd for possibly a bizarre zsh behavior with case statements and global aliases that #2291 may have exposed)

It works on my machine 🤷
I'm sorry I can't help further. I'm no expert in shell programming (or testing).

With alias -g R='| less -S' set running nvm_print_color_code R
echoing $1 inside the function:
echo "'${1-}'"
prints ''.
I'm still looking into it, but, it seems based on that altering the case statement to check for a string won't fix the issue.

@ljharb @gitburd Have you tried running nvm_print_color_code 'R' (quoting the argument)?

@hosamaly indeed, that does bypass the issue - even without this PR's change.
However, aliases in everything but zsh can't appear except in command position, and it seems like in zsh, it can appear in any position :-/
We can certainly try modifying nvm to invoke nvm_print_color_code with only quoted arguments, but that means that we'd also have to quote every single hardcoded argument passed to every function, just for zsh :-/

Would it makes sense to update just this function to quote or \ the input, since it takes a single character input, which is more likely to be a global alias than a more specific input is? Or should we wait for an alternative solution?

That seems like a reasonable middle ground, for now, but I’d prefer a long-term solution - perhaps like i do for IFS (re-invoke nvm with out any zsh aliases, or something)

@ljharb  The changes in this PR made it so that with alias -g R='| less -S' set I could source nvm.sh which is the important issue that needs to be fixed, it won't run nvm_print_color_code R correctly but nvm_print_color_code seems to work correctly when called by nvm_ls ect.

I'm happy to land this PR asap that quotes them; I was able to reproduce this error by setting the alias before sourcing nvm.sh in my ~/.zshrc.

I'm trying to add a test, but it's not reproducing the failure :-/

@ljharb I tried to reproduce the error using the aliases defined on my machine, but the tests still pass.
However, I don't think that a fix must wait until a reproducible test is available. I think that the fix is ready to be merged because a) it looks safe (from a code review standpoint), b) it doesn't cause any tests to fail, and c) a few people reported that it fixed the issue.
What do you think?

@hosamaly that's a fair point; and I could certainly land the quotes as-is, but without a regression test, it's highly likely it'll break in the future - and it's also likely i'll forget to add the test later if the fix is already merged :-)
I'll probably land it without a test in the next week or so, but it'd be really nice to have a test first.

I was able to write a test at show sourcing nvm.sh failing by moving it from setup to a new test file.
https://github.com/gitburd/nvm/blob/2ca958ff38e8e05cb19ba748426d8d81076470ac/test/sourcing/Sourcing nvm.sh global alias bug#L1-L23

I was able to write a test at show sourcing nvm.sh failing by moving it from setup to a new test file.
https://github.com/gitburd/nvm/blob/2ca958ff38e8e05cb19ba748426d8d81076470ac/test/sourcing/Sourcing nvm.sh global alias bug#L1-L23

@ljharb  This branch adds the test to the fix that @hosamaly made.

@ljharb  This branch adds the test to the fix that @hosamaly made.

Thanks! I've pulled that in and confirmed it fails the sourcing tests, only in zsh: https://travis-ci.com/github/nvm-sh/nvm/jobs/472555823
However, I then applied the fix on top, and they're still not passing :-/ so perhaps we still need a different fix?

Thanks! I've pulled that in and confirmed it fails the sourcing tests, only in zsh: https://travis-ci.com/github/nvm-sh/nvm/jobs/472555823
However, I then applied the fix on top, and they're still not passing :-/ so perhaps we still need a different fix?


Way of obtaining latents embedding

Great work. I see that the latent embedding is extracted from the denoising process in your paper, but you set the 'latents_forward' as the default way in this code. Can you explain this? Is there any difference between these two settings? And Do you think which one is better?

Hello,
I would like to ask if it is necessary to adjust the package version or anything else to successfully run this repository. I have been unable to solve some problems when reproducing the experiment, so I would like to ask you for advice.

Hi @yuhaoliu7456 !
sorry for the delay in reply (almost a year, wow, I wasn't maintaining this repo properly)
In the paper it is shown this way for simplicity.
However, when working with real images, it is both faster and more accurate to work with the features from the forward noising DDIM process; it accumulates less error and the time-consuming backward sampling is not needed.


Traccar process shuting down

Hi,
We have a traccar based solution with around 1500/2000 devices.
We have some problem with the traccar process who's shutting down unexpectedly.
We use the 2.X version with Teltonika FM1010 devices.
The FM1010 devices are configured to save data when 100 metter are reached or 10° angle or harsh breaking/acceleration. So we can have a lot of data. Those data are saved for 2 month and the position data base is around 113 000 000 saved records.
Do you have a max recommanded item on a single server?

That shouldn't be a problem for properly configured database server/


Codebase merging FG <--> FG+FR

Simplest path forward:

Consider FR_FG the main branch
List what is missing on the FR+FG from the FG-only Risteys
Integrate these changes in the FR_FG branch
Rename branches

Rename master (FG-only) branch to old-master_fg-only
Rename FR_FG branch to main
Set repo maim branch to main

The revamped documentation () was introduced before the FR_FG branch current branching point. However the FR_FG branch doesn't use this new documentation.
So this new documentation cannot be recovered from a merge of master into FR_FG.
It will have to be manually edited and commited.


[auth] Add the import statement for Google Sign In in firebase_auth Docs

The google_sign_in package from pub.dev/packages/google_sign_in is being used but no import statement is mentioned for the same in the README. And it is mandatory to import the google_sign_in package for creating an instance of GoogleSignIn i.e. working with Google Authentication.
Description

This PR simply places an import statement for the package - google_sign_in.
Beginners might come across the documentation and be confused as to what else is needed to import for Google auth.
This slightly makes it insightful for the document reader that he/she needs to import the google_sign_in package from pub.dev [link provided above].
In fact the firebase_auth documentation for auth does mention using the plugin to implement Google authentication, but the section Use The Plugin is a bit misleading for a newcomer.

Related Issues
Replace this paragraph with a list of issues related to this PR from the issue database. Indicate, which of these issues are resolved or fixed by this PR. Note that you'll have to prefix the issue numbers with flutter/flutter#.
Checklist
Before you create this PR confirms that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] If the pull request affects only one plugin, the PR title starts with the name of the plugin in brackets (e.g. [cloud_firestore])
[x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
[x] All existing and new tests are passing.
[x] I updated/added relevant documentation (doc comments with ///).
[ ] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the Flutter Style Guide.
[ ] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
[ ] I updated CHANGELOG.md to add a description of the change.
[x] I signed the CLA.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

@googlebot I signed it!

Thank you :)

Hey, @Salakar thanks for approving 😊
This change is minor but does help in providing a context to the reader that he/she needs to use the specified package, considering the snippet of code just before and after the import line, requires google_sign_in to be imported.
Looking forward to making more contributions as I learn.


Added Footer

I have added footer in all pages. @ghulamyazdani pls check it once.

@ghulamyazdani I think now all conflicts in files are resolved. Pls check it once.

Still same issue

When I checked by clicking on the "View development" option, everything seemed correct. I am not getting where the issue is arising.

Hey @SachinMittal1766, Kindly look over this issue on the Quiz page. Footer is placed a bit above its actual place.
Preview of Error

@ghulamyazdani I have made the changes. Hopefully, now the problem will be sorted.

LGTM @SachinMittal1766 🥳. Merging this PR.


Iconsistent layout, misbehaving file(maybe unicode related?)

I'm extracting this file:
https://nissrednjastrucna.edu.rs/data/documents/Opsti-deo.pdf
Which is in a consistent format
And minus a lot of newlines half of the produced text is as it should be
A) line B) line C) line
But I get a lot of this:
A) B) C) line line line
or this
line line line A) B) C)
or even better, one or several lines being in and the others out
Ive compared it to the first "questions" pdf I found on google and it performed well
https://www.hws.edu/academics/career/pdfs/intvq.pdf

It's grouping things as follows:

I think from the above question 1 and 2 work fine, but question 3 has an issue?
My suspicion is that the ones with smaller answers are (or perhaps smallest first word in all the answers) are getting split into two boxes because the words don't get merged into the same line. This should be what word_margin of LAParams controls, but I've just tried setting it really big and it still won't merge them into one box. I've also tried changing line_margin to be smaller so that the lines for A B and C are separate. This didn't help much...
I do think it should be possible to get this to merge properly, but needs a bit of debugging. (Also I could just be completely wrong)

You're right, question 3 is read wrong, but e.g question 11 ends up like:
11.  Мајбах је конструисао:
батеријско  паљење;
карбуратор;

а)
б)
в)  пумпу високог притиска.

But I don't get what do you mean smaller

I can't spot the difference between б and в
3, 11, 24, 33 show all the types of "mutations"
I was suspecting unicode because 76-:-93 is the English section in srp_latin encoding(ascii+modifications like ć, ž, č) and the results are drastically better with only 78, 81 being odd
I could be wrong tho
It might be worth noting that textract method="tesseract"(which uses pdftoppm) gets the answers better but messes up the questions
p.s Any way to fish out the correct answer? ¯_(ツ)_/¯

In 11 it detects two text boxes, one with the question and the top two answers, and the other with just the letters and the bottom answer.

It could be unicode related, I don't know. I'll try to have a dig into the merging logic to see why it doesn't correctly merge all this into a single text box...

Okay, so I think it's as simple as this: Sometimes the distance between the letter (i.e. a)) and the answer is a little bit larger, and so they don't get merged into a single line, and therefore never get merged into a single text box. I don't think it's anything to do with unicode.
I thought that making the word margin larger would fix this, but it didn't. The reason behind this is it's actually the character margin that we need to increase.
@Filip98 If you run your code with LAParams(char_margin=3) I think it will work much better. Please try it and let me know.
From looking at the code, I can see that the word_margin is only considered when we've already decided to merge to characters into a single line. If you look at the defaults char_margin=2 and word_margin=0.1, this becomes a bit more obvious.
The documentation reads (at least to me) as though "anything with distance less than char_margin will be grouped into a word" and then after that "any words with distance less than word_margin" will be grouped into a line.
In actual fact, the logic is "any two characters closer than char_margin will be grouped into a line. During this grouping, if they are further apart that word_margin then a space will be inserted". At no point is there actually a concept of "words" that get grouped.
The logic itself is fine, but I think the documentation should be made a bit clearer, perhaps. If your words not getting grouped into a line because they are too far apart, it's likely you actually need to increase "char_margin" and not "word_margin". The only reason to increase "word_margin" would be if two words are getting pushed together without a space in between them.

You're absolutely right, I did
pdf2txt.py -M 3 Opsti-deo.pdf
And the only ones that came out wrong are 68 a), 78, 81
running
pdf2txt.py -M 3.1 Opsti-deo.pdf
Ends up with only 68 a) being wrong, but it has some extra space, -M 4.1 is enough to pick it up too
I suppose there's a reason why the char margin is 2 by default but it might not be bad to reconsider or attempt to detect this
I just noticed that regardless..
New lines get read as double new lines

The documentation reads (at least to me) as though "anything with distance less than char_margin will be grouped into a word" and then after that "any words with distance less than word_margin" will be grouped into a line.
In actual fact, the logic is "any two characters closer than char_margin will be grouped into a line. During this grouping, if they are further apart that word_margin then a space will be inserted". At no point is there actually a concept of "words" that get grouped.
The logic itself is fine, but I think the documentation should be made a bit clearer, perhaps.

I totally agree!
Let's close this issue when the documentation is updated.
When updating the documentation, make sure to also update:

pdfminer/layout.py
tools/pdf2txt.py
tools/pdfdiff.py
docs/source/topics/converting_pdf_to_text.rst


envoy: Bump envoy version to 1.22.6

Just for testing purpose from PR build.
The runtime feature guard envoy.reloadable_features.no_extension_lookup_by_name is enabled to avoid proxy crash for cilium.tls_wrapper.
https://www.envoyproxy.io/docs/envoy/latest/version_history/v1.22/v1.22.0.html
Relates: https://github.com/cilium/proxy/pull/101
Signed-off-by: Tam Mach<EMAIL_ADDRESS>

/test

/test-backport-1.12


Assistance Required for Running WAHA Plus using Static IP on Docker

Dear Devlike.pro Team,
I hope this message finds you well.
I am currently working on setting up WAHA Plus and would like to run it using a static IP on Docker. Could you please provide me with the necessary steps or guidance to achieve this setup?
Any assistance or documentation you can provide would be greatly appreciated.
Thank you for your support.

Hi!
You need to assign the static IP to any interface (using your Cloud Provider interface) and run the docker container using the one of the method (we recommend using docker-compose)
https://waha.devlike.pro/docs/how-to/install/#docker-compose
Basically docker has nothing to do with static ip, in the suggested configuration it'll listen to all IPs assigned on the host network interfaces.
Let me know if that method doesn't work!

its working


Add input id and event props

Any hope of merging here?

I don't think the textarea option should be here. I think the idea in general of it is fine, but I'd prefer that to be a separate component instead of integrated into this one. This is meant to be a simple label/input. Also could you undo the changes to the package-lock.json?


Fixes Issue #16

The current implementation dumps a warning to the console (at least with the latest Reason). This uses a different way to create the link and children.

Note, I still need to test this branch... I have to leave soon but I can link the module locally and make sure it works as is (I pulled it from a custom  module I made for my own app).


Refactor the implementation of WriteOperation

Since the LeaseStore needs to send WriteOperation to KvStore through a channel, some operations of WriteOperation, such as Delete or DeleteRange, need to take ownership of the key and value, which can lead to some copy operations. Given that these operations are on the critical path, it threatens to bring significant performance degradation to users.
We need to refactor the implementation of the WriteOperation or the LeaseStore. This issue is based on #199

Resolve in pr #215


Enhancement: Spice installation on Windows

Goal-State/What/Result
Latest version of Spice could be installed on Windows via PowerShell (or via WinGet). The experience is similar as the current installation process on Linux and macOS
Milestones:

M1 Latest Spice version could be installed on Windows via shell command

Why/Purpose
Windows is the most popular operating system for developers according to the StackOverflow -  46.91% of developers use Windows professionally at work. They are unable to use Spice as there is no Spice installation available for Windows.
By When
Issue/Spec written and reviewed: 04/16
M1: 04/17
Done-Done: 04/17
Done-Done

[x] First Principles Driven
[x] The Algorithm
[x] PM/Design Review
[x] UX Review
[x] Threat Model / Security Review
[x] Tests
[x] Documentation (installation has been documented in docs, quickstarts refer to docs)
[x] Samples/Quickstarts/Tutorials (n/a; same samples/quickstarts work on Windows, no dedicated quickstart for Windows is required)

The Algorithm

[x] Every requirement questioned?
[x] Delete (Scope) any part you can.
[x] Simplify.
[x] Break down into smaller iterations/milestones.
[x] Opportunities for automation.

Spec

I can run the following command to install latest Spice on Windows (arm and intel)

curl -L "https://raw.githubusercontent.com/spiceai/spiceai/trunk/install/Install.ps1" -o Install.ps1 && Powershell -ExecutionPolicy Bypass -File ./Install.ps1

curl -L "https://win-install.spiceai.org" -o Install.ps1 && Powershell -ExecutionPolicy Bypass -File ./Install.ps1

Note: default PowerShell's execution policy is usually configured as "Restricted" that prevents any scripts from running. Temporary overriding execution policy via -ExecutionPolicy Bypass is a standard approach for PowerShell scripts execution.

spice.exe is installed to C:\Users\<user-name>\.spice\bin (similar to Linux/macOS)
spice.exe is added to Path
Spice runtime works when started as spice run

Note: WinGet(included with Windows 10 version 1709 and later) can be used as an alternative. Similar to Brew it requires additional configuration and publishing (additional steps after each release) so was not selected as starting point.
How/MAP

[x] Create PowerShell Script to Install the latest Windows release on Windows
[x] Spice CLI should be able to download and install Spice runtime on Windows
[x] Add Windows target to E2E Test Release Installation
[x] Document Windows installation (Readme.md)

Implementation (issues)

https://github.com/spiceai/spiceai/pull/1128
https://github.com/spiceai/spiceai/pull/1132
https://github.com/spiceai/spiceai/pull/1130
https://github.com/spiceai/spiceai/pull/1134
https://github.com/spiceai/docs/pull/205
https://github.com/spiceai/spiceai/pull/1143

Tested on Windows with WSL installed (How to install Linux on Windows with WSL):

No prebuilt binary for linux-aarch64

sg@SERGEIGREBNC3C8:~$ curl https://install.spiceai.org | /bin/bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  7020  100  7020    0     0   1249      0  0:00:05  0:00:05 --:--:--  1450
No prebuilt binary for linux-aarch64
Failed to install Spice CLI
For support, see https://docs.spiceai.org

Completed


Implemented Torsion Similarity CV

Description
A collective variable for measuring the degree of similarity between two lists of torsion angles

Codecov Report

Merging #10 (b71135b) into main (1d5e838) will increase coverage by 0.09%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files


Add typescript type declarations

Adding typescript declarations to make this easier to use with typescript projects. :)

@tappleby Could you take a look at this and lmk what you think?

It appears to make sense, but dont know enough about typescript. Will have a look and see.

Ok thanks. Fyi, its based on a similar PR I made on another repo and subsequent changes:

PR: https://github.com/tshelburne/redux-batched-actions/pull/11
Subsequent commits (check changes made in last 4 commits): https://github.com/tshelburne/redux-batched-actions/commits/master/package.json

Btw, thanks for creating redux-batched-subscribe. I am finding it super useful!


write documentation for this repo

This repo contains code that can be shared. So API documentation makes more sense.

let's start with logconf.c

Adding usage examples will help understand how to use some features.

Yes, thats a good idea. We can move tests from orca/test that use any of these files to here, it makes more sense than keeping it there!

@LucasMull  This repo will be more important as it's the building block for other projects.  Documentation of json-actor, and other will be more valuable.  Please treat this as the background task, it means we do this whenever there is no other high priority tasks.


Feat(product): add support for setAttributeInAllVariants action

Added the following Product resource action:

setAttributeInAllVariants

@mvantellingen Hi, sorry to ping you here but I'm not sure who could help me. I would like to add support for setAttributeInAllVariants action since I'm using this library in a project. Could you help me with the PR?


Suggest to add disk usage as a counter

In addition to the existing counters I think it would be useful to see disk information exposed in the tmux status line. Something to consider is if the user should have the option to select which volume to monitor instead of just the root volume. Presumably this is C:\ on Windows, but I have not been able to confirm.

Excellent feedback, I've submitted fixes for all the minor things. For the primary item of feedback I suggest setting some default configuration for each OS then:

Linux: /
Windows: C:\
MacOS: /System/Volumes/Data

The user would then have the option to override if they run a different setup.
Currently it's just set to / as I'm on Linux, I need to check what Windows reports when left like this. My presumption would be system volume, eg. C:\ but I'll verify.

Also, minor fix to be done; need to find a suitable icon for disk space!

For the primary item of feedback I suggest setting some default configuration for each OS then:

Linux: /
Windows: C:\
MacOS: /System/Volumes/Data

The user would then have the option to override if they run a different setup.
Currently it's just set to / as I'm on Linux, I need to check what Windows reports when left like this. My presumption would be system volume, eg. C:\ but I'll verify.

Love the suggestion! Very reasonable defaults! Let's do it as you say.
It would also be nice to update the README to reflect these new features. If you're up for it, feel free to draft some updates. But, I'm also happy to take care of it later if you prefer. Whatever works best for you!

Defaults are set and overrides can be configured. Could you please let me know if disk space is correctly reported on MacOS? @hendrikmi

Images in the README.md needs to be rendered anew, is that something you could do for me @hendrikmi ?

That's a much neater way to do it, excellent! Will submit changes later!23 aug. 2024 kl. 17:55 skrev Hendrik @.***>:
Defaults are set and overrides can be configured. Could you please let me know if disk space is correctly reported on MacOS? @hendrikmi
Nice, looks great! It works on my machine :D
Side note: Could we avoid calling functions in default argument values? It can lead to unexpected behavior because the function is evaluated at the time of function definition, not at the time of function call. Instead, we can use None as the default value and call the function if needed, for example:
if path is None:
path = _get_default_path()
Also, given that the -t and -f options are mutually exclusive, we could indicate that (not strictly necessary though). Example:
parser = argparse.ArgumentParser()
group = parser.add_mutually_exclusive_group()
group.add_argument("-t", "--total", action="store_true")
group.add_argument("-f", "--free", action="store_true")
parser.add_argument("-p", "--path", type=str, default=None)
args = parser.parse_args()
Images in the README.md needs to be rendered anew, is that something you could do for me @hendrikmi ?
Of course! I'll add them after merging this PR.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>


Register annotations for Azure integration

This is a Feature Request

What would you like to be added
Update Well-Known Labels, Annotations and Taints to include each of the annotations listed in https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#loadbalancer-annotations
Why is this needed
We should register (and document) all of our official annotations, even the beta ones.
Comments
/sig cloud-provider
/language en
/lifecycle frozen
/priority backlog
it's required, but not urgent

/triage accepted

A full list of all annotations are listed here
There are about 30 annotations to be recorded and registered.

I would like to try adding these annotations
/assign

Hi @sftim , just wanted to confirm is we have to create single PR for all 30 Annotations or we can break them in several PRs?

just wanted to confirm is we have to create single PR for all 30 Annotations or we can break them in several PRs?

Either way is fine!

For annotations that are not so qualified as "well-known" ones, there are two options in my mind:

Avoid register these annotations: No matter how many annotations there are on Azure,
they are 3rd-party details. We will be violating our own rules for these dual-hosted
contents.

Put them into a separate reference page, with a "3rd-party content" notice.
If some Kubernetes core components/resources cannot work properly when running on Azure
without these annotations, we can treat them as some information about "add-ons".
We can point users to Azure documentation page, just as we did for docs on CNI, CSI.

These are official annotations. Switching the way we document annotations should be a separate issue from this one, which is about tracking the official Azure annotations.
@tengqm they are not dual-hosted; the code that uses them is part of Kubernetes.

These are official annotations. Switching the way we document annotations should be a separate issue from this one, which is about tracking the official Azure annotations.

They are official to Azure doesn't mean they are official to Kubernetes, right?
These annotations are already documented at https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#loadbalancer-annotations,
along with many other Azure-specific contents, what we proposing here is to copy them
over to k8s website?

@tengqm they are not dual-hosted; the code that uses them is part of Kubernetes.

Well ... it depends on how we define "dual-hosting". The existing annotations are well
documented at the cloud-provider-azure website. I won't vote for copying them over and I
see that as "dual-hosting" (my version of course).

We can hyperlink to https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#loadbalancer-annotations for details.
However, we should still register these annotations per the policy in https://kubernetes.io/docs/reference/labels-annotations-taints/

They are official to Azure doesn't mean they are official to Kubernetes, right?

No; they are official to Kubernetes because (for legacy reasons) they use a Kubernetes namespace. If we had a time machine we could go back and ask the Azure folks to use a different domain name in the annotation keys.

(We can still encourage the Azure provider folks to use a Microsoft domain name for the post-beta annotation and label keys, but that's again a separate issue to this one).

If there is a second thought about registering these annotations or the related format, I'd like to know about it so that I can raise a PR that is still required.

We can hyperlink to https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#loadbalancer-annotations for details.
However, we should still register these annotations per the policy in https://kubernetes.io/docs/reference/labels-annotations-taints/

Just checked the labels-annotations-taints/_index.md file, we already have AWS specific annotations there. Most of them are about LB Services. That file is now 2385 lines of markdown.
Even if we want to add some pointers to the Azure-specific annotations, I'd still suggest
to put them into a new file under labels-annotations-taints/. We may want to move AWS-specific, NPD-specific labels/annotations out of the _index.md file as well.

Eventually, I'd quite like [someone] to make it more like a searchable file where you type in some text and see the matching annotations. We have so many of them now that one file isn't obviously the right way to organise it all.
I think @thockin had talked about moving the canonical registry into its own repo - perhaps with generator code. We haven't found the round tuits to make this happen.
But that's for another time.

They are official to Azure doesn't mean they are official to Kubernetes, right?

No; they are official to Kubernetes because (for legacy reasons) they use a Kubernetes namespace. If we had a time machine we could go back and ask the Azure folks to use a different domain name in the annotation keys.

We cannot change history because we are not the Big Brother. The "kubernetes.io" namespace thing is not a rule strictly followed by cloud providers. For example, take a look at these:

On huawei cloud: https://github.com/kubernetes-sigs/cloud-provider-huaweicloud/blob/master/pkg/cloudprovider/huaweicloud/huaweicloud.go#L65-L85
A positive example, OpenStack: https://github.com/kubernetes/cloud-provider-openstack/blob/master/pkg/openstack/loadbalancer.go#L58-L87

These annotations serve the similar purposes, but they may and may not use "kubernetes.io" domain name. Given that we have so many cloud providers out there, I'm not inclined to document things for one or two providers while ignoring others.

I'm not inclined to document things for one or two providers while ignoring others

We should document all the in-project annotations; that would include the integration with Huawei. For the OpenStack integration, they have done the right thing so we don't need to register official annotations.
This issue is about Azure, right?

Annotations which are specific to one cloud-provider should use provider specific names.  It boggles my mind that so many well-intentioned people get this wrong, but it IS somewhat messy because it is azure code that lives in a k8s org.
We cannot rip those out, probably.
Providers SHOULD be chided and SHOULD add better names that trigger the same meaning.
As for documentation, I agree we should document them and make it clear that they are provider-specific.  If anyone wants to help get the "names DB" off the ground, let me know.  It's not HARD, it's just tedious.

Even if we want to add some pointers to the Azure-specific annotations, I'd still suggest to put them into a new file under labels-annotations-taints/. We may want to move AWS-specific, NPD-specific labels/annotations out of the _index.md file as well.

I agree , from reader's perspective , having a different file will serve us good and will also help organising these annotations in discussion as they are not few but 30 in number.

Eventually, I'd quite like [someone] to make it more like a searchable file where you type in some text and see the matching annotations. We have so many of them now that one file isn't obviously the right way to organise it all. I think @thockin had talked about moving the canonical registry into its own repo - perhaps with generator code. We haven't found the round tuits to make this happen.
But that's for another time.

Do let me know about the new required changes and where to register the annotations now. I'll continue the work then.

Hi Any update on this discussion? Just asking so we can start working on this one.

Eventually, I'd quite like [someone] to make it more like a searchable file where you type in some text and see the matching annotations. We have so many of them now that one file isn't obviously the right way to organise it all. I think @thockin had talked about moving the canonical registry into its own repo - perhaps with generator code. We haven't found the round tuits to make this happen.
But that's for another time.

Just dropping by to see if we have decided the action on this issue?


Lazy load type graph

Jenkins test this please

Are the line lengths less than 120? Since you are fixing existing style in these classes maybe you should do this as well

@ishark  I have updated the pull request, please take a look


Sort "Inbound Network Rules" by port number

This change sort the "Inbound Network Rules" lists by port number in ascending order, making it easier to read and understand. This change also replaces 8/0 with n/a as "port" for ICMP, since ICMP does not have port numbers.

replaces 8/0 with n/a as "port" for ICMP, since ICMP does not have port numbers.

Those are the ICMP types (echo and echo reply) that should be allowed. I think we expected this to be somewhat self-evident.

The table is organized by program unit i.e. All the core RKE2 ports, all the Cilium ports, all the Calico ports.

Great to hear that there's a thought to it, I thought it was random. 😄 I was looking for "what ports do I need to open" and later "what does this port do", so I naturally was looking from top to bottom scanning for ports. Feel free to disregard my PR if it does not suite you, no hard feelings. 👍

Those are the ICMP types (echo and echo reply) that should be allowed. I think we expected this to be somewhat self-evident.

Clearly not. Today I learned something new.


feat(amount): add new trimZero props

Pull Request Test Coverage Report for Build<PHONE_NUMBER>7
Details

7 of 7 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.003%) to 83.321%

Totals

Change from base Build<PHONE_NUMBER>1:
-0.003%

Covered Lines:
10217

Relevant Lines:
11269

💛  - Coveralls


Document how to use StructAPI

Just taking code snippets from the Demo app & tests and adding a description of what's going on should be sufficient. I'd say it should go in a new markdown file included in the /docs directory.

Oops, a dupe of #428.


Default Travis behavior does not properly execute some tests. This commit fixes this.

@seojangho Can we cache our builds as well with this PR? I've provided a link below:
https://docs.travis-ci.com/user/caching
We can add the lines below to cache our maven directories
cache:
  directories:
  - $HOME/.m2

@wonook Good idea!

I'll merge after the tests


DDPStateSingleton.logout() does not actually call server logout method

DDPStateSingleton has a logout method that clears the token and broadcasts a connection state change, but it never actually calls the server-side logout method.

added in android-ddp-client <IP_ADDRESS>


Fake Images/Image

Implement these fakes for unit testing

The job #156 assigned to @amihaiemil/z, here is why; the budget is 30 minutes, see §4; please, read §8 and §9; if the task is not clear, read this and this; there will be no monetary reward for this job

Job gh:amihaiemil/docker-java-api#156 already assigned to @amihaiemil, can't assign to @amihaiemil

@amihaiemil/z this job was assigned to you 5days ago. It will be taken away from you soon, unless you close it, see §8. Read this and this, please.

@0crat waiting

@0crat waiting (here)

@amihaiemil The impediment for #156 was registered successfully by @amihaiemil/z

Actually, this is not needed.

Order was finished: +30 point(s) just awarded to @amihaiemil/z


PHP Auto-indentation is broken until HTML language mode is toggled

VSCode Version: 1.45 (user setup)
OS Version: Windows_NT x64 10.0.18363 (Windows 10)

When working with a PHP file, I expect the following to occur when I press Enter:

|

    ↓↓↓ Enter ↓↓↓

    |

This has always been the case when working with HTML and PHP files alike. However, recently, in PHP files, I see the following:

|

    ↓↓↓ Enter ↓↓↓

|

Changing the language mode from PHP to HTML and back again in a single file fixes the issue in all PHP files until the window is reloaded.
I know for a fact that this never used to happen: as recently as last week this was not the case. However, when I go and download and install versions 1.43.2 and 1.44.2, the issue is present there as well. This leads me to believe I've tweaked a setting, but I cannot find anything amiss in my settings.json. Here's my current settings.json, just in case I'm missing something. Here is my list of extensions.
It is perhaps worth noting that I have seen variants of this error dating all the way back to 2017, but none have touched on the "until HTML is toggled" factor, hence why I think this is a new error.
Steps to Reproduce:

Open a PHP file with Language Mode on Auto Detect or PHP.

Observe suboptimal indentations on Enter.

CTRL+SHIFT+P → Change Language Mode → HTML

Observe proper indentations on Enter.

CTRL+SHIFT+P → Change Language Mode → PHP

Observe that proper indentations on Enter remain.

Reload window (with or without extensions disabled)

Observe that suboptimal indentations on Enter have returned.

Does this issue occur when all extensions are disabled?:
Yes.

@Tyriar could you offer an explanation for why this was closed? This doesn't seem like something that should require an extension to fix...


GH Action for CI build

Create a basic GitHub action to build/test the primary executable against N & N-1 Xcode versions on PR/push to trunk

Maybe we should consider changing from Travis to Github CI since it is more trendy these days :)


Fix:issue_276_added_cards_on_page16

Corrected up the Issue #276 and also added up the 2 card .
and also corrected up the code

pls label the issue #276 with  hacktoberfest and PR with hacktoberfest-accepted.

@harshvardhansb pls label it with Hacktoberfest-accepted and issue #276 as Hacktoberfest.


Implement remove the body in the body popup menu. remove all body-related objects. action should be undoable

Steps to reproduce
add a JMenuItem to the Popup
implement the remove action
Expected result
remove all the body items
Actual result
no remove action

This task is closed because for now.


Potential bug in GraphicsDevice

I learned source and came across on unclear line inside void GraphicsDevice::InitializeDevice(const winrt::com_ptr<IDXGIFactoryT>& factory, GraphicsDeviceFlags flags, winrt::com_ptr<IDXGIAdapterT> adapter) method
      com_ptr<ID3D12Device> device12;       check_hresult(D3D12CreateDevice(adapter.get(), *ranges::rend(_featureLevels), guid_of<ID3D12Device>(), device12.put_void()));
it seems like _featureLevels[0] should be used. Otherwise it's undefined behaviour. Here is example https://godbolt.org/z/3rKx48Wr9 to demonstrate problem

It should be rbegin I think, as the last specified is the minimum.

Fixed


Error loading the model on CPU

Hi,
When I try to run the model on Mac CPU, I am getting the following errors. Here is the command I used
python aimnet2_ase_opt.py ../models/aimnet2_wb97m-d3_0.jpt test.xyz out.xyz --charge 0 --traj trj.xyz
The error is as below
Loading AIMNet2 model from file ../models/aimnet2_wb97m-d3_0.jpt
Traceback (most recent call last):
  File "aimnet2_ase_opt.py", line 74, in <module>
    model = torch.jit.load(args.model, map_location=device)
  File "/opt/anaconda3/envs/delfta/lib/python3.7/site-packages/torch/jit/_serialization.py", line 161, in load
    cpp_module = torch._C.import_ir_module(cu, str(f), map_location, _extra_files)
RuntimeError: [enforce fail at inline_container.cc:222] . file not found: wb97m_gas_0/version

I am using PyTorch 1.8.0

You have to switch to a recent PyTorch 2.x version.

Thank you so much for the advice ! That worked :)


Can the code be made public？

Hello Sir, your paper has been drafted, can the code be made public？

您好先生，代码可以公开吗？


Async example using standard library

An async example that does not use tornado.
Compatible with #447 , #497 .
output
❯ poetry run python ./examples/async_optimization_using_asyncio.py
optimizer 1 wants to register: {}.
optimizer 1 got -21.100297200767475 as target.
optimizer 1 will to register next: {'params': {'x': 3.077062879511166, 'y': -2.554149861261048}, 'target': -21.100297200767475}.

optimizer 3 wants to register: {}.
optimizer 3 got -10.546430335262063 as target.
optimizer 3 will to register next: {'params': {'x': -3.1987354495358904, 'y': -0.14652599584330717}, 'target': -10.546430335262063}.

optimizer 2 wants to register: {}.
optimizer 2 got -7.52922723314148 as target.
optimizer 2 will to register next: {'params': {'x': -0.6592425110985811, 'y': -1.845105717667081}, 'target': -7.52922723314148}.

optimizer 1 wants to register: {'params': {'x': 3.077062879511166, 'y': -2.554149861261048}, 'target': -21.100297200767475}.
optimizer 1 got -18.62547976566032 as target.
optimizer 1 will to register next: {'params': {'x': -3.99855050239952, 'y': 2.907111335350107}, 'target': -18.62547976566032}.

optimizer 3 wants to register: {'params': {'x': -3.1987354495358904, 'y': -0.14652599584330717}, 'target': -10.546430335262063}.
optimizer 3 got -10.785140892249524 as target.
optimizer 3 will to register next: {'params': {'x': -0.09106196454413151, 'y': -2.4317413379890516}, 'target': -10.785140892249524}.

optimizer 1 wants to register: {'params': {'x': -3.99855050239952, 'y': 2.907111335350107}, 'target': -18.62547976566032}.
optimizer 1 got -6.9513291836534705 as target.
optimizer 1 will to register next: {'params': {'x': -1.7042293053783366, 'y': -1.2465377046342094}, 'target': -6.9513291836534705}.

optimizer 2 wants to register: {'params': {'x': -0.6592425110985811, 'y': -1.845105717667081}, 'target': -7.52922723314148}.
optimizer 2 got -9.252942089955432 as target.
optimizer 2 will to register next: {'params': {'x': -1.9681196432024617, 'y': -1.5257567499654527}, 'target': -9.252942089955432}.

optimizer 3 wants to register: {'params': {'x': -0.09106196454413151, 'y': -2.4317413379890516}, 'target': -10.785140892249524}.
optimizer 3 got -21.57347936525579 as target.
optimizer 3 will to register next: {'params': {'x': -2.7668676351475074, 'y': -2.8623726975563906}, 'target': -21.57347936525579}.

optimizer 3 wants to register: {'params': {'x': -2.7668676351475074, 'y': -2.8623726975563906}, 'target': -21.57347936525579}.
optimizer 3 got 0.7627702981116544 as target.
optimizer 3 will to register next: {'params': {'x': -0.13910576239972006, 'y': 0.5332245842425523}, 'target': 0.7627702981116544}.

optimizer 1 wants to register: {'params': {'x': -1.7042293053783366, 'y': -1.2465377046342094}, 'target': -6.9513291836534705}.
optimizer 1 got -30.41332924795998 as target.
optimizer 1 will to register next: {'params': {'x': -3.955069082531736, 'y': -2.9712413424975255}, 'target': -30.41332924795998}.

optimizer 2 wants to register: {'params': {'x': -1.9681196432024617, 'y': -1.5257567499654527}, 'target': -9.252942089955432}.
optimizer 2 got 0.5094238101556255 as target.
optimizer 2 will to register next: {'params': {'x': -0.33478072822557614, 'y': 0.38477804504949}, 'target': 0.5094238101556255}.

optimizer 3 wants to register: {'params': {'x': -0.13910576239972006, 'y': 0.5332245842425523}, 'target': 0.7627702981116544}.
optimizer 3 got -3.4595513273103347 as target.
optimizer 3 will to register next: {'params': {'x': 1.3141852679277566, 'y': 2.6530179699180483}, 'target': -3.4595513273103347}.

optimizer 1 wants to register: {'params': {'x': -3.955069082531736, 'y': -2.9712413424975255}, 'target': -30.41332924795998}.
optimizer 1 got -7.40063770760273 as target.
optimizer 1 will to register next: {'params': {'x': 2.097769698418473, 'y': 3.0}, 'target': -7.40063770760273}.

optimizer 3 wants to register: {'params': {'x': 1.3141852679277566, 'y': 2.6530179699180483}, 'target': -3.4595513273103347}.
optimizer 3 got -17.80960406315896 as target.
optimizer 3 will to register next: {'params': {'x': 3.99152169675457, 'y': 2.6962778685983255}, 'target': -17.80960406315896}.

optimizer 1 wants to register: {'params': {'x': 2.097769698418473, 'y': 3.0}, 'target': -7.40063770760273}.
optimizer 1 got -1.084409068928497 as target.
optimizer 1 will to register next: {'params': {'x': -0.7688071782577142, 'y': 2.2220247917239275}, 'target': -1.084409068928497}.

optimizer 1 wants to register: {'params': {'x': -0.7688071782577142, 'y': 2.2220247917239275}, 'target': -1.084409068928497}.
optimizer 1 got 0.7992533007528416 as target.
optimizer 1 will to register next: {'params': {'x': -0.27741788732234784, 'y': 1.351832367812803}, 'target': 0.7992533007528416}.

optimizer 2 wants to register: {'params': {'x': -0.33478072822557614, 'y': 0.38477804504949}, 'target': 0.5094238101556255}.
optimizer 2 got -19.0 as target.
optimizer 2 will to register next: {'params': {'x': 4.0, 'y': 3.0}, 'target': -19.0}.

optimizer 2 wants to register: {'params': {'x': 4.0, 'y': 3.0}, 'target': -19.0}.
optimizer 2 got -0.771130632671361 as target.
optimizer 2 will to register next: {'params': {'x': 1.3206718333240124, 'y': 0.8358155265076721}, 'target': -0.771130632671361}.

optimizer 3 wants to register: {'params': {'x': 3.99152169675457, 'y': 2.6962778685983255}, 'target': -17.80960406315896}.
optimizer 3 got -0.9932407833280448 as target.
optimizer 3 will to register next: {'params': {'x': -0.8150099152392469, 'y': 2.1528224587462548}, 'target': -0.9932407833280448}.

optimizer 1 wants to register: {'params': {'x': -0.27741788732234784, 'y': 1.351832367812803}, 'target': 0.7992533007528416}.
optimizer 1 got 0.27660495983220357 as target.
optimizer 1 will to register next: {'params': {'x': 0.8503719180120841, 'y': 1.0162062094348336}, 'target': 0.27660495983220357}.

optimizer 3 wants to register: {'params': {'x': -0.8150099152392469, 'y': 2.1528224587462548}, 'target': -0.9932407833280448}.
optimizer 3 got 0.6641434385719567 as target.
optimizer 3 will to register next: {'params': {'x': 0.5017384428424876, 'y': 1.2900260271114286}, 'target': 0.6641434385719567}.

optimizer 1 wants to register: {'params': {'x': 0.8503719180120841, 'y': 1.0162062094348336}, 'target': 0.27660495983220357}.
optimizer 1 got 0.5494853411369414 as target.
optimizer 1 will to register next: {'params': {'x': -0.6658390406816954, 'y': 0.9153062530812446}, 'target': 0.5494853411369414}.

optimizer 2 wants to register: {'params': {'x': 1.3206718333240124, 'y': 0.8358155265076721}, 'target': -0.771130632671361}.
optimizer 2 got 0.6648264414004357 as target.
optimizer 2 will to register next: {'params': {'x': 0.4292135631688305, 'y': 1.3885219115976353}, 'target': 0.6648264414004357}.

optimizer 3 wants to register: {'params': {'x': 0.5017384428424876, 'y': 1.2900260271114286}, 'target': 0.6641434385719567}.
optimizer 3 got 0.8238072342547169 as target.
optimizer 3 will to register next: {'params': {'x': -0.40623323182659554, 'y': 0.8943244252203824}, 'target': 0.8238072342547169}.

optimizer 1 wants to register: {'params': {'x': -0.6658390406816954, 'y': 0.9153062530812446}, 'target': 0.5494853411369414}.
optimizer 1 got 0.9985878986141388 as target.
optimizer 1 will to register next: {'params': {'x': 0.03755977189755677, 'y': 1.0011682982772876}, 'target': 0.9985878986141388}.

optimizer 1 is done!

optimizer 1 found a maximum value of: 0.9985878986141388
optimizer 2 wants to register: {'params': {'x': 0.4292135631688305, 'y': 1.3885219115976353}, 'target': 0.6648264414004357}.
optimizer 2 got 0.9990561083666321 as target.
optimizer 2 will to register next: {'params': {'x': 0.029861577428955982, 'y': 1.007223422099141}, 'target': 0.9990561083666321}.

optimizer 2 wants to register: {'params': {'x': 0.029861577428955982, 'y': 1.007223422099141}, 'target': 0.9990561083666321}.
optimizer 2 got 0.9716088970685411 as target.
optimizer 2 will to register next: {'params': {'x': 0.1261146869479921, 'y': 0.8882583843527005}, 'target': 0.9716088970685411}.

optimizer 3 wants to register: {'params': {'x': -0.40623323182659554, 'y': 0.8943244252203824}, 'target': 0.8238072342547169}.
optimizer 3 got 0.9931094324110107 as target.
optimizer 3 will to register next: {'params': {'x': 0.08297444751731618, 'y': 1.002410113728728}, 'target': 0.9931094324110107}.

optimizer 3 is done!

optimizer 3 found a maximum value of: 0.9931094324110107
optimizer 2 wants to register: {'params': {'x': 0.1261146869479921, 'y': 0.8882583843527005}, 'target': 0.9716088970685411}.
optimizer 2 got 0.9976925353945171 as target.
optimizer 2 will to register next: {'params': {'x': -0.048008570740855065, 'y': 0.9983746566814108}, 'target': 0.9976925353945171}.

optimizer 2 wants to register: {'params': {'x': -0.048008570740855065, 'y': 0.9983746566814108}, 'target': 0.9976925353945171}.
optimizer 2 got 0.9934994877069779 as target.
optimizer 2 will to register next: {'params': {'x': 0.041313641166422777, 'y': 1.0692365174354843}, 'target': 0.9934994877069779}.

optimizer 2 is done!

optimizer 2 found a maximum value of: 0.9990561083666321

Is this in reference to #138?

No, it's not related.
I was curious about the example(especially async) and read it,
but there was some unsupported code in the latest version(1.5.1), so I fixed it.
All I did was change tornado to asyncio and http.server,
and UtilityFunction to UpperConfidenceBound.

I honestly never had a close look at the async example in the docs. If I understand correctly, the idea is to run multiple optimizers in parallel? Why would that be advantageous, considering that they're operating on limited information?
In any case, if we want to keep an example like this I think it would make sense to replace the other file with this version. For now, I would like to wait and see if someone can explain whether this make sense conceptually before making a decision.

I'm currently leaning towards deleting the async example from the folder entirely, I'm not sure it's really needed and evidently we're not good at maintaining it. What do you think?

I'm currently leaning towards deleting the async example from the folder entirely, I'm not sure it's really needed and evidently we're not good at maintaining it. What do you think?

This PR was not rewritten with a full understanding of BayesianOptimization,
it simply fixed the point where the error occurred,
so if you think it's right to delete it, I agree.
When I was fixing this example, I also felt it was very awkward.


Document Spark SQL

Mention how complex types map from Faker schema to Spark types.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 91.92%. Comparing base (b37c566) to head (a3474a3).
Report is 172 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff              @@
##               main    #1270      +/-   ##
============================================
- Coverage     92.35%   91.92%   -0.44%
- Complexity     2821     3090     +269
============================================
  Files           292      310      +18
  Lines          5609     6052     +443
  Branches        599      636      +37
============================================
+ Hits           5180     5563     +383
- Misses          275      326      +51
- Partials        154      163       +9

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

thanks for the contribution
I feel like at some point we have to have kind of compatibility matrix: what is supported for what dialect...
However it is a topic for a separate PR/issue


Categorical Features + Feature Importance in Light GBM

Environment info
Operating System:
CPU
Python
Error message

So when I use the categorical features in Light GBM, i have to encode it to integers before doing so.

Will the encoding of categorical to integers not introduce hierarchy in the values?

Secondly, after I run the model, and use the feature importance of light gbm, it gives me integer values from the encoded categorical features instead of the features themselves. Why is that?
Reproducible examples

predictors = ['offer_id', 'affiliate_id', 'click_device_model', 'click_os', 'click_os_version',"click_country",'click_carrier']
categorical = ['offer_id', 'affiliate_id', 'click_device_model', 'click_os', 'click_os_version',"click_country",'click_carrier']
m=[X_train,X_test]
for a in m:
for col in categorical:
a[col] = a[col].astype('category')
a[col] = pd.Categorical(a[col].cat.codes+1)
a[col] = a[col].astype(np.int64)
import pandas as pd
import numpy as np
import lightgbm as lgb
import gc
target = 'tracker_fraud_flag'
dtrain = lgb.Dataset(X_train, y_train,
feature_name=predictors,
categorical_feature=categorical
)
dvalid = lgb.Dataset(X_test, y_test,
feature_name=predictors,
categorical_feature=categorical
)
evals_results = {}
print("Training the model...")
lgb_model = lgb.train(params,
dtrain,
valid_sets=[dtrain, dvalid],
valid_names=['train','valid'],
evals_result=evals_results,
num_boost_round=350,
early_stopping_rounds=30,
verbose_eval=True)
Feature names:
print('Feature names:', lgb_model.feature_name())
Feature importances:
print('Feature importances:', list(lgb_model.feature_importance()))
The output comes as :
Feature names: ['offer_id', 'affiliate_id', 'click_device_model', 'click_os', 'click_os_version', 'click_country', 'click_carrier']
Feature importances: [0, 1, 0, 0, 0, 0, 0]
^ Why are the feature importance coming as values and not the feature names?
Steps to reproduce

Feature importance is showing the number of times the features was 'split' on.
This is what you're looking for -
'Split' is the number of times the modle split on that feature. 'Gain' is essentially a measure of how much a feature contributes to the accuracy of the model.
lgb.plot_importance(lgb_model, importance_type='split', max_num_features=20)

lgb.plot_importance(lgb_model, importance_type='gain', max_num_features=20)

Thanks a lot @bbennett36 for your detailed answer!


[text-to-speech] Empty Language code

[READ] Step 1: Are you in the right place?
Issues filed here should be about bugs for a specific extension in this repository.
If you have a general question, need help debugging, or fall into some
other category use one of these other channels:

For general technical questions, post a question on StackOverflow
with the firebase tag.
For general Firebase discussion, use the firebase-talk
google group.
To file a bug against the Firebase Extensions platform, or for an issue affecting multiple extensions, please reach out to
Firebase support directly.

[REQUIRED] Step 2: Describe your configuration

Extension name: text-to-speech
Extension version: *=0.1.3
Configuration values (redact info where appropriate):

us-central1
Document Path: tts_content
Location: mighty-strong-software-apps.appspot.com
Storage path (Optional): tts_content
Enable ssml: no
Language code (Optional): en-US
Voice type (Optional): Standard
SSML Gender: FEMALE
Audio Encoding: MP3
Enable per document overrides: yes
[REQUIRED] Step 3: Describe the problem
Steps to reproduce:
I've configured the extension to work with both SSML and regular text but on creation of documents I continue to get the following log failures.
Expected result
I expect a good run here seeing as I specified the language code in the extension based on the drop downs.
Actual result
Continue to get failures with the following logs.
Error: 3 INVALID_ARGUMENT: Empty language code.
at callErrorFromStatus (/workspace/node_modules/@grpc/grpc-js/build/src/call.js:31:19)
at Object.onReceiveStatus (/workspace/node_modules/@grpc/grpc-js/build/src/client.js:192:76)
at Object.onReceiveStatus (/workspace/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:360:141)
at Object.onReceiveStatus (/workspace/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:323:181)
at /workspace/node_modules/@grpc/grpc-js/build/src/resolving-call.js:94:78
at processTicksAndRejections (node:internal/process/task_queues:78:11)
What happened? How can we make the problem occur?
This could be a description, log/console output, etc.

HI @devandanger
I have tried to replicate with the same configuration, however the files appear to generate as expected.
As a solution for now, does overriding the config in the document resolve the issue, for example:
{
   "text": "This is a test",
   "languageCode": "en-US"
}

Yes this worked.  It continues to be really finicky though on how it's generating but at least it generating now.
for eg..

This generated media read by the female voice, but changing this to en-US I couldn't get the female voice working in that scenario.

I think SSML Gender is getting ignored and the default for that languageCode is getting picked up.  So I think in general adding some more document to how the configurable overrides would be helpful.  I started looking through the code and unit tests to infer but I started going down a rabbit hole.
Thanks for the help though @dackers86

Too add more to this investigation, this was successfully replicated with the vlaues:
{
"text": "This is a test",
"languageCode": "en-US",
"voiceName": "en-US-Neural2-C"
}
Potential use case for investigating this issue.


[fix](runtime filter) append late arrival runtime filters in vfilecanner

backport #25996
VFileScanner will try to append late arrival runtime filters in each loop of ScannerScheduler::_scanner_scan.  However, VFileScanner::_get_next_reader only generates the _push_down_conjuncts in the first loop, so the late arrival runtime filters are ignored.
Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Dawn fails for many CVEs that rails 3.2.22 is not vulnerable to

Some of the below failures are fixed in previous versions on 3.2.x  and some 3.2.x is not vulnerable to.  I've broken the blocks up by CVE for ease of reading:
I, [2015-12-05 11:47:14#30420]  INFO -- : dawn v1.4.2 is starting up
I, [2015-12-05 11:47:17#30420]  INFO -- : scanning .
I, [2015-12-05 11:47:17#30420]  INFO -- : rails v3.2.22 detected
I, [2015-12-05 11:47:17#30420]  INFO -- : applying all security checks
I, [2015-12-05 11:47:17#30420]  INFO -- : 201 security checks applied - 0 security checks skipped
I, [2015-12-05 11:47:17#30420]  INFO -- : 17 vulnerabilities found

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2013-6414 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: actionpack/lib/action_view/lookup_context.rb in Action View in Ruby on Rails 3.x before 3.2.16 and 4.x before 4.0.2 allows remote attackers to cause a denial of service (memory consumption) via a header containing an invalid MIME type that leads to excessive caching.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails to version 3.2.16 or 4.0.2. As a general rule, using the latest stable version is recommended.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2013-6415 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: Cross-site scripting (XSS) vulnerability in the number_to_currency helper in actionpack/lib/action_view/helpers/number_helper.rb in Ruby on Rails before 3.2.16 and 4.x before 4.0.2 allows remote attackers to inject arbitrary web script or HTML via the unit parameter.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails to version 3.2.16 or 4.0.2. As a general rule, using the latest stable version is recommended.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2013-6417 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: actionpack/lib/action_dispatch/http/request.rb in Ruby on Rails before 3.2.16 and 4.x before 4.0.2 does not properly consider differences in parameter handling between the Active Record component and the JSON implementation, which allows remote attackers to bypass intended database-query restrictions and perform NULL checks or trigger missing WHERE clauses via a crafted request that leverages (1) third-party Rack middleware or (2) custom Rack middleware. NOTE: this vulnerability exists because of an incomplete fix for CVE-2013-0155.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails to version 3.2.16 or 4.0.2. As a general rule, using the latest stable version is recommended.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2014-0080 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: SQL injection vulnerability in activerecord/lib/active_record/connection_adapters/postgresql/cast.rb in Active Record in Ruby on Rails 4.0.x before 4.0.3, and 4.1.0.beta1, when PostgreSQL is used, allows remote attackers to execute "add data" SQL commands via vectors involving  (backslash) characters that are not properly handled in operations on array columns.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails version at least to 4.0.3 or 4.1.0.beta2. As a general rule, using the latest stable rails version is recommended.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2014-0081 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: Multiple cross-site scripting (XSS) vulnerabilities in actionview/lib/action_view/helpers/number_helper.rb in Ruby on Rails before 3.2.17, 4.0.x before 4.0.3, and 4.1.x before 4.1.0.beta2 allow remote attackers to inject arbitrary web script or HTML via the (1) format, (2) negative_format, or (3) units parameter to the (a) number_to_currency, (b) number_to_percentage, or (c) number_to_human helper.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails version at least to 3.2.17, 4.0.3 or 4.1.0.beta2. As a general rule, using the latest stable rails version is recommended.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2014-0130 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: The implicit render functionality allows controllers to render a template, even if there is no explicit action with the corresponding name.  This module does not perform adequate input sanitization which could allow an attacker to use a specially crafted request to retrieve arbitrary files from the rails application server.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails version up to version 3.2.18, 4.0.5 or 4.1.1.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2014-3483 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: high
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: Ruby on Rails contains a flaw that may allow carrying out an SQL injection attack. The issue is due to the PostgreSQL adapter for Active Record not properly sanitizing user-supplied input when quoting ranges. This may allow a remote attacker to inject or manipulate SQL queries in the back-end database, allowing for the manipulation or disclosure of arbitrary data.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails at least to version 4.0.7 or 4.1.3. As a general rule, using the latest stable rails version is recommended.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2014-7818 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: Directory traversal vulnerability in actionpack/lib/action_dispatch/middleware/static.rb in Action Pack in Ruby on Rails 3.x before 3.2.20, 4.0.x before 4.0.11, 4.1.x before 4.1.7, and 4.2.x before 4.2.0.beta3, when serve_static_assets is enabled, allows remote attackers to determine the existence of files outside the application root via a /..%2F sequence.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails gem to latest version or at least 3.2.20, 4.0.11, 4.1.7 or 4.2.0.beta3. If unsure upgrade to the latest available version.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2014-7829 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: Directory traversal vulnerability in actionpack/lib/action_dispatch/middleware/static.rb in Action Pack in Ruby on Rails 3.x before 3.2.21, 4.0.x before 4.0.12, 4.1.x before 4.1.8, and 4.2.x before 4.2.0.beta4, when serve_static_assets is enabled, allows remote attackers to determine the existence of files outside the application root via vectors involving a  (backslash) character, a similar issue to CVE-2014-7818.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade rails gem to latest version or at least 3.2.21, 4.0.12, 4.1.8 or 4.2.0.beta4.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable rails gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2015-3226 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: Cross-site scripting (XSS) vulnerability in json/encoding.rb in Active Support in Ruby on Rails 3.x and 4.1.x before 4.1.11 and 4.2.x before 4.2.2 allows remote attackers to inject arbitrary web script or HTML via a crafted Hash that is mishandled during JSON encoding.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade activesupport gem to latest version or at least 4.1.12 or 4.2.3. This is automatically done by upgrading your Rails environment if you are using it.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable activesupport gem version found: 3.2.22

E, [2015-12-05 11:47:17#30420] ERROR -- : CVE-2015-3227 check failed
I, [2015-12-05 11:47:17#30420]  INFO -- : Severity: medium
I, [2015-12-05 11:47:17#30420]  INFO -- : Priority: unknown
I, [2015-12-05 11:47:17#30420]  INFO -- : Description: The (1) jdom.rb and (2) rexml.rb components in Active Support in Ruby on Rails before 4.1.11 and 4.2.x before 4.2.2, when JDOM or REXML is enabled, allow remote attackers to cause a denial of service (SystemStackError) via a large XML document depth.
I, [2015-12-05 11:47:17#30420]  INFO -- : Solution: Please upgrade activesupport gem to latest version or at least 4.1.12 or 4.2.3. This is automatically done by upgrading your Rails environment if you are using it.
I, [2015-12-05 11:47:17#30420]  INFO -- : Evidence:
I, [2015-12-05 11:47:17#30420]  INFO -- : 	Vulnerable activesupport gem version found: 3.2.22

Can confirm.

This is awkward. I'll inspect and fix it!

Please note that CVE-2015-3226 affects all 3.x rails version

Fixed in release 1.6.4

Thanks a lot @thesp0nge

I'm very sorry for being so late in fixing this trivial bug. I hope you're enjoying dawnscanner :)


A plan installs deps from all the tests

http://artifacts.dev.testing-farm.io/c089aa49-7fb6-4c72-acca-c19c3af59f00/
http://artifacts.dev.testing-farm.io/49368cf2-f543-4163-a3ca-d72b8928376a/
the rpmlint plan is failing above, this is the plan
summary:
￼  Execute rpmlint on the spec file
￼prepare:
￼  - name: packages
￼    how: install
￼    package:
￼    - rpmlint
￼execute:
￼  script:
￼  - rpmlint packit.spec

we have a few tests with require: it seems the plan inherits all of those requirements which is incorrect for us
if I want to run rpmlint on a spec in our upstream repo, what is the best way to do it? plan or a test?

Looking at the plan I see the local test discover using fmf is enabled:
> tmt plan show rpmlint
/plans/rpmlint
     summary Execute rpmlint on the spec file
    discover
         how fmf
     prepare
        name packages
         how install
     package rpmlint
     exclude
     missing fail
     execute
         how tmt
      script rpmlint packit.spec
     enabled true

This is because it's inherited from main.fmf:
execute:
    how: tmt
discover:
    how: fmf

The solution is to use discover --how shell, the config can look like this:
summary:
    Execute rpmlint on the spec file
discover:
    tests:
      - name: rpmlint
        test: rpmlint packit.spec
prepare:
    how: install
    package: rpmlint

Hah, Petr beat me to it, was just about to respond, never mind :)
Also as an alternative you can keep your plan the way it is and just add
discover:
    how: shell

Thank you, gentlemen! Trying it now here: https://github.com/packit/packit/pull/1496
I'm wondering what would help me to understand the cause so I wouldn't need to create this issue. I guess that I was confused that the package list is not displayed here and it is in the TF runs above.
$ tmt plan show -v
...
/plans/rpmlint
     summary Execute rpmlint on the spec file
    discover
         how fmf
   provision
         how virtual
       image fedora
        user root
      memory 2048
        disk 10
  connection session
     prepare
        name packages
         how install
     package rpmlint
     exclude
     missing fail
     execute
         how tmt
      script rpmlint packit.spec
      report
         how display
      finish
         how shell
      script
     enabled true
     sources /home/tt/g/packit/packit/plans/main.fmf
             /home/tt/g/packit/packit/plans/rpmlint.fmf

If you feel like this is properly documented and there is nothing to do in code, please close and I'll try to read the docs better next time (meaning, I will ask @FrNecas :)

I don't think we can do much here, as discover can fetch tests from other repos and only then we can check for possible requires. Modifying tmt plan show to fetch all remote repositories is not an option, could be very slow. What could help you understand that something weird is happening is tmt run discover -v which gives an overview of tests which would be run.

what about providing a hint to the output with -v? Something like:
$ tmt plan show -v
...
/plans/rpmlint
     summary Execute rpmlint on the spec file
        hint Run "tmt run discover -v" to disover tests
    discover
         how fmf
   provision
         how virtual
       image fedora
        user root
      memory 2048
        disk 10
  connection session
     prepare
        name packages
         how install
     package rpmlint
     exclude
     missing fail
     execute
         how tmt
      script rpmlint packit.spec
      report
         how display
      finish
         how shell
      script
     enabled true
     sources /home/tt/g/packit/packit/plans/main.fmf
             /home/tt/g/packit/packit/plans/rpmlint.fmf

And also possibly a hint to non-verbose discover output?

hint++
that would be very helpful since I had no idea discover is so powerful (which again can be mitigated if I read the docs more carefully)

Hmmm, I'm not completely convinced that it would be good to pollute the default output with many hints. At least until we have a config implemented where user could specify level of hinting or disable the feature completely. Showing hints in verbose mode sounds better.  What definitely makes sense to me is to cover the As a tester I want to see which tests would be run use case in the guide.


Update Vulnerabilietes: Error 404 downloading RHEL3.xml on "quay.io/redhat/clair-jwt:v3.2.1"

If the Clair Scanner started and ran the update script little bit later - an error was displayed.
{"Event":"an error occured when fetching update","Level":"error","Location":"updater.go:246","Time":"2020-04-20 13:24:25.204396","error":"received 404 code downloading https://www.redhat.com/security/data/oval/com.redhat.rhsa-RHEL3.xml","updater name":"rhel"}
FYI: The file does not exists on the page: https://www.redhat.com/security/data/oval/com.redhat.rhsa-RHEL3.xml. What can I do?

I tried to build the docker image with "make centos7-build-env rhel7 GIT_TAG=v2.0.9 SUBSCRIPTION_KEY=.pem" but I got an error.
**"Step 23/26 : RUN go get -u -d github.com/coreos/clair/cmd/clair
---> Running in 847414df7f4e
package github.com/quay/clair/api: code in directory /go/src/github.com/quay/clair/api expects import "github.com/quay/clair/v3/api"
cd /go/src/github.com/asottile/dockerfile/vendor/github.com/moby/buildkit; git pull --ff-only
You are not currently on a branch. Please specify which
branch you want to merge with. See git-pull(1) for details.
git pull <remote> <branch>

package github.com/asottile/dockerfile/vendor/github.com/moby/buildkit/frontend/dockerfile/command: exit status 1
The command '/bin/sh -c go get -u -d github.com/coreos/clair/cmd/clair' returned a non-zero code: 1
make: *** [Makefile:7: centos7-build-env] Error 1"**
Can someone help me, please. I do not know, how to fix it.

@dawidek88 i fixed build for the alpine, see https://github.com/quay/clair-jwt/pull/29


Error in slugify() method with version 0.12.9

$ node
> var toc = require("markdown-toc")
undefined
> toc.slugify("Administrator's Guide")
TypeError: Cannot read property 'seen' of undefined
    at Function.slugify (C:\Source\eXLent_master\exlent\node_modules\markdown-toc\index.js:202:12)
    at repl:1:5
    at REPLServer.defaultEval (repl.js:260:27)
    at bound (domain.js:287:14)
    at REPLServer.runBound [as eval] (domain.js:300:12)
    at REPLServer.<anonymous> (repl.js:429:12)
    at emitOne (events.js:95:20)
    at REPLServer.emit (events.js:182:7)
    at REPLServer.Interface._onLine (readline.js:211:10)
    at REPLServer.Interface._line (readline.js:550:8)

The code at index.js:202 doesn't seem to account for the case where the third argument is not supplied.  My current workaround:
toc.slugify("Administrator's Guide", undefined, {})

Thanks for reporting, this is a regression introduced in https://github.com/jonschlinkert/markdown-toc/commit/e2e2f329eb064a3502fb02dc264510c7ffc948cc

@rogierschouten want to do a pr? If not I can fix as soon as I get a chance