Is this secure?

I just looked through the code a bit, and I was amazed when I saw that you're bypassing the need to register traits by actually making a virtual function call into the vtable pointer. I wouldn't have thought of that. My question is, is this secure, and is it safe?
It seems like attempting to deserialize a bad vtable pointer, intentionally or unintentionally, could allow the execution of arbitrary memory regions, which seems like both a massive security flaw, and unsafe in that it could cause undefined behavior. Am I wrong about this?
It seems like, unless there's some verification that I missed, this needs to be addressed.

Good question!
Short answer: No, this approach is not yet secure against malicious actors. However, if we assume non-malicious actors and typical (static or dynamic) linking conditions, then it's not unreasonable to consider it sound.
Longer answer:
Three things are serialized alongside the vtable pointer for the purpose of validation:

the build_id (128 bits);
the type_id of the trait object (64 bits);
the type_id of the concrete type (64 bits).

At some point in Rust's future, I think it would be great if the latter could be used to safely look up and create a trait object. As it is, that functionality doesn't exist yet, so what this crate does instead is serialize the vtable pointer (relative to a static base), and do as much validity checking as it reasonably can before it can be used and potentially invoke UB.
The first two are checked for validity before usage of the vtable pointer. The build_id ensures that the vtable pointer came from an invocation of an identically laid out binary1. The type_id ensures that the trait object being deserialized is the same type as the trait object that was serialized. They ensure that under non-malicious conditions, attempts to deserialize invalid data return an error rather than UB. The type_id of the concrete type is used as a sanity check that panics if it differs from the type_id of the concrete type to be deserialized.
Regarding collisions, the 128 bit build_id colliding is sufficiently unlikely that it can be relied upon to never occur. The 64 bit type_id colliding is possible, see https://github.com/rust-lang/rust/issues/10389, though exceedingly unlikely to occur in practise.
The vtable pointer is (de)serialized as a usize relative to the vtable pointer of this static trait object. This enables it to work under typical dynamic linking conditions, where the absolute vtable addresses can differ across invocations of the same binary, but relative addresses remain constant.
All together this leaves, as far as I'm aware, three soundness holes:

A malicious user with a copy of the binary could trivially craft a build_id and type_id that pass validation and gives them control of where to jump to.
Data corruption of the serialized vtable pointer but not the build_id or type_id used for validation, resulting in a jump to an arbitrary address. This could be rectified in a future version of this library by using a cipher to make it vanishingly unlikely for corruptions to affect only the vtable pointer, by mixing the vtable pointer and validation components upon (de)serialization.
Dynamic linking conditions where the relative addresses (vtable - static vtable) are different across different invocations of the same binary. I'm sure this is possible, but it's not a scenario I've encountered so I can't speak to its commonness.

1I don't think this requirement is strictly necessary, as the type_id should include all information that could affect soundness (trait methods, calling conventions, etc), but it's included in case that doesn't hold in practise; to provide a more helpful error message; and to reduce the likelihood of collisions.

The documentation definitely needs to include this information so I've gone ahead and added it.
My use case includes serializing trait objects where the traits are implemented on generic types, which I don't believe is compatible with the typetag approach of registering traits and their impls on concrete types. Hence this crate. Any suggestions for how to make it more secure and more sound are very welcome!

Thank you for addressing this!
I have an idea for a typetag-style system that would allow the serialization of parametric traits -- if you'd like, I'll message you if I get that figured out.

@gretchenfrage I'd love to hear if you've made any progress on that?


Jump up when email deleted

Checklist

[X] I have used the search function to see if someone else has already submitted the same bug report.
[X] I will describe the problem with as much detail as possible.

App version
6.803
Where did you get the app from?
F-Droid
Android version
LineageOS 20 / Android 13
Device model
Xiaomi A1
Steps to reproduce

Go to settings
General settings
Interactions
Swipe actions
Leftswipe or right = Delete
Back to inbox
Scroll dawn and remove one email

Expected behavior
The app should stay at the same position where the email was removed.
Actual behavior
The app jump all the way up, at the beginning.
Same behavior occurs when long press on email and clic on delete icon. It brings me at he beginning.
Logs
No response

K-9 Mail 6.803 hasn't been released yet. I'm assuming this was a typo and you're using 6.802.
The list position is typically kept when deleting a message. It's possible that the app crashes when you delete a message. Modern Android versions simply restart the app when that happens. The user is only notified about the app crashing when it happens multiple times in a row. Try performing a couple of delete operations and see if Android displays a crash dialog. If so, please record a debug log while deleting a message and attach it here. See https://github.com/thunderbird/thunderbird-android/wiki/LoggingErrors

Closing this since no additional information was provided.


fix(OverflowMenu): assign menu body ref for non-floating menu

Closes IBM/carbon-components-react#1916
This PR fixes an issue with non-floating overflow menus not properly handling click and change events before collapsing and unmounting. Non-floating overflow menus were referencing a value that never received a value when the menu was opened. Although given the limited use case of non-floating overflow menus, it may be best to deprecate this option in the future

@IBM/carbon-developers Can anybody do another review...? Thanks!


Xonsh extraPacakges doesn't work

Describe the bug
The wrapper introduced in #240246 is supposed to accept code like: xonsh.override { extraPackages = ps: [ ps.psutil ] }, and then psutil should be importable in the resulting Xonsh package. However, when building this package, I am met with:

error: function 'anonymous lambda' called with unexpected argument 'extraPackages'
at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/pkgs/by-name/xo/xonsh/package.nix:1:1:

error:
       … while calling a functor (an attribute set with a '__functor' attribute)
         at /nix/store/81ai25ifhr0l8rryf83h4pj8k0q2pjaj-source/flake.nix:4:37:
            3|   outputs = { self, nixpkgs }: {
            4|     packages.x86_64-linux.default = nixpkgs.legacyPackages.x86_64-linux.xonsh.override {
             |                                     ^
            5|       extraPackages = ps: [ ps.psutil ];
   … from call site
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/trivial.nix:955:7:
      954|     { # TODO: Should we add call-time "type" checking like built in?
      955|       __functor = self: f;
         |       ^
      956|       __functionArgs = args;

   … while calling anonymous lambda
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/customisation.nix:144:34:
      143|       # Re-call the function but with different arguments
      144|       overrideArgs = mirrorArgs (newArgs: makeOverridable f (overrideWith newArgs));
         |                                  ^
      145|       # Change the result of the function call by applying g to it

   … while calling a functor (an attribute set with a '__functor' attribute)
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/customisation.nix:144:43:
      143|       # Re-call the function but with different arguments
      144|       overrideArgs = mirrorArgs (newArgs: makeOverridable f (overrideWith newArgs));
         |                                           ^
      145|       # Change the result of the function call by applying g to it

   … from call site
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/trivial.nix:955:7:
      954|     { # TODO: Should we add call-time "type" checking like built in?
      955|       __functor = self: f;
         |       ^
      956|       __functionArgs = args;

   … while calling anonymous lambda
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/customisation.nix:136:17:
      135|     in
      136|     mirrorArgs (origArgs:
         |                 ^
      137|     let

   … while evaluating a branch condition
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/customisation.nix:148:7:
      147|     in
      148|       if isAttrs result then
         |       ^
      149|         result // {

   … while calling the 'isAttrs' builtin
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/customisation.nix:148:10:
      147|     in
      148|       if isAttrs result then
         |          ^
      149|         result // {

   … from call site
     at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/lib/customisation.nix:138:16:
      137|     let
      138|       result = f origArgs;
         |                ^
      139|

   error: function 'anonymous lambda' called with unexpected argument 'extraPackages'
   at /nix/store/nm7g9fgcffl6nar6vpib220b51dyv0fl-source/pkgs/by-name/xo/xonsh/package.nix:1:1:
        1| {
         | ^
        2|   lib,

Is there a different way of getting to the wrapped Xonsh?
Steps To Reproduce
To reproduce:
$ cat <<EOF > flake.lockb
{
  "nodes": {
    "nixpkgs": {
      "locked": {
        "lastModified":<PHONE_NUMBER>,
        "narHash": "sha256-1u2FWxVZfuoMe8mfRvXBuZq6+DrEqeBT8A4uFOV+my8=",
        "owner": "nixos",
        "repo": "nixpkgs",
        "rev": "69214562aeca0d6b28f8a233748bbd6f32a52a3f",
        "type": "github"
      },
      "original": {
        "owner": "nixos",
        "repo": "nixpkgs",
        "type": "github"
      }
    },
    "root": {
      "inputs": {
        "nixpkgs": "nixpkgs"
      }
    }
  },
  "root": "root",
  "version": 7
}
EOF

$ cat <<EOF > flake.nix
{
  inputs.nixpkgs.url = "github:nixos/nixpkgs/";
  outputs = { self, nixpkgs }: {
    packages.x86_64-linux.default = self.packages.x86_64-linux.xonsh.override {
      extraPackages = ps: [ ps.psutil ];
    };
  };
}
EOF

$ nix build

Expected behavior
Xonsh should build.
Additional context
Possibly relevant issues:

2023-07-07 #240246
2023-03-08 #294328
2023-03-22 #297628
2023-04-04 #301444 ("likely caused by #297628")
2023-04-05 #301449 (resolves #301444)

Notify maintainers
@samlukeyes123
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels' does not exist, ignoring
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.37, NixOS, 24.11 (Vicuna), 24.11.20240709.feb2849`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.24.0pre20240627_b44909ac`
 - nixpkgs: `/home/sam/.nix-defexpr/channels/nixpkgs`

Add a :+1: reaction to issues you find important.

use xonsh.wrapper instead of xonsh
This is documented in the option search: https://search.nixos.org/options?channel=unstable&show=programs.xonsh.package&from=0&size=50&sort=relevance&type=packages&query=xonsh

I'm restoring this behavior in https://github.com/NixOS/nixpkgs/pull/325813


alias: add new backend to create aliases for remote names

The alias backend is just a wrapper for an existing remote.
The Fs returned for myalias:subfolder is the same as using cache:root/subfolder with the following config:
[myalias]
type = alias
remote = cache:root

This is a proposal for #1049
There is currently no documentation. I will write it once the backend is accepted.

The least effort thing to do would be to add the alias remote to gen_tests.go, run make gen_tests then add a TestAlias to your local config. I'll need to add one to the integration test server too.

I tried to use the generated tests, but they fail because alias does not have a Object definition:
# github.com/ncw/rclone/backend/alias_test
./alias_test.go:16:34: undefined: alias.Object
FAIL	github.com/ncw/rclone/backend/alias [build failed]

This is the failing part:
func TestSetup(t *testing.T) {
	fstests.NilObject = fs.Object((*alias.Object)(nil))
	fstests.RemoteName = "TestAlias:"
}

Should we make the NilObject optional in gen_tests?
It is not used except one string compare.

If you don't fancy that, then I think your tests should at least call NewFs - if you want to see an example of how to set that machinery up then look in the http tests

The http tests were a good start for creating the tests.
They are not very extensive, but they cover all corner cases in NewFS.

I think your tests look good now and are better than the gen_tests version.
I'll squash and merge...


feat(semantic_tokens): link method and functions with defaultLibrary modifier to @function.builtin

Added link for @lsp.typemod.method.defaultLibrary to complement the one for @lsp.typemod.function.defaultLibrary and made them both link to @function.builtin (which fallback to Special).

Ping @folke - done. Took out the experimental stuff and just added a link for method.defaultLibrary

thanks!


fix hyperlink

Fix the hyperlink for bugzilla.

Sorry. I missed the hyperlink in the previous PR. Thanks @osy


Integrate EIA 861 into Entity Harvesting Process

The EIA 861 brings a new kind of entity the Balancing Authority.  It also brings a huge number of new tables related to Utilities, so it's important to integrate it into the post-Transform harvesting process. However, some of these tables also have structures unlike any in EIA 860 and EIA 923 (see Issue #613) and so it's not just a matter of adding new tables and entities into the existing harvesting process framework. We may need to change the entity harvesting to know specifically which columns it is supposed to harvest from each table.

This is certainly the intention, alongside the full integration of eia861.


num/{dualcmplx,dualquat}: packages for dual complex and quaternion maths

I have struggled with getting the trig functions to work with these packages and this has prevented me from sending this. Given that the primary use for these types of numbers is to allow 2D and 3D translations and rotations, something that doesn't require trig in this number space, I have decided that discretion is the better part of valor and have removed them. The problems I was facing were compounded (but not entirely caused) by the odd behaviour of "math/cmplx" for some of these functions. If people want trig functions for these, they can file an issue and then I can look at it again (the almost working code is in dualquat-full).
There is one issue that I am not entirely sure of yet, and I think stems from the commutativity of complex numbers when quaternions are not commutative (this shows up in the different behaviours of the rotate and translate examples of the two packages). I would like to sort this out, but am sending this now.
Please take a look.

I've spent a bit of time messing about trying to get the dual complex examples to work, and I know what it not working, but don't understand how to fix that. The issue is that rotations leave the non-dual as non-unit which they should not. However, using the approach used for quaternion rotation (or dual quaternion rotation/translation does not work).
As a note for myself, read this.

I have backed out the dual complex until I understand it better. It will be a separate PR.

References are added to the package doc.
Also https://dualquaternions.weebly.com/uploads/1/3/1/5/13150194/dual_quaternions_wscg_paper_pub.pdf
I just remembered the WP page is OK, https://en.wikipedia.org/wiki/Dual_quaternion. I'll add that to the package doc.


Interpreting rack-timeout log

Hey guys,
my apologies, as this is not an issue with rack-timeout per se, rather an attempt to understand its log output. While not a direct problem with the gem, I think it may benefit other users with similar problem in the future.
In a Rails app I'm using rack-timeout set to time out requests taking longer than 30 seconds.
Strangely, there are situations where rack-timeout enters extremely late and the overall service time of the request can end up being up to 30 minutes.
Here is an example to illustrate this situation:

What I find hard to explain is why the first log from rack-timeot (state=ready) comes such a long time after H12 from Heroku. This states that the wait time was ~30s while service time was ~27 minutes. Wouldn't wait time have to be ~27 minutes for these numbers to add up?
Here's my middleware stack:
use Raven::Rack
use HireFire::Middleware
use ActionDispatch::SSL
use Rack::Sendfile
use HeaderDelete
use ActionDispatch::Static
use #<ActiveSupport::Cache::Strategy::LocalCache::Middleware:0x0000000002d643e8>
use Rack::Timeout
use Rack::Runtime
use Rack::MethodOverride
use ActionDispatch::RequestId
use LoggingMiddleware
use Rails::Rack::Logger
use Chewy::Railtie::RequestStrategy
use ActionDispatch::ShowExceptions
use ActionDispatch::DebugExceptions
...

We're using NewRelic. I suspect it may be interfering since it uses Mutex#synchronize internally? Could IO blocks cause this?
Thank you for any ideas!

I agree the behavior is weird - I'd expect ready to be printed (very much) sooner, since it proceeded to active with 52ms left on the clock. While it's unlikely, it is possible that something would block Rack::Timeout between initialization (when it calculates the timeout values) and when it logs this message.
Since the time you're seeing there is the time received by Papertrail, there's another chance that there was some logging buffering happened - that the message was printed but not flushed and sent through the logging system.
A possible solution is Rack::Timeout could log and print its own timestamp, but in most cases that would just be noise and duplication.

The most relevant info here is in doc/risks.md - hope that helps.


Issue Downloading Stories

Using the latest versions of Python, PiOS, and Snapchat-dl. Happens on other OS's too
Description
Describe what you were trying to get done:
Download a story of a public Snapchat user.
Tell us what happened, what went wrong, and what you expected to happen.
It errored out and failed instead of downloading. I also tried a different IP
What I Did
Paste the command(s) you ran and the output.
If there was a crash, please include the traceback here.

snapchat-dl publicsnapchatuser
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 96, in create_connection
    raise err
  File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 86, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 704, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 387, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1045, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 358, in connect
    self.sock = conn = self._new_conn()
                       ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 186, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0xb5b26f70>: Failed to establish a new connection: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/requests/adapters.py", line 489, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 788, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 592, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='story.snapchat.com', port=443): Max retries exceeded with url: /@publicsnapchatuser (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0xb5b26f70>: Failed to establish a new connection: [Errno 111] Connection refused'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/username/.local/bin/snapchat-dl", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/username/.local/lib/python3.11/site-packages/snapchat_dl/app.py", line 58, in main
    download_users(usernames)
  File "/home/username/.local/lib/python3.11/site-packages/snapchat_dl/app.py", line 53, in download_users
    downlaoder.download(username)
  File "/home/username/.local/lib/python3.11/site-packages/snapchat_dl/snapchat_dl.py", line 93, in download
    stories, snap_user = self._web_fetch_story(username)
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/username/.local/lib/python3.11/site-packages/snapchat_dl/snapchat_dl.py", line 59, in _web_fetch_story
    response = self._api_response(username)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/username/.local/lib/python3.11/site-packages/snapchat_dl/snapchat_dl.py", line 45, in _api_response
    return requests.get(web_url).text
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/api.py", line 73, in get
    return request("get", url, params=params, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 587, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 701, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/adapters.py", line 565, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='story.snapchat.com', port=443): Max retries exceeded with url: /@publicsnapchatuser (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0xb5b26f70>: Failed to establish a new connection: [Errno 111] Connection refused'))

Same issue here 🥲

Should be fixed in v2.0.0


Encryption support

Alternate check in of the work Hannes did

Replaced by #116

replaced by https://github.com/laurencelundblade/t_cose/pull/116


Add dropdown with example formats to Table.format

Difficult to do as type of column affects formatting string.


aiken new should refer to the latest available version of stdlib

What is your idea? Provide a use case.
As of Aiken v1.0.11-alpha, when running aiken new it refers to stdlib version "1.1.0" in the aiken.toml file. Previously it was "main", I can understand the need to specify a specific version, but v1.1.0 of stdlib contains at least 1 breaking changes, namely the path of MintedValue.
Considering that Aiken v1.0.11-alpha was released at Jun 24 and aiken/stdlib v1.2.0 was released at Jun 17 (before the said version of Aiken), it should at least points to stdlib version 1.2.0, or even better when running aiken new it checks for the latest available version by default, currently it's v1.3.0
Why is it a good idea?
When browsing the docs, https://aiken-lang.github.io/stdlib/, by default it refers to the latest version. It will cause confusion for people trying out the library and encountering the aiken::check::unknown::module_field error due to changes in the module path.
What is the current alternative and why is it not good enough?
Change stdlib version manually in the aiken.toml file, or using aiken packages upgrade. It's not good enough because old projects, before v1.0.11-alpha, use newer version of stdlib (version = "main"). It becomes incompatible when copy-pasting codes.

The intention was never to always be using main. Main is not "latest" and should be considered "unstable". Latest is now whatever the latest tag is. The new command even leaves a message that tells you to double check your stdlib version.

I understand it should not point to "main", that's why I said at least it should point to the latest available version, in this case either v1.2.0 or v1.3.0

@ariady-putra apologies, I was being lame. Your PR addresses this perfectly. Thank you for taking the initiative even though I was negative about it. I'll be cooler next time.

@rvcas no worries, ideas are usually presented clearer in codes or demo. I wasn't familiar enough with Rust back then


unable to override BUILDTAGS for Makefile

https://github.com/genuinetools/img/blob/013bb211567bb92374315affaf0ffa1787fb23c2/Makefile#L8
BUILDTAGS ?= seccomp may be better

One can override this by using the -e flag,
BUILDTAGS="" make -e


Create Component for Working On section

This section needs to be developed

Hi I would like to contribute to this issue under hacktoberfest ,so please assign me this issue

Hi @Shivampatil22 are you facing any difficulty?
Hop on our discord server and we can discuss.

Join our Discord server to discuss ideas, ask questions, and collaborate with others.

No I thought my PR's weren't accepted but after refreshing the browser they were accepted
and can you tell me how can I merge the base branch to with feature branch before making a pull request and resolve the conflicts.

Ok
Thank u I will go through it


setcap method to run on port 80 doesn't work

Sorry if it is a stupid question, but I couldn't find an answer to my problem. This isn't even a caddy problem. :(
I used the setcap method (from the FAQ) to bind caddy to the port 80. But I'm still getting a "permission denied" message.
This is what I did:
$ sudo setcap 'cap_net_bind_service=+ep' /home/cristobal/bin/caddy
$ caddy
localhost:80
2015/11/20 19:39:56 listen tcp :80: bind: permission denied

What does which caddy output?

$ which caddy
/home/cristobal/bin/caddy

Hmm, that's weird. What is your OS/version?

I'm using Ubuntu Gnome 15.10.

Interesting, same question as http://askubuntu.com/questions/564996/problems-with-setcap-in-ubuntu-14-04-lts which doesn't have an answer... I wonder if your file system does not support attributes? But I'm pretty sure the default file system should be fine...
Ha, same thing here: http://superuser.com/questions/865310/file-capabilities-setcap-not-being-applied-in-linux-mint-17-1 - also unanswered. That's annoying.
You should ask Stack Exchange for help, I'm afraid I don't know. Alternate plan is to use iptables: http://serverfault.com/questions/112795/how-can-i-run-a-server-on-linux-on-port-80-as-a-normal-user

Thank you!
I saw this unanswered questions. That's why I didn't ask my question in StackExchange.
I've previously used iptables to run a Tornado server, but I always found it a dirty solution. Then I ended using nginx as my reverse proxy. In this case using nginx as reverse proxy doesn't make sense. So I really wanted setcap to work.

This is going to bother me. :smile: I'll keep my eye out for a solution; sorry about that. (I've also heard of running caddy as root with no problems -- just FYI, if your risk tolerance is high enough) But as you said, it's not directly a caddy issue, so I'll close this now.
If anyone has a solution after-the-fact, please feel free to share it!


ncc fails to resolve imports for es-get-iterator

Apparently, ncc has a problem with the exports declared in the package.json of es-get-iterator:
https://github.com/ljharb/es-get-iterator/blob/master/package.json#L5-L17
This package is used by the Firebase SDK and has ~1.2 million weekly installs.
It works if I manually change the main field to node.js instead and remove the exports field from the package.json.

es-get-iterator was added as a dependency of firebase-admin with a very recent version 8.9.0. Previous versions work with ncc.

Did you find any fix for this? I am getting the same issue about Cannot find module 'es-get-iterator' while using firebase-admin.
Any idea how to get around this?

I have run into this issue as well.
I tried a few versions of Node locally, a few different module/lib targets in tsconfig, and installing es-get-iterator without any luck for any of those. I can't even come up with a workaround :(

I have run into this issue as well.
I tried a few versions of Node, a few different module/lib targets in tsconfig, and installing es-get-iterator directly, without any luck. I can't even come up with a workaround :(
Edit: This does work for me too

It works if I manually change the main field to node.js instead and remove the exports field from the package.json.

Edit 2: Installing<EMAIL_ADDRESS>works as well

Tried the tip without success : https://github.com/WoodySlum/es-get-iterator/blob/master/package.json#L5
Any help ?
Thanks

If that workaround worked for some, then it might also work to change it to index.js, or `./index - of those work too, then this is a bug in how vercel resolves the “main” field.


Missing text for 5 translation strings

As of Distinct Damage Descriptions 1.0.0-beta, the following translation strings are missing proper text:

distinctdamagedescriptions.general.damage.mobbasedmg
distinctdamagedescriptions.general.damage.projectiledamagetypes
distinctdamagedescriptions.general.damage.itembasedamage
distinctdamagedescriptions.general.resistance.armorresist
distinctdamagedescriptions.general.resistance.mobbaseresist

(There may be more)

So this isn't a huge deal for the patch I'm releasing now, so I won't include it.
Anyone else is welcome to open a PR with these translation strings added if they want.


Duplicate content on markdownlint

The following pages have overlapping information. This should be reviewed, or at least cross-referenced.

https://github.com/microsoft/code-with-engineering-playbook/blob/main/docs/code-reviews/recipes/markdown.md
https://github.com/microsoft/code-with-engineering-playbook/blob/main/docs/continuous-integration/markdown-linting/README.md

Fixed


datasets cant loading correctly

I have downloaded the datasets and weights from gdrive, but when I try to train the model, some error happened.
When I try to run
vit=l task=ovd dataset=coco bash scripts/train.sh
The error is FileNotFoundError: [Errno 2] No such file or directory: 'datasets/coco/train2017/000000183332.jpg'
When I try to run
task=ovd dataset=lvis bash scripts/train.sh MODEL.MASK_ON True
The error is FileNotFoundError: [Errno 2] No such file or directory: 'datasets/lvis/lvis_v1_val.json'
My datasets download from the link in Downloads.md haven't the above paths, I don't know where is wrong?
Maybe I need deal with the datasets firstly?
Btw, need I uncompress the files cocosplit.tar.gz & cocosplit2017.tar.gz in the datasets/coco and what is it used for?
Thank you for you great work!

Hello, have you solved it? I had the same problem. Thank you.

I have the same problem.
When I try to run
vit=l task=ovd dataset=coco bash scripts/eval.sh
The error is FileNotFoundError: [Errno 2] No such file or directory: 'datasets/coco/val2017/000000000139.jpg'

You need to download the Coco Dataset from the website and place the images into datasets/coco/valXXXX so the images are in the devit folder.
If you are on linux you can just use wget http://images.cocodataset.org/zips/val2017.zip and then unzip the files into the directory


Bottom gap after pushing view with keyboard open

How to reproduce

Go into room
Open keyboard
Open room information (tap on room name)
Leave room information
Close keyboard

Workaround
https://github.com/Ivansss/SlackTextViewController/blob/6dac276400bbb7cb884b33a7f343d99fa2f28858/Source/SLKTextViewController.m#L241-L257
This code should prevent the gap at the bottom. I did a short test and the following condition was never true
https://github.com/Ivansss/SlackTextViewController/blob/6dac276400bbb7cb884b33a7f343d99fa2f28858/Source/SLKTextViewController.m#L252
because the textInputContentFrame height was always 0
Changing this to just if (textInputBackgroudView) worked for me. Not sure, why the  > 0 check was there ?!
Maybe checking if UIToolbarContentView was found at all would be safer.
I'm also not sure if this would lead to adding safeAreaInsets multiple times, if the subviews get layouted multiple times. Maybe we could just do textInputBackgroudViewFrame.size.height = self.view.safeAreaInsets.bottom;.
Let me know what you think and if you would like a PR.

I'm also not sure if this would lead to adding safeAreaInsets multiple times, if the subviews get layouted multiple times. Maybe we could just do textInputBackgroudViewFrame.size.height = self.view.safeAreaInsets.bottom;.

Read that wrong, shouldn’t be a problem.

Interesting! I forgot to add the source of this workaround :S
So it seems that there is no "UIToolbarContentView" subview.
And for some reason it doesn'tmatter what frame you set in
[textInputBackgroudView setFrame: textInputBackgroudViewFrame];
You could even set
[textInputBackgroudView setFrame: CGRectZero];
and the gap bug is fixed and the toolbar is displayed correctly. :S

You could even set
[textInputBackgroudView setFrame: CGRectZero];

and the gap bug is fixed and the toolbar is displayed correctly. :S
Interesting ... haven’t tested this, but I mean... if it works ... ;)


Declarative OpenFeign client is not being weaved

Module
opentracing-spring-cloud-feign-starter
Issue
The aspect does not seem to consider declarative clients, i.e. interfaces annotated with @FeignClient
Description
Declarative Feign clients are built with feign.ReflectiveFeign. Invocations are delegated to feign.Client.Default which is passed down to the actual hander via the handler factory. Would be nice if an aspect could be built around this logic to get tracing with declarative clients.

I'm not sure whether this has been looked into before. Should let's discuss possible implementations?

I think just building an Aspect for the Default Feign Client should enough to get the same functionality. I'll try to get a POC done this evening and raise a PR to discuss

seems the aspect should be weaved around any Client. I'll look deeper into this one :)

seems this can be sorted out by configuring the aspectj weaver plugin

@ddcprg I am having that exact problem, can you give a bit more details on what you mean by "configuring the aspectj weaver plugin' ? That would be extremely helpful, thanks !


Generic bus traits

Hi,
Lot of sensors can be used with both I2C and SPI, so why not defining a generic I/O trait that is bus independent like the std::io trait that is not available in a no_std program. In my drivers i had to define my own bus independent trait.

There exist https://github.com/rust-embedded/embedded-hal/tree/master/embedded-io and its used for uart. Though at the end of the day, somewhere you need to plug two things together, e.g using a spi or a i2c interface.
Making a generic version that can either hold a spi or a i2c is probably not plesent to work with. Here is why i think that is: For the Driver implementer he still would need to handle the difference in the i2c or spi protocol, so he would not gain much. From a hal perspective it would not be that bad to provide a wrapper, but the burden is here for the end user to handle the generic stuff correctly. There is a reason why most hal's currently try to axe as much as generics in there public facing API's as possible,

Thanks for your answer, i'm trying to implement embedded-io traits but  i'm having troubles in implementing embedded_io::ErrorType trait for I2C and SPI structs. How should I map the I2C and SPI errors?

I think it would be valuable to have something like Linux' regmap API (only introduction I could quickly find) to abstract away the bus details in device drivers.  This could be implemented on top of embedded-hal traits.

In the embedded-hal logic, HAL developers implement the embedded-hal traits, and driver developers use them. This division of responsibilities works well to maintain clear boundaries between hardware abstraction layers and driver logic.
However, it might be beneficial to consider providing traits that driver developers can implement if necessary, like in this case of SPI or I2C when dealing with a sensor. In this case this type of traits could be added to the embedded-hal-bus crate, which is used for bus sharing, but the functionality of these crate could be extended in this way.


Filter notifications by friends [FEATURE]

Is your feature request related to a problem? Please describe.
Describe the solution you'd like
User Story
As an Amethyst user who receives many notifications, I would like a setting to be able to filter my notifications according to my friends, so that I can increase my signal to noise ratio.
Acceptance Criteria

Amethyst user has a toggle to filter notifications accoridng to friends
Toggle can be turned on or off at any time, and feed reflects this update
If toggle is on, the only notifications from friends show

Bounty (in Bitcoin sats) offered for the implementation
Additional context
Damus example
https://cdn.jb55.com/s/filter-friends.mp4
Origin: Annie

Would love if Amethyst did this.

https://iris.to/note12pkqn6j45u3w3j3fvhahrg929j8j770jjhv33syv6fgxw5jeqsdsm4zy7k

Annie is always asking for things. :(

v0.45.1, now in the PlayStore, allows filtering of Notifications by Global, Follows or any NIP 51 list. Let me know if this does not satisfy your needs.


NSLocationAlwaysUsageDescription now mandatory?

It looks like the key NSLocationAlwaysUsageDescription   is now mandatory, too.  Should we document this?
This is the warning Apple sent after uploading the app:

"Missing Purpose String in Info.plist File. Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSLocationAlwaysUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting spring 2019, all apps submitted to the App Store that access user data will be required to include a purpose string.If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy)."

Is it the same as https://github.com/apache/cordova-plugin-geolocation/pull/105 ?

Partly. #105 adds a method to request always permission. But if the description clarifies that both descriptions are needed this is fine.

I'm not using "always" mode, but Apple still complains about not having that NSLocationAlwaysUsageDescription.

That´s why I suggested adding something to the docs. Confuse me, too.
edit-config like described does not work for me. I have to use config-file.

I've found this article from apple:
https://developer.apple.com/documentation/corelocation/choosing_the_authorization_level_for_location_services/requesting_always_authorization
It says:

Important
You are required to include the NSLocationWhenInUseUsageDescription and NSLocationAlwaysAndWhenInUseUsageDescription keys in your app's Info.plist file. (If your app supports iOS 10 and earlier, the NSLocationAlwaysUsageDescription key is also required.) If those keys are not present, authorization requests fail immediately.

The NSLocationAlwaysAndWhenInUseUsageDescription is new to me. My app just got rejected, so I will try this too.

There is a proposal on how to update documentation in #149

Fixed by https://github.com/apache/cordova-plugin-geolocation/pull/181


Migrating from CRA to vite

Task

[x] Deprecate previous CRA client
[x] Set up new client with vite
[ ] Migrate all components and files
[ ] Delete deprecated client subdirectory

Migrating to Vite not worth it.


KAFKA-16371; fix lingering pending commit when handling OFFSET_METADATA_TOO_LARGE

This patch was initially created in https://github.com/apache/kafka/pull/15536.
When there is a commit for multiple topic partitions and some, but not all, exceed the offset metadata limit, the pending commit is not properly cleaned up leading to UNSTABLE_OFFSET_COMMIT errors when trying to fetch the offsets with read_committed. This change makes it so the invalid commits are not added to the pendingOffsetCommits set.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

BTW, I notice that createPutCacheCallback has a input argument preAppendErrors which is never defined. Is it a unfinished feature or a stuff we can remove.

Hum... I am not sure about this one. @jolshan Would you know?

Hum... I am not sure about this one. @jolshan Would you know?

There was a lot of refactoring in this path so we may have just missed this. It was originally intended for any verification errors we pass through, but I think we return before we hit this callback if the verification fails? https://github.com/apache/kafka/blob/4f55786a8a86fe228a0b10a2f28529f5128e5d6f/core/src/main/scala/kafka/coordinator/group/GroupCoordinator.scala#L927

Discussed a bit with David offline. Given that this error should be fatal for the producer (we can do a followup to make the error clearer there), this handling makes sense for now. In the future we may want to consider implications for allowing the server to commit such offsets, but leave the decision to the client for now.

out of curiosity, is there a ticket?

@chia7712 He said he would file it on Monday -- so soon :)

Opened: https://issues.apache.org/jira/browse/KAFKA-16846.

Merged to trunk and 3.7.


[WHOOP] issue connecting to whoop api

Extension
https://www.raycast.com/josha1len/whoop
Raycast Version
1.69.0
macOS Version
No response
Description
Error:
Ue: request to https://whoop.oauth.raycast.com/token failed, reason: self-signed certificate in certificate chain

ClientRequest.<anonymous>:index.js:108:10

---
105:

### Steps To Reproduce

1. run a whoop cmd from Raycast (whoop account not connected)
2. auth with whoop api
3. open raycast and rerun whoop cmd
4. error

### Current Behaviour

_No response_

### Expected Behaviour

_No response_

has the maintainer abandoned this extension?  :(

Hi @theurbandev. Sorry for not getting back to you sooner.
I have just submitted an update to the WHOOP extension (in review):

Authentication now uses OAuthService from Raycast utilities.
Updated all dependencies to their latest compatible versions.

I'm hoping these updates will resolve the authentication issue you reported.
Thanks!

Thanks for fixing the issue!


Merge pull request #1 from vit9696/master

Oops! Done this by accident. Please simply ignore this PR. :)


Add support for mass erasing second bank on STM32F10x_XL (patch)

I added support for bank 2 on STM32F10x_XL a few years ago but apparently forgot to implement mass erase for it. The commit below fixes that:
https://github.com/bmellstrom/stlink/commit/52129373227dcaf58f89a0b0d7eef3311f8815e7
Shall I open a pull request?

Please do 😃

On 7 Feb 2019, at 08:12, Björn Mellström<EMAIL_ADDRESS>wrote:
I added support for bank 2 on STM32F10x_XL a few years ago but apparently forgot to implement mass erase for it. The commit below fixes that:
bmellstrom@5212937
Shall I open a pull request?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Thanks!


Create Event Grid Topic subscription for all event types

Hi,
According to this article from 03/2019, it should be possible to create a Web hook subscription to an Event Grid Topic, and check the checkbox "Subscribe to all event types", meaning that all event types are sent to the subscriber.
However, it is now 06/2019 and on the create subscription page it is now mandatory to specify the event types to which you want to subscribe - this is not ideal because in a complex system you can have tens / hundreds types of events , and you want them all to go through.
Any idea on how to create these subscription for all event types, or do we really have to include all the event types ?
Thanks,
Vlad

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

ID: aa9fcb9e-8d13-c4d1-a5d0-7eeb706c2b51
Version Independent ID: 642cbcbe-ed7d-1181-fc9a-ee3538446996
Content: Send custom events to web endpoint - Event Grid, Azure portal
Content Source: articles/event-grid/custom-event-quickstart-portal.md
Service: event-grid
GitHub Login: @spelluru
Microsoft Alias: spelluru

@andronachev Thanks for your feedback! We will investigate and update as appropriate.

@andronachev We've noticed that you've created an MSDN thread for this query as well.
Roman's response mentions a valid workaround for now and is indeed a bug in the portal. I've raised this internally and is being worked on.

@andronachev Since there is no doc update required here, we will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.
I will keep this issue updated once the fix for issue raised here is rolled out.


Makefile

Added a makefile to cover a few common use cases:

update-deps: generate the requirements.txt and install dependencies from it
generate-protos:: update all protos the repo
check: run the pylint linter
format: format code

Have we formatted the Makefile?

No standard way to format a makefile as far as I can see


java.lang.Throwable: Control-flow exceptions (like ProcessCanceledException) should never be logged: ignore for explicitly started processes or rethrow to handle on the outer process level

Please copy paste the generated bug report.

Please update to version 1.22.1 which fixed this error.


Allow slash in attribute key

As discussed in https://github.com/sindresorhus/awesome-lint/issues/54#issuecomment-476026529.

@chinesedfan This looks good code-wise, but did you see my comments in the linked post as well?

Message-control and comment-marker conform to HTML, it's like attributes, which I think makes sense for markdown.

Why should we diverge from HTML?

Note that we also use colons throughout the ecosystem. To differentiate between the 'source' (in this case awesome) and the ruled.

This is pretty useful, actually. There’s benefits in sticking with the system in place.

@wooorm I shared the same idea with you that don't diverge from HTML, but confused when you mentioned colons. Did you suggest we use a simple ruleId without slash? Because source can contain namespace information? Then it goes back to my advice about renaming.

Again, the code looks good, but I’d like to understand why you think this is a good idea a bit better first, so here goes.
I haven‘t delved into the awesome linter recently, but I believe it’s presenting itself to users as its own thing. Through something like remark-lint:awesome/badge. Why not go with awesome:badge? Or otherwise, maybe remark-lint:awesome:badge?
Why do we need to mimic the file-system by using slashes. Why follow ESLint? What’s wrong with colons?

I shared the same idea with you that don't diverge from HTML.

@wooorm Yes, we are in the same team if re-designing from the beginning. But I can also accept allowing slash in attribute key. The reason why I send this PR is awesome-linter has been already there. In https://github.com/sindresorhus/awesome-lint/issues/54, @sindresorhus didn't want to rename ruleIds, and I didn't recognize your opposition clearly.
So, @sindresorhus, please make an agreement with @wooorm then we can know how to solve it. You are facing "1 vs 2" I think. :P

Seems awesome-lint can switch to use colons, so I’ll close this here.

P.S. thanks for creating the PR tho, @chinesedfan!


[M4] Submission

Please reply your enhancement description in the format below:
Modification: [Describe what you did]
Source: [paste the link to the comment]
Team Member: [Your Name]
Commit(s): [Link to the commit(s) where you incorporated the modification]

Modification: Add additional information (min/mean/max) of the measurements to the map
Source: https://github.com/UBC-MDS/air-pollution/issues/47 (which comes from a chat message)
Team Member: @netsgnut
Commits: f62e4807b3b1b88628514847b6c42ace4bb68585

Modification: Allow NAPSID to be filtered
Source: From a chat message
Team Member: @netsgnut
Commits: 9fb347b7680666f0502af0247cd49f6ce1a52db3

Modification: Added Generate Report Functionality
Source: From Lecture
Team Member: Elena Ganacheva
Commit(s): [Link to the commit(s) where you incorporated the modification] (will add once merged)

Modification: Added Generate Report Functionality
Source: From Lecture
Team Member: Ranjit Sundaramurthi
Commit(s): 4dc0b44

Modification: Added description of the pollutants as popovers
Source: Group discussions
Team Member: Ritisha Sharma
Commit(s): https://github.com/UBC-MDS/air-pollution/commit/037f74a134333f1743b6babdb6b39281b7bb7534

Modification: Make plots into plotly to add tooltip
Source: Group discussions
Team Member: Ritisha Sharma
Commit(s): https://github.com/UBC-MDS/air-pollution/commit/0fb60b850a9ccd4b9f4dbbf1c78a8f0241b9e1f8


div not support in row class

It is my code, It's BootStrap4 version

Col 1

Col 1

Col 1

When I run the code I see http://prntscr.com/gdjfua it's not what I want. But when I remove somet class, then working fine. Has there anyway to use div class into row class ?

you could use the class col on somet and then nest the other columns in another row

Can you give me an example code, please?

The problem is the
 because .row flexes the items inside.
Use the grid wisely 😄 (and don't add extra markup)

From the documentation:

Content should be placed within columns, and only columns may be immediate children of rows.

Example:

...

...

...

As folks have mentioned, your markup is incorrect. Read the how it works section of the grid docs: https://getbootstrap.com/docs/4.0/layout/grid/#how-it-works.


CORS Redirects

When not specifying the exact package version like this:
https://unpkg.com/react/dist/react.min.js

It redirects to the latest version:
<EMAIL_ADDRESS>
However, the redirects are not followed from Chrome using xhr requests. In Firefox they work fine.
Here is JSFiddle example.
Maybe add additional API, for example, to list all known versions, like this:
GET https://unpkg.com/react?versions

...
15.4.0
15.4.1

That way, if the exact version is not known, one could lookup the available versions first.
Alternatively, when latest version is specified, it could return the contents, instead of redirecting.
https://unpkg.com/react@latest

But then it's more tricky with CDN caching.

Closed as dup of https://github.com/unpkg/npm-http-server/issues/63


Prevent BSF from Eating Parent Project Flags (extension of #150)

This is a small change to prevent the flags from getting overwritten. It is generally considered the parent project's responsibility to make sure sub directory inclusion happens in an order that makes sense and doesn't cause over pollution of flags (bsf shouldn't get my -ffast-math for example). However, there are flags that are set on the command line that need to be honored. This solves this problem.
This extends #150.

Yep that makes sense, thanks, merged.


Decoupling Part 3

This PR is mostly just shuffling modules and functions around. I've also decoupled more functions from the general app state. This makes it much easier to test & adjust them if needed. There aren't many notable logic changes.
This is what the core directory structure looks like now. I'm not sold on all of the folder names yet but those are easy enough to change.
// Different ways that Airnode can connect to the outside world
adapters/
  // The only "adapter" at the moment that executes aggregated API calls
  http/

// Airnode configuration settings
config/

// The "main" coordinator modules and state definition
coordinator/
  // Modules that aggregate, execute and disaggregate individual API calls (don't really like this folder name)
  http/

// EVM specific logic for most of the app. Soon to be renamed "evm"
ethereum/
  authorization/
  contracts/
  requests/
  templates/
  transactions/
  triggers/

// Provider workers and state definition
providers/

// Generic modules for requests that we can hopefully re-use between between different blockchains
requests/

// General utility functions
utils/

// "Worker" function that allow for "forking"
workers/

Let me know what you think of this structure. It should be easier to change it going forward

Yeah calls is nicer. Thanks
I was thinking of putting something like this directory structure somewhere in the technical documentation anyway


Various refactorings to BinaryReader and some TypeScript issues

Eliminate some unused code from BinaryReader.
Address a couple of warnings from TypeScript.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


RWD Beta:  Grid Magazine section Step 24

Affected page
https://www.freecodecamp.org/learn/2022/responsive-web-design/learn-css-grid-by-building-a-magazine/step-24
Your code
src="https://cdn.freecodecamp.org/testable-projects-fcc/images/survey-form-background.jpeg"
            alt="four people working on code"
            loading="lazy"
            class="image-3"
            width="600"
            height="400"

Expected behavior
I expected it to pass. I also tried:
<img src="https://cdn.freecodecamp.org/testable-projects-fcc/images/survey-form-background.jpeg"
            alt="four people working on code"
            loading="lazy"
            class="image-3"
            width="600"
            height="400" />

I even went to step 25 and copied/pasted the complete tag from that lesson and it failed. It wasn't clear if I should add <img and  /> or not. You can see the empty img tag above the instructions. But the error message was always:

Your third img element should have a src set to https://cdn.freecodecamp.org/testable-projects-fcc/images/survey-form-background.jpeg.

Screenshots

System

Device: [Laptop]
OS: [Windows 10]
Browser: [brave]
Version: [Version 1.33.106 Chromium: 96.0.4664.110 (Official Build) (64-bit)]

Additional context

Hi @Kernix13 !
I was able to pass with the following code

I think the issue is that people don't realize that with this new editor, you can edit other lines of the html file like on line 154.
I guess a possible solution would be to edit line 154 to be the following: <imgand then users would just have to finish out the rest of that image tag.
src="https://cdn.freecodecamp.org/testable-projects-fcc/images/survey-form-background.jpeg"
alt="four people working on code"
loading="lazy"
class="image-3"
width="600"
height="400"/>

Easier might be just including the whole <img /> in the editable region at the start.

Ok, I tried it exactly as you have it with nothing on lines 155 and 162 AFTER removing  />, also with the code starting on 155 and having the code end on line 160 which also worked. I think it would be best to either:

have the user enter the entire img tag (with <img /> removed from line 154), or
have <img  on line 154 and the closing  /> on the first line following the editor

Is that something that I should do? I can go into Step 24 and edit the HTML for either scenario. I tested both ways of my bullet points and passed both times.

If we add the entire img tag in the editable part, then we might consider altering the text to say create a third img element instead of give your third img element.

Is that something that I should do?

Any issue that is marked with a help wanted label is up for grabs.
You are free to make a PR.
But also, more people will probably comment on the issue with their two cents after the weekend.

Ok, so should I just go ahead and do that? Since all three img tags were created a few steps prior, I think it would make sense to remove the closing part of the tag from above the editor and add it below the editor. However, what is actually doing the tests, checking what was entered? Wouldn't that have to be updated as well? Is it JavaScript? Does the code for that check need to be changed to recognize the change in the HTML above and below the editor?

I'd consider just moving editable region, to contain <img />. This requires adjusting just single step and keeps consistent with previous steps. Adding img in this step would need removing it from previous steps. Similarly if editable region would be added inside of <img />, some previous steps might need changing to keep it consistent.
Tests are using code below each hint in the --hints--, in this case none would require changing.

Done - moved it to be between the --fcc-editable-region lines and pushed the change.


add blog.muzzug.com

This PR is:

[x] Adding a new domain
[ ] Updating existing domain size
[ ] Changing domain name
[ ] Removing existing domain from list
[ ] Website code changes (512kb.club site)
[ ] Other not listed

[x] I used the uncompressed size of the site
[x] I have included a link to the GTMetrix report
[x] This site is not an ultra lightweight site
[x] The following information is filled identical to the data file

I confirm that I have read the FAQ section, particularly the two red items around minimal pages and inappropriate content and I attest that this site is neither of these things.

[ ] Check to confirm

- domain: blog.muzzug.com
  url: https://blog.muzzug.com/
  size: 63.9
  last_checked: 2023-12-17

GTMetrix Report: https://gtmetrix.com/reports/blog.muzzug.com/bCn0JhKU/

Thanks!

Thank you, too! :)


issue with enrico_lc

Hi,
When I try to make the light curve with the time bins defined in a
.txt file it gives wrong results (very high TS and high flux).
I inserted the text file in the time section of config file
[time]
tmin = 0
tmax = 0
file = "/home/......"
type = 'MET'
and the text file contains time bins like this:
239557417.0    251328324.953
251328324.953  265886740.06
265886740.06   269919397.995
269919397.995  284028738.702
284028738.702  296878068.914
..........................
when it is finished, the TS in each bin is very high, at least first few bins are ok but then
the results are very high (even the flux).
Can you please help me to solve this problem.
Thank you in advance

Hi
did you try to put tmin = 251328324.953 and tmax = 296878068.914
you say
when it is finished, the TS in each bin is very high, at least first few bins are ok but then
the results are very high (even the flux).
I am no sure if this is a problem or not. the source ca be variable
cheers

hello,
I am also an error at time of lightcurve plotting with the help of matplotlib. The error is given below:
No Npred Plot produced
/home/avijit/enrico/enrico/lightcurve.py:403: UserWarning: FixedFormatter should only be used together with FixedLocator
ax.set_yticklabels([float(round(k,5)) for k in ax.get_yticks()10*(-offset_factor)])
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Font family ['serif'] not found. Falling back to DejaVu Sans.
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
WARNING:matplotlib.font_manager:findfont: Generic family 'serif' not found because none of the following families were found: Computer Modern
Traceback (most recent call last):
File "/home/avijit/enrico/bin/enrico_plot_lc", line 21, in
liste = np.genfromtxt(sys.argv[1],dtype="str",unpack=True)
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/site-packages/numpy/lib/npyio.py", line 2266, in genfromtxt
raise ValueError(errmsg)
ValueError: Some errors were detected !
Line #9 (got 1 columns instead of 3)
Line #20 (got 1 columns instead of 3)
Line #29 (got 1 columns instead of 3)
Line #37 (got 1 columns instead of 3)
Line #43 (got 1 columns instead of 3)
Line #49 (got 1 columns instead of 3)
Line #54 (got 1 columns instead of 3)
Line #70 (got 1 columns instead of 3)
Line #79 (got 1 columns instead of 3)
Line #85 (got 1 columns instead of 3)
Line #101 (got 1 columns instead of 3)
Line #115 (got 1 columns instead of 3)
Line #127 (got 1 columns instead of 3)
Line #147 (got 1 columns instead of 3)
Line #163 (got 1 columns instead of 3)
Line #171 (got 1 columns instead of 3)
Line #186 (got 1 columns instead of 3)
Line #200 (got 1 columns instead of 3)
Line #211 (got 1 columns instead of 3)
Line #217 (got 1 columns instead of 3)
Line #227 (got 1 columns instead of 3)
Line #231 (got 1 columns instead of 3)
Line #245 (got 1 columns instead of 3)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/avijit/enrico/bin/enrico_plot_lc", line 30, in
lcobject.PlotLC()
File "/home/avijit/enrico/enrico/lightcurve.py", line 243, in PlotLC
self._PlotLC()
File "/home/avijit/enrico/enrico/lightcurve.py", line 414, in _PlotLC
plt.savefig(LcOutPath+"_TS.png", dpi=150, facecolor='w', edgecolor='w',
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/site-packages/matplotlib/pyplot.py", line 944, in savefig
res = fig.savefig(*args, **kwargs)
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/site-packages/matplotlib/figure.py", line 3277, in savefig
self.canvas.print_figure(fname, **kwargs)
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/site-packages/matplotlib/backend_bases.py", line 2338, in print_figure
result = print_method(
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/site-packages/matplotlib/backend_bases.py", line 2204, in
print_method = functools.wraps(meth)(lambda *args, **kwargs: meth(
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/site-packages/matplotlib/_api/deprecation.py", line 385, in wrapper
arguments = signature.bind(*inner_args, **inner_kwargs).arguments
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/inspect.py", line 3045, in bind
return self._bind(args, kwargs)
File "/home/avijit/anaconda3/envs/fermi/lib/python3.9/inspect.py", line 3034, in _bind
raise TypeError(
TypeError: got an unexpected keyword argument 'papertype'
Help to solve this problem.


[Bug] 查询结果每次返回的都不一样

Search before asking

[X] I had searched in the issues and found no similar issues.

Version
2.0.8
What's Wrong?
ELECT
count(*) as cc
FROM
(
SELECT
DISTINCT ac
FROM
xdr_source_log_login
WHERE
retm > '2024-05-01'
and flag = 1
and sess <> 'logout'
and scity <> ''
and ac <> ''
and sip in (
SELECT
DISTINCT wall_ip
FROM
xdr_wall
WHERE
wall_reason LIKE '%被多IP登录失败且一天内这些IP没有登录成功%'
and wall_time > '2024-05-14'
and wall_time < '2024-05-21'
)
) T
What You Expected?
能得出正确的数量，查询结果不一致的场景非常多，这在数据库层面属于非常严重的问题
How to Reproduce?
No response
Anything Else?
No response
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

两个表都是聚合模型，也不是文档里里面说的主键模型


UK - Biobank New BIDS dataset

ULTIMATE GOAL - Create a new REPO of UK-BioBank
For the purpose of this new BIDS dataset, we want to keep the final preprocessed files, and the derivatives that correspond to them (a gradient-corrected scan has a different segmentation than the original).
The new BIDS folder should appear as an identical copy of UK-Biobank (same number of files AND same LABELS) but within a different folder name: e.g. UK_BioBank_processed, and also have the derivatives that were manually checked.
BEFORE MANUAL CHECK
Sandrine's pipeline seems ready to go.
At this stage, I suggest we keep all the intermediate files for easy identification of potential problems. If space becomes an issue on Joplin we reevaluate: maybe do it in batches.
AFTER MANUAL CHECK
We should have files within the /UK_BioBank_processed/derivatives folder. Labels should be without RPI,gradcorr etc. suffixes, so on your code when you add the suffix _manual, make sure your strip those off.
Regarding the anatomy files (not the derivatives), we want to keep the last file of the pre-processing only, with the same name as the original:
e.g. Instead of: sub-1000252_T2w_RPI_r_gradcorr.nii.gz it should be sub-1000252_T2w.nii.
This will make things very easy for later processing through the Ivadomed pipeline.
So to sum it up:

Rename the reoriented/resampled file to what the original was,
Delete the rest of the processing files *RPI, *RPI_r_gradcorr etc..

NOTES
A few more files are needed for a complete BIDS folder: dataset_description.json and participants.json (you only have participants.tsv) - Maybe a README.TXT as well(?). Just copy these from the original UK-BioBank dataset.
The preprocessing steps should be documented somewhere: The easiest place would in the dataset_description.
Document git-version of SpinalCordToolbox and the function calls that were used with their parameters.
Another place could be the .json that is associated to each .nii.gz but that is a bit more work.
There is also the gradcorr file that needs to be documented somehow.... Don't have any input on that. As a start, maybe document which facility it came from(?)

thank you for initiating this @mpompolas, few precisions:

the repos should be under git-annex (not on duke)
the repos name should be the same as the original repos (unprocessed) with added suffix: -processed

thank you for initiating this @mpompolas, few precisions:

the repos should be under git-annex (not on duke)
the repos name should be the same as the original repos (unprocessed) with added suffix: -processed

We should have files within the /UK_BioBank_processed/derivatives folder. Labels should be without RPI,gradcorr etc. suffixes, so on your code when you add the suffix _manual, make sure your strip those off.

@mpompolas So I can add to this branch a modified version of my script for manual corrections manual_correction.py so the output name of manual correction would be for example  sub-1000032_T1w_seg-manual.nii.gz instead of sub-1000032_T1w_RPI_r_gradcorr_seg-manual.nii.gz directly, is that right?

We should have files within the /UK_BioBank_processed/derivatives folder. Labels should be without RPI,gradcorr etc. suffixes, so on your code when you add the suffix _manual, make sure your strip those off.

@mpompolas So I can add to this branch a modified version of my script for manual corrections manual_correction.py so the output name of manual correction would be for example  sub-1000032_T1w_seg-manual.nii.gz instead of sub-1000032_T1w_RPI_r_gradcorr_seg-manual.nii.gz directly, is that right?

the repos should be under git-annex (not on duke)
the repos name should be the same as the original repos (unprocessed) with added suffix: -processed

Thanks @jcohenadad , just edited my instructions.

So I can add to this branch a modified version of my script for manual corrections manual_correction.py so the output name of manual correction would be for example sub-1000032_T1w_seg-manual.nii.gz instead of sub-1000032_T1w_RPI_r_gradcorr_seg-manual.nii.gz directly, is that right?

@sandrinebedard  exactly. For creating this dataset, we will solely use code from this branch.

the repos should be under git-annex (not on duke)
the repos name should be the same as the original repos (unprocessed) with added suffix: -processed

Thanks @jcohenadad , just edited my instructions.

So I can add to this branch a modified version of my script for manual corrections manual_correction.py so the output name of manual correction would be for example sub-1000032_T1w_seg-manual.nii.gz instead of sub-1000032_T1w_RPI_r_gradcorr_seg-manual.nii.gz directly, is that right?

@sandrinebedard  exactly. For creating this dataset, we will solely use code from this branch.

I had some thoughts about the datasets we want to create. We talked about the fact that the derivatives folder would only be in the UK_BioBank_processed dataset. However, my pipeline for cord CSA takes as an input the raw images and also manual segmentation and disc label in the derivatives. So there will be a problem if the derivatives are in UK_BioBank_processed.
ideas:

I could modify my process_data.sh to take in the new dataset, so removing steps of resampling, reorientation and gradcorr but we would have to create the dataset before I can run my pipeline
Would it be possible to have the same derivatives folder associated to both datasets or something like that?

@jcohenadad do you have some thoughts on this?

I had some thoughts about the datasets we want to create. We talked about the fact that the derivatives folder would only be in the UK_BioBank_processed dataset. However, my pipeline for cord CSA takes as an input the raw images and also manual segmentation and disc label in the derivatives. So there will be a problem if the derivatives are in UK_BioBank_processed.
ideas:

I could modify my process_data.sh to take in the new dataset, so removing steps of resampling, reorientation and gradcorr but we would have to create the dataset before I can run my pipeline
Would it be possible to have the same derivatives folder associated to both datasets or something like that?

@jcohenadad do you have some thoughts on this?

@sandrinebedard good point.

I could modify my process_data.sh to take in the new dataset, so removing steps of resampling, reorientation and gradcorr but we would have to create the dataset before I can run my pipeline

I would lean towards this approach. You could e.g. break down your shell script and create a preprocess_data.sh, which deals with gradcorr, resampling. That script could also deal with renaming (ie remove the suffix "_gradcorr_r" as we discussed, so that the output data is "clean" of suffix and can be used as a "native" BIDS dataset for other projects (eg model training).

Would it be possible to have the same derivatives folder associated to both datasets or something like that?

I would advise against it. I'm afraid we will end up with out-of-sync derivatives (eg. segmentation manually corrected in dataset1 but we forgot to update it in dataset2).

@sandrinebedard good point.

I could modify my process_data.sh to take in the new dataset, so removing steps of resampling, reorientation and gradcorr but we would have to create the dataset before I can run my pipeline

I would lean towards this approach. You could e.g. break down your shell script and create a preprocess_data.sh, which deals with gradcorr, resampling. That script could also deal with renaming (ie remove the suffix "_gradcorr_r" as we discussed, so that the output data is "clean" of suffix and can be used as a "native" BIDS dataset for other projects (eg model training).

Would it be possible to have the same derivatives folder associated to both datasets or something like that?

I would advise against it. I'm afraid we will end up with out-of-sync derivatives (eg. segmentation manually corrected in dataset1 but we forgot to update it in dataset2).

You could e.g. break down your shell script and create a preprocess_data.sh, which deals with gradcorr, resampling. That script could also deal with renaming (ie remove the suffix "_gradcorr_r" as we discussed, so that the output data is "clean" of suffix and can be used as a "native" BIDS dataset for other projects (eg model training).

I agree with @jcohenadad on splitting the script into two parts.

Would it be possible to have the same derivatives folder associated to both datasets or something like that?

The idea is to completely separate the original from the preprocessed dataset. If we put segmentations within the same folder from multiple datasets (I assume you would differentiate them with a suffix) it will become complicated later on to differentiate which ones we will use for training since we tend to have a standardized suffix in all datasets "_seg-manual" or "_labels-disk-manual" etc.
This standardization will make things very easy when we need to select multiple Datasets/BIDS folders as inputs in training.

You could e.g. break down your shell script and create a preprocess_data.sh, which deals with gradcorr, resampling. That script could also deal with renaming (ie remove the suffix "_gradcorr_r" as we discussed, so that the output data is "clean" of suffix and can be used as a "native" BIDS dataset for other projects (eg model training).

I agree with @jcohenadad on splitting the script into two parts.

Would it be possible to have the same derivatives folder associated to both datasets or something like that?

The idea is to completely separate the original from the preprocessed dataset. If we put segmentations within the same folder from multiple datasets (I assume you would differentiate them with a suffix) it will become complicated later on to differentiate which ones we will use for training since we tend to have a standardized suffix in all datasets "_seg-manual" or "_labels-disk-manual" etc.
This standardization will make things very easy when we need to select multiple Datasets/BIDS folders as inputs in training.

I would lean towards this approach. You could e.g. break down your shell script and create a preprocess_data.sh, which deals with gradcorr, resampling. That script could also deal with renaming (ie remove the suffix "_gradcorr_r" as we discussed, so that the output data is "clean" of suffix and can be used as a "native" BIDS dataset for other projects (eg model training).

@jcohenadad @mpompolas I agree, splitting the script seems like the best idea, I will get into it!

I would lean towards this approach. You could e.g. break down your shell script and create a preprocess_data.sh, which deals with gradcorr, resampling. That script could also deal with renaming (ie remove the suffix "_gradcorr_r" as we discussed, so that the output data is "clean" of suffix and can be used as a "native" BIDS dataset for other projects (eg model training).

@jcohenadad @mpompolas I agree, splitting the script seems like the best idea, I will get into it!


feat: set by path

addresses #1
If approach is valid and there is interest - this would be the remaining work
TODO

[ ] update readme
[ ] fix field update in set function
[ ] update tests

This PR also introduces the idea of casting the value from the lookup. I could split that into a separate PR if you think thats a better approach. Anyway, curious to know what you think of having this type of functionality.

@dviramontes thanks so much for these ideas
Quick thoughts are that I like the naming Get/Se. I also love the Get idea! That way we could ask for real type from the caller instead of always getting back the string representation.
I think for the cast package piece, we may be able to  implement our own small switch type deal to do that. My hope is to try not to use 3rd party packages at all (for now, obv if it became a real tool that perspective would change). The only other thought is maybe a different name instead of "preflight" (which I know this is just a wip anyway).

Thanks @bradford-hamilton / i'll open a separate PR with some of these ideas better refactored


Missing night mode in bedside lamp

Device model / 设备型号
yeelink.light.bslamp1
Component version / 插件版本
0.7.15
HA core version / HA版本
2024.2.3
Integrated mode / 集成方式
Automatic (自动模式)
The problem / 问题详情
Xiaomi bedside lamp 1 has a night mode. It has a prdefined light temperature and a brightness lower than the lowest that can be set normally.
This mode is not available in this integration.
In the Yeelight integration, it is available as a separate switch
Entity attributes / 实体属性
min_color_temp_kelvin: 1700
max_color_temp_kelvin: 6493
min_mireds: 154
max_mireds: 588
effect_list:
  - Color
  - Day
supported_color_modes:
  - brightness
  - color_temp
  - hs
  - onoff
effect: null
color_mode: null
brightness: null
color_temp_kelvin: null
color_temp: null
hs_color: null
rgb_color: null
xy_color: null
model: yeelink.light.bslamp1
lan_ip: <IP_ADDRESS>
mac_address: 78:11:DC:91:8E:97
entity_class: MiotLightEntity
home_room: Zaciszna Sypialnia
miot_type: urn:miot-spec-v2:device:light:0000A001:yeelink-bslamp1:2
light.on: false
light.brightness: 3
light.color: 16750592
light.color_temperature: 2702
light.mode: 2
light.saturability: 100
state_updater: lan
friendly_name: Lampka nocna Light
supported_features: 36

Home Assistant Logs / 系统日志
No response

Try this: https://github.com/al-one/hass-xiaomi-miot/issues/301

it works, but it is just a workaround for the problem, not a solution.


Middleman init not working

Sorry for posting a common problem. In my case I havent been able to find out what is wrong, running middleman init gives me the following:
Sebastians-MacBook-Pro:middlemantest sebastiangraz$ middleman init
/Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/renderers/sass_functions.rb:114:in `<top (required)>': uninitialized constant SassC::Script (NameError)
	from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/renderers/sass.rb:34:in `initialize'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/extension_manager.rb:66:in `new'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/extension_manager.rb:66:in `activate'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/extensions.rb:120:in `block in auto_activate'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/set.rb:232:in `each_key'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/set.rb:232:in `each'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/extensions.rb:117:in `auto_activate'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/extension_manager.rb:28:in `auto_activate'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/extension_manager.rb:20:in `block (2 levels) in initialize'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/callback_manager.rb:57:in `instance_exec'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/callback_manager.rb:57:in `block in execute'
	from /Library/Ruby/Gems/2.0.0/gems/hamster-3.0.0/lib/hamster/vector.rb:1316:in `each'
	from /Library/Ruby/Gems/2.0.0/gems/hamster-3.0.0/lib/hamster/vector.rb:1316:in `traverse_depth_first'
	from /Library/Ruby/Gems/2.0.0/gems/hamster-3.0.0/lib/hamster/vector.rb:431:in `each'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/callback_manager.rb:57:in `execute'
	from /Library/Ruby/Gems/2.0.0/gems/contracts-0.13.0/lib/contracts/method_reference.rb:43:in `send_to'
	from /Library/Ruby/Gems/2.0.0/gems/contracts-0.13.0/lib/contracts/call_with.rb:76:in `call_with'
	from /Library/Ruby/Gems/2.0.0/gems/contracts-0.13.0/lib/contracts/method_handler.rb:138:in `block in redefine_method'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/callback_manager.rb:28:in `block in install_methods!'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-core-4.1.9/lib/middleman-core/application.rb:279:in `initialize'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-cli-4.1.9/bin/middleman:51:in `new'
	from /Library/Ruby/Gems/2.0.0/gems/middleman-cli-4.1.9/bin/middleman:51:in `<top (required)>'
	from /usr/local/bin/middleman:22:in `load'
	from /usr/local/bin/middleman:22:in `<main>'

Running El Capitan (OS X 10.11.5 (15F34))
Using Sudo
Local gems:
activesupport (4.2.6)
addressable (2.4.0)
backports (3.6.8)
bigdecimal (1.2.8)
bundler (1.12.5)
coffee-script (2.4.1)
coffee-script-source (1.10.0)
compass-import-once (1.0.5)
concurrent-ruby (1.0.2)
contracts (0.13.0)
did_you_mean (1.0.0)
dotenv (2.1.1)
erubis (2.7.0)
execjs (2.7.0)
fast_blank (1.0.0)
fastimage (2.0.0)
ffi (1.9.10)
haml (4.0.7)
hamster (3.0.0)
hashie (3.4.4)
i18n (0.7.0)
io-console (0.4.5)
json (1.8.3)
kramdown (1.11.1)
listen (3.0.8)
memoist (0.14.0)
middleman (4.1.9)
middleman-cli (4.1.9)
middleman-core (4.1.9)
minitest (5.8.3)
net-telnet (0.1.1)
padrino-helpers (0.13.2)
padrino-support (0.13.2)
parallel (1.9.0)
power_assert (0.2.6)
psych (2.0.17)
rack (1.6.4)
rake (10.4.2)
rb-fsevent (0.9.7)
rb-inotify (0.9.7)
rdoc (4.2.1)
sass (3.4.22)
servolux (0.12.0)
test-unit (3.1.5)
thor (0.19.1)
thread_safe (0.3.5)
tilt (1.4.1)
tzinfo (1.2.2)
uglifier (3.0.0)

Seems like MM is trying to boot up way too much during init. Let me look


linter: API for eslint-plugin-oxlint

the eslint plugin eslint-plugin-oxlint does not parse the rules.rs.
Instead it looks recursivly into the rules directory and getting all informations (category: correctness, style, .., plugin-name: folder)
I am already getting annoyed because of the 3 big parts:

Documentation in oxlint
Detection in oxlintrc.json (maybe even oxlint cli, did not test it)
Remapping in eslint-plugin-oxlint

Originally posted by @Sysix in https://github.com/oxc-project/oxc/discussions/7242#discussioncomment-11401060

Need a json API for all lint rules.

Bonus point: Able to output too it with the used configuration.
So I can also check in the integration tests for the rule names and not only for the count :)

What should this look like? a public rust function exported from the crate? of from the oxlint cli?
or a task like the website docs (iirc)?
i might be able to do this next week if we can get that info nailed down

From the oxlint cli.

@Sysix what's the ideal shape?
would:
type Rule = {
    category: string;
    source: string; // unicorn/typescript/react ect.
    name: string;
}

type Response = Rule[];

be ok? or is that missing some info?

Looks perfect @camc314
the current source code type is:
export interface Rule {
  value: string; // name
  scope: string; // source
  category: string;
  error?: string; // when we could not parse the rule with our parser
}

perfect, i'll rename to use those words

feel free to change those words :) these are from the past and I also not like the name scope :)

😅 too late
🙂 i don't mind what we call it.
maybe pluginName and name ?
i think scope kinda makes sense though


php artisan adminlte:install --type=full not working

$ php artisan adminlte:install --type=full
Command "adminlte:install --type=full" is not defined.
Did you mean one of these?
adminlte:install
adminlte:plugins
adminlte:status{--include-images
adminlte:update

Try php artisan adminlte and if it gives you an error, you need to run this command: composer require jeroennoten/laravel-adminlte.
Make sure you're in the correct directory when running this command.


Version 4.0.5 fails on a missing dependency

It looks like org.jboss.test-audit:jboss-test-audit-impl is not available in the maven central:
Could not find org.jboss.test-audit:jboss-test-audit-impl:2.0.0.Final.
     Searched in the following locations:
       - https://repo.maven.apache.org/maven2/org/jboss/test-audit/jboss-test-audit-impl/2.0.0.Final/jboss-test-audit-impl-2.0.0.Final.pom

It is available in the Jboss repo but it would be nice not to require the use of a custom repo.

Yea, I think this one is not synced with Central.
I am not sure if any other project still uses this, I recall updating it for the sake of EE 9 but we should probably look into what it actually does for this projects (it was a test coverage tool IIRC and probably required update of the TCK audit files as well?) and move it as a submodule here.

BTW this is not just 4.0.5, this should be true for any CDI TCK version.

The test-audit depednency is only used during the build of the TCK dist. It can be disable in one of two ways:

When importing a TCK dependency exclude the two test-audit dependencies:

    <dependency>
      <groupId>jakarta.enterprise</groupId>
      <artifactId>cdi-tck-core-impl</artifactId>
      <version>${cdi.tck.version}</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <groupId>org.jboss.test-audit</groupId>
          <artifactId>jboss-test-audit-api</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.jboss.test-audit</groupId>
          <artifactId>jboss-test-audit-impl</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

By disabling the the tck-audit profile by specifying -DskipTckAudit on the command line when running.

The tck-audit profile is enabled by default because you cannot build the TCK without it enabled. We could disable it by default and have to enable it during builds.
The other thing I have been meaning to look into is to generate a separate release pom for the TCK artifacts that do not include these build related profiles.

This should now be resolved via https://github.com/wildfly/wildfly/pull/15425

Coming back to this, I don't think this was a good decision. Not being able to build the project without a switch smells like bad practice. I'd rather people excluded the dependency if it is a problem.
Cc @Ladicek, maybe he'll have some other idea how to solve this?

@Ladicek that was my understanding as well (and shame on me for not trying it out) but that's not the case.
You get compilation errors because of all the annotations such as @SpecAssertion or @SpecVersion

Ouch! Yea I didn't try it either :-) OK, that's bad. Frankly, I don't understand why we don't publish jboss-test-audit-impl into Maven Central, because jboss-test-audit-api is there (and so is jboss-test-audit-parent). If we published -impl to Central, the extra profile and everything would become completely obsolete.

I agree.
I've created a JBoss nexus JIRA to ask if we could have impl artifact published as well - https://issues.redhat.com/browse/NEXUS-609
Meanwhile, I will reopen this issue to keep track of it.

Yes, the latest workaround the jboss repo 503 errors was focused on the runtime side of usage, not the build side. There still is the issue of having dependencies in the tck artifacts that are not used. The tck-audit*.xml files and annotations generation should probably be in a separate project that is consumed by the tck test artifacts.  There is no reason to build these every time the tests are built.

Yes, the latest workaround the jboss repo 503 errors was focused on the runtime side of usage, not the build side.

I am not sure I know what are you talking about? This impl artifact has never had a single version published into central which seems like a sort of deliberate exclusion?

There is no reason to build these every time the tests are built.

There was always the option to do -DskipTckAudit if you want to. I am just of the opinion that a maven project should be buildable by plain mvn clean install :)

There still is the issue of having dependencies in the tck artifacts that are not used.

True, a lot of bigger projects import dependencies with exlusions to avoid this. However, a project that imports TCKs is likely a projects that's meant to test run it in which case I don't see any big harm in just having it there. Unless I am missing something.

One could use -DskipTckAudit, but every downstream consumer who was running into 503 errors had to do that. Since we build the tck artifacts, I switched the burden of avoiding the jboss repo errors to the build step in the eclipse ci environment so that every downstream user did not have to deal with the problem.
It was projects that were importing the TCKs to run them that were seeing the unused test-audit-impl dependency causing errors when the tck-audit profile was enabled by default.

I understand, but if we manage to get the impl artifact to Maven Central, these issues should just disappear.


Using tinystat

https://github.com/codahale/tinystat
Took a look over the tinystat lib and thought I'd start the discussion on what the command line api might look like. The general idea to me is to take everything from printSummery and printResults in the client and dump it into a struct that can be dumped out in different formats (json, gob etc.). After a test run it can be compared automatically if passed in at the beginning of the test run or you can save out the results of a test run and then use the 'stat' tool to create a comparison struct (the results of doing the tinystat). If you provide multiple runs it will compare them all against each other.
You could then take that result and graph it using a number of outputs (svg, html etc.) Turn it into more of a generation process for the raw data and then layers of views on top of that. You could output graph jpgs that could then be put into a nicely templated html page or you could create svgs etc.
flotilla-client --previous-stats testrun5.blob
flotilla-client stats -gobfiles=run1.gob, run2.gob, run3.gob -gobout=difference.blob
flotilla-client stats -htmlgraph=difference.blob
flotilla-client stats -htmlgraph=testrun5.blob

The code change I propose would be to first have the printSummary and printResults calls at the end of the test write to a struct that can be written to disk.
I have been looking for a generic way to compare benchmark runs easily (programmatically too) and this could be very useful in other places.
@tylertreat more to chew on

Yeah, many thanks to @codahale for pinging me re: tinystat and usl because they look really interesting/applicable.
Right now, the daemons only send back to the client a few data points from the HdrHistogram (min, max, quartiles, std dev, etc.). To compare benchmarks with tinystat, we'd conceivably need to capture the complete latency distribution (this would also be useful for plotting that distribution along the lines of this). I added a way to export/import histograms, so it is possible to serialize those.
I guess the question is whether it makes sense to create the summaries on the daemon and ship those back or ship the complete data set back. The latter probably makes more sense because it allows the client to do what it wants with the raw data. I like the idea of turning it into a generation process and layering views on top.

Yeah, I did some reading on USL tonight, lots of meat there. A little complicated but it looks really useful.
It probably makes sense to just start with your snapshot step and have that sent back to the client or posted somewhere else. Then the client can collect them from each daemon for further processing. Theoretically depending on the format the snapshot is in we could do stats based on that to start with.
I'm basing the above on my naive understanding of what you did in that PR as I'm not versed in the hdr lib's internals.


Widevine instructions are incorrect

On the webpage it states that the Widevine DRM contents must be extracted to the User Data in the app folder and that's incorrect: https://ungoogled-software.github.io/ungoogled-chromium-wiki/faq#windows
The Widevine files (if extracted from the Google Chrome offline installer files) must be placed into Chromium -> Application -> (Current Version folder) under AppData in order to be detected by the browser.

Fixed.


add: get access-entry command

Issue #, if available:
Description of changes:
Add get access-entry command
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Note that all the AWS SDK libraries have been upgraded. This was required to a breaking change and when the EKS library was updated it broke the other libraries. Info here: https://github.com/aws/aws-sdk-go-v2/issues/2370#issuecomment-1953308268


lucid_cnn.py:328: RuntimeWarning: invalid value encountered in scalar divide

Hi,
When I run the Inference on pcap files command, I get the following error:

Also, the script runs for a while then killed. Would appreciate if you could assist in this. Thanks.

Hi,
that error is returned by the function report_results, which computes the accuracy metrics.
This is because both TP and FN metrics are equal to zero.
From the attached screenshot I can see that you are using a pcap file that is not part of the CIC-DDoS2019 dataset, therefore LUCID is not able to correctly compare the predicted labels with the ground truth.
You should remove the option --dataset_type DOS2019 and, if you know the IP addresses of the attack traffic, use the options --attack_net and --victim_net to allow LUCID to correctly compute the accuracy metrics of the predictions.
Hope this helps
--roberto


Preset decks for popular games

Like a standard French deck, a tarot deck, a deck with jokers. A deck for doppelkopf https://en.wikipedia.org/wiki/Doppelkopf. A deck for 3 player hearts, a deck for 5 player hearts. Etc.

Maybe also an italian deck for games like scopa

as also suggested in issue #113  we should allow for saving of custom decks to persistent storage with a search functionality. I have a few ideas of what features this epic should contain, shall i make a seperate issue out of this?


Revert "Stream logging from attached debugger on iOS"

Reverts flutter/flutter#66092
Re-revert, see https://github.com/flutter/flutter/issues/66364.

Was reverted with https://github.com/flutter/flutter/pull/66359 and re-reverted.  Try again.

LGTM

FYI: this commit (and https://github.com/flutter/flutter/pull/66092) affected the flutter_gallery_ios32__start_up benchmark


onCellClicked doesn't fire when cell is clicked.

Hey there! Amazing library! I'm trying to configure the datagrid to show a dropdown menu when a non-header cell is clicked. Both onHeaderMenuClick and onHeaderClicked option work perfectly, but when I try to do the same with onCellClicked, it never fires. Any ideas why this might be?
Thanks!
    const onCellClicked = React.useCallback((cell: readonly [number, number])  => {
        console.log(cell)
    }, []);
    const onHeaderMenuClick = React.useCallback((col: number, bounds: Rectangle) => {
        setMenu({ col, bounds });
    }, []);
    const onHeaderClicked = React.useCallback(() => {
        console.log("Header clicked");
    }, []);

                        <DataEditor
                            {...defaultProps}
                            columns={cols}
                            rowMarkers={"both"}
                            getCellContent={getCellContent}
                            rows={numRows}
                            onCellClicked={onCellClicked}
                            onHeaderClicked={onHeaderClicked}
                            onHeaderMenuClick={onHeaderMenuClick}
 />

Maybe it broke in 3.0, checking. I will get a point release out today if there is a problem.

The documentation was unclear and the actual behavior was confusing to say the least. While it made sense to me it definitely wasn't expected. 3.0.2 makes the click handler work the same way the documentation states.


Heightmap chunk-generation issue

When the player moves to a position requiring the generation of new chunks, sometimes tiles are cut from the tilemap in a grid-like pattern. It seems to happen along the axis the player is moving. This might also be related to an issue where, if the player moves far enough in one direction, chunk loading somehow surpasses the player as if the player had been moving a larger distance than in actuality. Using v0.8.2 on Godot 4.2.2
Here's a video of what I mean:
https://github.com/BenjaTK/Gaea/assets/170204847/2e76197b-c4c7-469d-b5f0-bb1b9c2a8848
As far as I know the second issue is also present in the demo, but the first issue isn't. I copied all settings from the demo exactly and still see the same problem with the grid-like cutouts. The issue only occurs when using the chunk-loader.

Ok, seemed to have found the fix for both issues. Stems from the terrain peering bits being improperly configured, so if anyone runs into similar issues take a look at that first!