Netty SslContext Client SNI

Expected behavior
SslContext forClient Sending SNI to Server
Actual behavior
SslContext forClient not Sending SNI to Server
Steps to reproduce
Just create a normal Netty HTTPS Client and Capture TLS Client Hello Packet
Minimal yet complete reproducer code (or URL to code)
Netty version
4.1.42.Final
JVM version (e.g. java -version)
openjdk version "11.0.4" 2019-07-16 LTS
OS version (e.g. uname -a)
Windows 10 Pro x64
Why Netty SslContext forClient doesn't include "server_name" TLS Extension in Client Hello?

How you create the SslHandler / SslEngine ? You need to use the method that will take a hostname / port as well as argument.

How you create the SslHandler / SslEngine ? You need to use the method that will take a hostname / port as well as argument.

I'm using typical SslContext with SslContextBuilder.
SslContext sslCtx = SslContextBuilder.forClient().build();
I don't wanna use SSLEngine (javax.net.ssl.SSLEngine) because of obvious reasons. Help, please?

@hyperxpro I am interested in how you use the SslContext later on .

@hyperxpro I am interested in how you use the SslContext later on .

    System.setProperty("jsse.enableSNIExtension", "true");
    EventLoopGroup childGroup = new NioEventLoopGroup();

    SslContext sslCtx = SslContextBuilder.forClient().build();

    Bootstrap bootstrap = new Bootstrap();
    bootstrap.group(childGroup)
            .channel(NioSocketChannel.class)
            .handler(new SimpleChannelInboundHandler<>() {
                @Override
                protected void channelRead0(ChannelHandlerContext ctx, Object msg) throws Exception {
                    // JUST RANDOM CODE TO MAKE TLS REQUEST
                    FullHttpRequest fullHttpRequest = new DefaultFullHttpRequest(HTTP_1_1, HttpMethod.GET, "/", Unpooled.EMPTY_BUFFER);
                    ctx.writeAndFlush(fullHttpRequest);
                }
            });

    Channel ch = bootstrap.connect(new InetSocketAddress("facebook.com", 443)).sync().channel();
    ch.pipeline().addFirst(sslCtx.newHandler(ch.alloc()));

I am able to send SNI using SSLParameters in SSL Engine. Is this the correct way? And Will I get OpenSSL Provider using this code?
    // EventLoop
    EventLoopGroup childGroup = new NioEventLoopGroup();

    // SSL Parameters to set SNI TLS Extension
    SSLParameters sslParameters = new SSLParameters();
    sslParameters.setServerNames(Collections.singletonList(new SNIHostName("facebook.com")));

    // Build SSLContext for Client
    SslContext sslContext = SslContextBuilder.forClient().sslProvider(SslProvider.OPENSSL).build();

    // SSLEngine with SSL Parameters for SNI
    SSLEngine sslEngine = sslContext.newEngine(ByteBufAllocator.DEFAULT);
    sslEngine.setSSLParameters(sslParameters);

    // SSL Handler
    SslHandler sslHandler = new SslHandler(sslEngine);

    Bootstrap bootstrap = new Bootstrap();
    bootstrap.group(childGroup)
            .channel(NioSocketChannel.class)
            .handler(new SimpleChannelInboundHandler<>() {
                @Override
                protected void channelRead0(ChannelHandlerContext ctx, Object msg) throws Exception {
                    // JUST RANDOM CODE TO MAKE TLS REQUEST
                    FullHttpRequest fullHttpRequest = new DefaultFullHttpRequest(HTTP_1_1, HttpMethod.GET, "/", Unpooled.EMPTY_BUFFER);
                    ctx.writeAndFlush(fullHttpRequest);
                }
            });

    Channel ch = bootstrap.connect(new InetSocketAddress("facebook.com", 443)).sync().channel();
    ch.pipeline().addFirst(sslHandler);

@hyperxpro yes this should work...  Alternative you can also use:
sslContext.newHandler(allocator, "facebook.com", 443);

@hyperxpro yes this should work... Alternative you can also use:
sslContext.newHandler(allocator, "facebook.com", 443);

If I specify Host "google.com" instead of "facebook.com" in
sslContext.newHandler(allocator, "facebook.com", 443);

but connect to "www.shieldblaze.com". Will SslContext respect Bootstrap connect or the Peer Host and Port which I specified in Handler?
Channel ch = bootstrap.connect(new InetSocketAddress("facebook.com", 443)).sync().channel();

I am building HTTPS Inspection Application so I need to customize SNI.
However, thanks a lot for the help so far!

@hyperxpro yes this should work... Alternative you can also use:
sslContext.newHandler(allocator, "facebook.com", 443);

If I specify Host "google.com" instead of "facebook.com" in
sslContext.newHandler(allocator, "google.com", 443);

but connect to "www.shieldblaze.com". Will SslContext respect Bootstrap connect or the Peer Host and Port which I specified in Handler?
Channel ch = bootstrap.connect(new InetSocketAddress("facebook.com", 443)).sync().channel();

I am building HTTPS Inspection Application so I need to customize SNI.
However, thanks a lot for the help so far!

@hyperxpro yes this should work... Alternative you can also use:
sslContext.newHandler(allocator, "facebook.com", 443);

@hyperxpro yes this should work... Alternative you can also use:
sslContext.newHandler(allocator, "facebook.com", 443);

If I specify Host "google.com" instead of "facebook.com" in
sslContext.newHandler(allocator, "google.com", 443);

but connect to "www.shieldblaze.com". Will SslContext respect Bootstrap connect or the Peer Host and Port which I specified in Handler?
Channel ch = bootstrap.connect(new InetSocketAddress("www.shieldblaze.com", 443)).sync().channel();

I am building HTTPS Inspection Application so I need to customize SNI.
However, thanks a lot for the help so far!

@hyperxpro yes this should work... Alternative you can also use:
sslContext.newHandler(allocator, "facebook.com", 443);

If I specify Host "google.com" instead of "facebook.com" in
sslContext.newHandler(allocator, "google.com", 443);

but connect to "www.shieldblaze.com". Will SslContext respect Bootstrap connect or the Peer Host and Port which I specified in Handler?
Channel ch = bootstrap.connect(new InetSocketAddress("www.shieldblaze.com", 443)).sync().channel();

I am building HTTPS Inspection Application so I need to customize SNI.
However, thanks a lot for the help so far!

Solved!


Add keys

Closes #50
Closes #172
As usual, we can only tell whether the ENV variables for Travis work once the change has been merged into master :(
This works for me locally, but you never know...
/cc @pshirshov

Well, let's try it... 🤞

wait uhh... are you guys pushing private keys to github?

I'm around
[error] (Compile / scalafmtSbtCheck) /home/travis/build/scalaz/scalaz-zio/build.sbt isn't formatted properly!

:D

Ah, yeah, check that private key is actually encrypted. Though it should be.

Formatted, private key can't be used without passphrase.

Codecov Report

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

@@            Coverage Diff            @@
##             master     #191   +/-   ##
=========================================
  Coverage          ?   66.85%
=========================================
  Files             ?       25
  Lines             ?     1074
  Branches          ?      149
=========================================
  Hits              ?      718
  Misses            ?      356
  Partials          ?        0

Continue to review full report at Codecov.

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

Green, you may merge


Fix 2FA becoming enabled when the user inputs the wrong code during setup

Description
During the 2FA setup, the user must input a code in order to verify the configuration. If the user inserts the wrong code, an error message is shown; however, 2FA still gets enabled.
This PR fixes this behavior and prevents 2FA from becoming enabled if the user inserts the wrong code.
Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[X] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale

[ ] Major
[ ] Minor

Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[X] Minor
[ ] Trivial

Screenshots (if appropriate):
How Has This Been Tested?
In a local lab:

In a user of the root admin account, I opened the 2FA setup, selected static PIN, provided the wrong PIN and verified that 2FA did not get enabled;
In a user of the root admin account, I opened the 2FA setup, selected static PIN, provided the correct PIN and verified that 2FA was enabled;
In a user of a non-admin account belonging to domain test/test2, I opened the 2FA setup, selected static PIN, provided the wrong PIN and verified that 2FA did not get enabled.
In a user of a non-admin account belonging to domain test/test2, I opened the 2FA setup, selected static PIN, provided the correct PIN and verified that 2FA was enabled.

@blueorangutan package

@DaanHoogland a [SF] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result [SF]: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: el9 :heavy_check_mark: debian :heavy_check_mark: suse15. SL-JID 7059

@blueorangutan test

@DaanHoogland a [SF] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

[SF] Trillian test result (tid-7691)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 44451 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr7972-t7691-kvm-centos7.zip
Smoke tests completed. 107 look OK, 1 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test
Result
Time (s)
Test File

test_11_destroy_ssvm
Failure
910.80
test_ssvm.py

ping @harikrishna-patnala can you review this?

reproduced the issue and verified the fix, it is looking good. Thanks @rohityadavcloud

Thanks for the fix, @winterhazel.


[cmd] cmd diff with multiple dirs

 Here is an overview of what got changed by this pull request:

Clones removed
==============
+ web/client/codechecker_client/cmd_line_client.py  -2

See the complete overview on Codacy


Snackbar theme does not applied to GetXSnackbart

return GetMaterialApp(
      theme: ThemeData(
        snackBarTheme: SnackBarThemeData(actionTextColor: Colors.red),));

Getx version 4.6.5
Flutter 3.0.5
Problem: When I set the following settings I expect that my snackbar take them. But the snackbar called by Get.snackbar(...); does not get the themedata applied
Could you help me ?

Could it be that what you're actually trying to change is contentTextStyle instead of actionTextColor?
Just a wild guess. If so, you could try:
 return GetMaterialApp(       theme: ThemeData(         snackBarTheme: const SnackBarThemeData(           contentTextStyle: TextStyle(color: Colors.red),         ),       ),

Could it be that what you're actually trying to change is contentTextStyle instead of actionTextColor? Just a wild guess. If so, you could try:
 return GetMaterialApp(
      theme: ThemeData(
        snackBarTheme: const SnackBarThemeData(
          contentTextStyle: TextStyle(color: Colors.red),
        ),
      ),

Nope, I already try this and it does not affect: Get.snackbar


Added an all-in-one-repos resource

🤔 This is a

[ ] Feature
[ ] Bug
[X] Documentation Update
[ ] Translation

✍ Description
Added an "All in one repos" resource to the README.md file.
Added to documentation

[X] readme file
[ ] No documentation needed

🐱💻 Use a meme/gif to describe how you feel for contributing (optional)

@9Hamza Amazing contribution, please compare it to develop branch instead of the main branch. 👍🏽

Did I do what you asked for? I'm not sure. Thank you!

@9Hamza It's good, Let me merge it. 🥇


Check if paired end lib file names are identical

This seems a common mistake users make. Can we remove the selected file from the suggested list? Or better yet, can we auto fill the corresponding read file in a pair?  That is, if user selects "file_R1.fastq", we can auto fill "file_R2.fastq".

Fixed on beta


pypi sdists are missing tests

Hi! I'm packaging geopy for Arch Linux.
When trying to package 1.20.0 I realized, that the tests are missing from pypi's sdist source tarball.
We usually use pypi to track and build source tarballs.
I guess the MANIFEST.in doesn't state this correctly. It should be recursive-include test/* *.
It would be awesome, if the next source tarball on pypi would include the tests. Thanks!

I have just released 1.21 which contains tests in sdist: https://pypi.org/project/geopy/1.21.0/


sockets: close net.Listener after failed Chown

Make sure file descriptor doesn't leak after failed Chown.

LGTM


Unused options error in make_docker_context.py

Issue Description
When running make_docker_context.py, it fails with an Unused options error
Environment

tag or commit hash on which this occured
master
OS version: <e.g. ubuntu-16.04>
CentOS 7
...

Minimal test code / Steps to reproduce the issue
Just run ./make_docker_context.py in build/fbcode_builder
What's the actual result?
/tmp/openr/build/fbcode_builder (master %=) > ./make_docker_context.py
INFO: Docker ccache not enabled
Traceback (most recent call last):
  File "./make_docker_context.py", line 173, in <module>
    config['github_project'],
  File "./make_docker_context.py", line 154, in make_docker_context
    dockerfile = builder.render(get_steps_fn(builder))
  File "/tmp/openr/build/fbcode_builder/fbcode_builder.py", line 136, in render
    .format(unused_options)
RuntimeError: Unused options: set([u'prefix', u'make_parallelism', u'projects_dir']) -- please check if you made a typo in any of them. Those that are truly not useful should be not be set so that this typo detection can be useful.

What's the expected result?
No error and the Dockerfile is generated.
Note: If I simply remove that unused options check the Dockerfile is generated (but I think it then ignores those 3 options).

this is a bit of ugliness. you need to run that command from the parent directory (openr/build/) to pick up the fbcode_builder_config.py that lives there. The one in openr/build/fbcode_builder is usesd so the command works for --help

Thank you, running it from the parent directory solved the errors.


Update Overview.md

Summary
Import Draft.css in the getting started example.

Thank you for this, it is clearly not obvious that the editor needs its Draft.css stylesheet to be imported for base styles.
While the intent of an import with a CSS file is quite clear, it may not work for everyone. What about calling out that the user should import styles in Draft.css either directly or using their style framework of choice?


What can I do to fix this?

PHP Fatal error:  Uncaught Hitrov\Exception\CurlException: curl error occurred: error setting certificate file: C:/Users/Matias/oci-arm-host-capacity/name_2023-07-29T02_46_46.003Z.pem, response:  in C:\Users\Matias\oci-arm-host-capacity\src\HttpClient.php:31
Stack trace:
#0 C:\Users\Matias\oci-arm-host-capacity\src\OciApi.php(257): Hitrov\HttpClient::getResponse()
#1 C:\Users\Matias\oci-arm-host-capacity\src\OciApi.php(132): Hitrov\OciApi->call()
#2 C:\Users\Matias\oci-arm-host-capacity\index.php(74): Hitrov\OciApi->getInstances()
#3 {main}
thrown in C:\Users\Matias\oci-arm-host-capacity\src\HttpClient.php on line 31
I'm completely new to php and because of this project, can someone help me fix this?

https://www.google.com/search?q=curl+error+occurred%3A+error+setting+certificate+file


Increment versions for graphservices releases

Increment package versions for graphservices releases

API change check
API changes are not detected in this pull request.


Two header with the same filename are considered being the same file in include view

Hello,
I have noticed a problem: when 2 headers have the same filename they are consider to be the same file.
For instance all the stdafx.h of my project are shown as one file in the include graph. Another example it happens for time.h which can be the libc one or the one in my project (including as #include <MyProject/Time.h>)
PS: Compile Score is incredible, thank you!

Hi! I am glad this project has been helpful so far.
I have good news and bad news at the same time regarding this issue. If you are profiling MSVC this issue should be resolved on version v1.7.0 as it will use the full path to know if 2 includes point to the same file or not. Sadly, Clang outputs the data with relative paths next to the object files which makes tricky to reconstruct the actual full path.
Version 1.7.0 can be found in this repo but I have not pushed it to the marketplace yet as I need to find a solution for this and other new issues with the Clang extractor,
I hope this helps.

Hi,
Thank you for your reply.
Actually I do use the version 1.7.0, I downloaded on github, but header
file with same filename are still considered to be the same file.
Regards
On Sat, Sep 24, 2022, 05:49 Ramon Viladomat @.***>
wrote:

Hi! I am glad this project has been helpful so far.
I have good news and bad news at the same time regarding this issue. If
you are profiling MSVC this issue should be resolved on version v1.7.0 as
it will use the full path to know if 2 includes point to the same file or
not. Sadly, Clang outputs the data with relative paths next to the object
files which makes tricky to reconstruct the actual full path.
Version 1.7.0 can be found in this repo
https://github.com/Viladoman/CompileScore/releases/tag/v1.7.0 but I
have not pushed it to the marketplace yet as I need to find a solution for
this and other new issues with the Clang extractor,
I hope this helps.
—
Reply to this email directly, view it on GitHub
https://github.com/Viladoman/CompileScore/issues/36#issuecomment-1256660065,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHSSFCSCDPVXZSPHPYWX2DV7YJXFANCNFSM6AAAAAAQTTBG7U
.
You are receiving this because you authored the thread.Message ID:
@.***>


sys_hashmap user defined equality function

Is your enhancement proposal related to a problem? Please describe.
I was trying to store strings as keys in a hashmap and quickly ran into the problem that only uint64_t can be stored in the map, and by looking at the implementation it's clear that this can't be solved, even by providing a custom hash function.
Describe the solution you'd like
If possible a new field of struct sys_hashmap could be added to allow defining an equality function. If specified this function could be used to compare the keys otherwise we could fallback to using the == operator.
Edit: this would not work out of the box for the cxx implementation of the map. Since that code does not even use the hash_func defined by the user it shouldn't be a problem.
Describe alternatives you've considered
Haven't considered alternatives, I just want to know what maintainers think about it.

Using strings as keys would be a welcome addition.
The current hash map implementation only supports 32-bit hashes. However, on 64-bit architectures, a string (char *, const char *, or const char *const) uses a 64-bit pointer.
So I think some additional work is needed. I'll comment on the PR as well.


Option to disable federated usage

Some users wish to host the bridge for their own purposes and don't wish to have their Twitter API account laden with requests from other users. We should offer the option to disable it over federation (and possibly a user whitelist).

Ah yes. I forgot. You can't discriminate with alias queries which makes the feature quite awkward to implement. I'd rather not make a half finished implementation of it.

Having mulled this over, I recommend this be a change to Synapse rather than this bridge. Setting who can access the bridge seems to be a HS concern.


Unsuccessful TensorSliceReader constructor: Failed to find any matching files for ./pretrain/ScaledYOLOV4_p6_coco_pretrain/coco_pretrain

Somehow, I cant load the pretrained weights.
My pretrained folder for p6 contains the following files:

\pretrain\ScaledYOLOV4_p6_coco_pretrain\checkpoint
\pretrain\ScaledYOLOV4_p6_coco_pretrain\coco_pretrain.data-00000-of-00001
\pretrain\ScaledYOLOV4_p6_coco_pretrain\coco_pretrain.index

Can you tell me where my mistake is?
(To be more precise, I'm only interested in saving the keras models as .h5 for inference only in my environment.)

any updates on this ?


Show approved in pull request list

Description
It would be nice to have an approved or anything in the pull request list over opening each pull request to check if it was approved.

Example URLs
https://github.com/bluerobotics/BlueOS/pulls

I thought that it was an old feature of refined and not from github.
It appears that github has some kind of bug, because it shows for a single PR and not for all of them... really weird..


Logging Tools

Eventually I want to set up better logging and error reporting to help us when we need to debug student issues with the IDE.
I was lurking in the Atom Slack and people were mentioning crashreporter and winston for helping us with this.
Not v2 blocking, but something I think we should tackle sooner rather than later because it will help us with debugging.

bumping this into v2....debugging stuff on windows is very difficult and we need better insight from our tools on what's going on

We moved away from winston, but we are still working on and thinking through how to appropriately log from the IDE.

Keeping this open, but removing it from the v2 milestone

This project is no longer maintained.


Remove "to_block" field from BlockRequests

On the receiving side, this field is completely ignored when we receive a request.
On the sender side, we always set this field to None, with the sole exception of warp syncing where we set it to the same value as the starting block because we want one specific block.
As far as I know, not only this field isn't used right now but has never been used.
Since this field is useless, this PR removes it.
Because we're using protobuf, it's not a problem if a client on an old version sends us a warp sync request where the field is defined. The now-unrecognized field will simply be ignored.
If this is approved, a corresponding issue should be opened in the w3f/specs repo.

bot merge

bot merge


(ask) want to know new feature

hi ..., If I may know, what features do you add?

Everything you see in my README.md file.
Everything else was made by Spacehuhn, Jesse Vincent,


JPG/PNG converter

Please add in an image resizer an ability to convert pictures to PNG and add convertion in resolution profiles. It will make much easier to make Telegram stickers from screenshots:)

tracked by #2686


Merge updates

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 77.011%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
268

Relevant Lines:
348

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 77.011%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
268

Relevant Lines:
348

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 77.011%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
268

Relevant Lines:
348

💛  - Coveralls


Add support for Host for the model

This commit add support for Host, which queries information about the computer model and the manufacturer.

Thanks for merging it!


[Kahi_minciencias_opendata_person] The plugin is transformed to use Yuku

thanks a lot @fedevergara for this PR,}

remember to update the README
please link in the PR comments the issues that are related with this PR


Different terminology in the DTR WebGUI for org owner vs "Admin"... in the docs.

"For this, click the Add user button, select the users that you want to grant permissions to manage the organization, and click Save. Then change their permissions from ‘Member’ to Admin."
You have different terminology here compared to the WebGUI for DTR 2.3.3... Org Owner.... or Admin ?
File: datacenter/dtr/2.3/guides/admin/manage-users/create-and-manage-orgs.md, CC @joaofnfernandes

We'll fix this one in the upstream repository so that the fix becomes available in the next release 😎.


Stacking Months with Inline Option

I'm using the both the inline and showMonths option.  I'm trying to show 6 months total with 2 columns and 3 rows.  It appears that because of the way the calendars are structured that this isn't possible and only a horizontal layout is feasible.  Is there a way to get around this?
Your Environment

flatpickr version used: 4.5.7
Browser name and version: Chrome 73
OS and version: Windows 10

Sorry, unfortunately this doesn't seem doable with the way flatpickr is built right now as the elements are stacked in the proper order


Setup IRC channel on  irc.freenode.net

To allow for realtime chat between fontbakery contributors. Naturally, it should not replace the issue tracker! Relevant issues should still be filed in here.
#fontbakery
irc.freenode.net

I haven't setup the channel yet. I'll close the issue once I do these things:

[ ] set up the channel
[ ] register an admin (initially myself)
[ ] update info on README.md
[ ] start showing up myself in there regularly

Alternative: Use Gitter and see if that fits the bill.

Isn't Gitter proprietary?

Awesome! Then this seems fine :)

We will start experimenting Gitter, then.
I will be the boring person who will ask from time to time for things mentioned in that chat channel to be persisted into properly detailed issues on the tracker :-)

So... how's it going with setting up Gitter? 😄

www.gitter.im/fontbakery
Please add to readme to close this out


Command Migration: ('HEXISTS', 'HKEYS', 'HVALS')

This issue tracks the migration of the mentioned commands - ('HEXISTS', 'HKEYS', 'HVALS') to make them compatible across the three protocols supported by the Dice database: RESP, HTTP, and WebSocket.
DiceDB now supports more than one protocols (Resp/http/websocket). We don't want eval operation of each command to be strictly bound with any of the protocols. Currently eval function return statements of each command is bounded to the RESP protocol.
The migration is required because:

The current implementation is specific to the RESP protocol
Evaluation functions of each command must be refactored to ensure protocol-agnostic behavior.
Evaluation functions should return raw responses instead of protocol specific responses.

The goal is to make the command logic protocol-independent, allowing all three protocols to call the same core functionality seamlessly.
Requirements

Refactor the evaluation function of [Command Name] to be generic.
Ensure the evaluation function does not include protocol-specific logic.

Migration Steps

Analyze Current Implementation

Review the current codebase to understand how the command logic is implemented.

Refactor Return Logic

Create a new function with the function definition as evalXXX(args []string, store *dstore.Store) *EvalResponse under the file /internal/eval/store_eval.go
Analyse return statements of the eval and modify them to send raw types without encoding
Use errors in the return statements from /errors/migrated_errors.go file
Use perdefined responses from /internal/clientio/resp.go file as RespType variables

Command/Worker specific Changes

Make IsMigrated flag to true in the commands information under /internal/eval/commands.go file.
Use the newly written eval function against the NewEval parameter in the same command structure.
Delete the old eval function from the /internal/eval/eval.go file.
Add the migrated command to the /internal/worker/CommandsMeta map and make it's type as SingleShard

Update Unit Tests

Refactor existing unit tests to accommodate the new implementation.
Add new unit tests if necessary to cover all possible cases.

Integration Tests

Run all integration tests to ensure successful migration.
Ensure that each protocol (RESP, HTTP, WebSocket) works correctly after migration.

Checklist

[ ] Migrated the evalXXX function with the latest definition
[ ] Update or add unit tests for the new implementation.
[ ] All unit tests pass successfully.
[ ] Ensure all integration tests pass successfully.

Additional Notes

Describe any edge cases that need to be handled in the generic function.
Mention any protocol-specific optimizations required in wrappers.

If there are any questions or concerns about this migration, please mention them here.
Related Issues/PRs

Sample implementation for the Get, Set, GetSet and SetEx can be found in this Pull Request.

@AshwinKul28 , can I pick this up?

Thanks @tarungka go for it! 🚀

HI @tarungka , I hope you are doing well. Do you happen to have any updates on this? If you've any doubts please let us know on the discord.

Hey @AshwinKul28, doing good. Hope you are doing good too. I am working on this, will have an update by EOD.  Apologies for the delay, been a busy week.

#1087

@tarungka hope you are doing well. If the PR is ready for review, please move it out of draft stage. Please let me or @AshwinKul28 know if you are facing any issues are have any concerns.

Hello @tarungka,
There has been no activity on this issue for the past 5 days.
It would be awesome if you keep posting updates to this issue so that we know you are actively working on it.
We are really eager to close this issue at the earliest, hence if we continue to see the inactivity, we will have to reassign the issue to someone else. We are doing this to ensure that the project maintains its momentum and others are not blocked on this work.
Just drop a comment with the current status of the work or share any issues you are facing. We can always chip in to help you out.
Thanks again.

Hey @arpitbbhayani,
There is a PR (#1087) currently in progress, and it's almost ready to be merged. The only remaining task is to fix the unit test cases that are breaking after resolving the conflicts. Once that's done, the issue will be resolved. I'll ensure the issue is wrapped up as soon as possible.


small bugfixes during updates to SlicerMorphR read.markups.json functionality

@smrolfe is this still relevant? If so can you review and merge it. Or we can remove it.


Script broken on home page

The marker-remove.html script on the home page does not work. Pressing the Hide Markers button does nothing. Same with Delete Markers button.
What is the correct way to hide markers?

This has been fixed.

The fix wascommitted in 5e238353c9c053e533e819dcb6742df3e7cd8222.


Follow AIP-134 guidance on Update methods

The field mask functionality doesn't seem like it's very relevant to the models package anymore, but I think it's best to move that at a later date if desired. The models package in general feels to me like it should live behind the abstraction of the DAO, allowing the API handlers to work with protos without also handling conversion to the storage format.

LGTM. I believe we agreed when the dao package was introduced that it would be temporary and that we would merge models into it, delete models, and rename dao to models. Regardless, I think further refactoring is fine (but not necessarily the highest priority).

I recall having a similar discussion, but I don't remember discussing the models package in particular. There's an open issue #147 that I think may have came from that discussion, and it suggests merging storage with dao as you're describing. I agree with all of the above though, having models, storage, and dao together as a single package would be nice but doesn't seem urgent.


Full stacktrace logged for services that cannot be loaded

Search first

[X] I searched and no similar issues were found

Description
The change in #5300 causes a full stacktrace to be logged when a service cannot be loaded. In our case HibernateSpringBeanDatabase cannot be loaded, because we do not include spring. This is fine, and expected. I'm ok with a single log line at INFO, and a full stacktrace at FINE (as it was before #5300), but now we get quite some log spam and no way to disable it (other than fully disabling all logging on this class).
I don't see why #5300 was needed in the first place. The logging was already in place. The only thing needed to get the full stacktrace was to simply enable the fine log level. Now the trace is logged twice.
Steps To Reproduce
Start liquibase without spring on the classpath.
Expected/Desired Behavior
StandardServiceLocator should not log full stacktraces under normal circumstances.
Liquibase Version
4.25.1
Database Vendor & Version
No response
Liquibase Integration
no spring
Liquibase Extensions
No response
OS and/or Infrastructure Type/Provider
No response
Additional Context
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR (Thank you!)

Hi @papegaaij, could you provide some more information about your project's environment?
Are you using Maven, Gradle, or something else?
Are you using the Liquibase plugin or just the dependency?
Thanks,
Tatiana

@tati-qalified We are using maven and just the dependency. Liquibase runs from within our application at startup. The problem with the change in #5300 is that the logging is duplicated. The same, full error is logged twice. Not being able to load a certain service that depends on an optional dependency does not warrant logging a full stacktrace. Many of our developers got confused by this stacktrace in the logging and thought that the application failed to deploy.

@papegaaij I see what you mean. We'll work on improving the log message so that it's informative but not overpowering.
Thanks!
Tatiana

The change in #5300 was necessary because the exceptions in the service loader are thrown before logging is configured, thus, there is no way to change the log level prior to the service loader being called.
I am not opposed to a more appropriate solution, but I personally don't know of one that doesn't involve a large refactoring of the log service to not use the service loader (which would also break other features).
Perhaps we could break away from our existing pattern of using the LiquibaseConfiguration classes to load configuration properties, and add in an environment variable or system property to this class that allows customization of logging at this point? This type of change is necessary, because the LiquibaseConfiguration classes themselves use the service loader mechanism.

Just to clarify on your point here:

I'm ok with a single log line at INFO, and a full stacktrace at FINE (as it was before https://github.com/liquibase/liquibase/pull/5300), but now we get quite some log spam and no way to disable it (other than fully disabling all logging on this class).

I agree that the original behavior is ideal, but since the logging isn't set up at this point, the log message logged at level FINE will never actually get logged, regardless of what you set your log level to.

@StevenMassaro this may hold for your setup, but it does not for us. Our logging is provided by the WildFly configuration and is correctly setup at startup, way before Liquibase is started.
IMHO it is not a very good idea to rely on a service for logging and use this service from the service loader that is supposed to load that very service. Why not simply rely on a logging facade, like SLF4J, and not try to put yet another facade around this?

@papegaaij Thanks for the quick response.
Liquibase supports numerous different types of setups, and the logging facade that currently exists supports the default (and most common) configuration of Liquibase well. It also follows the pattern of service discovery that Liquibase uses heavily, and was mainly introduced due to Liquibase's desire not to depend on third party libraries when possible.
Our team has discussed replacing our logging facade with something like slf4j. I cannot guarantee that this will happen, and if it does happen, we don't have a real timeline for it.
The setup that you have with wildfly is certainly not one of the more common setups. It sounds to me like this is a bug on the hibernate extension, which should not be causing this exception to occur when Spring is not on the classpath. I believe this can be fixed by moving the references to Spring classes out of this class, so that the service loader can instantiate it despite Spring not being on the classpath.
I am going to close this issue so that we can track this issue in the hibernate extension repo: https://github.com/liquibase/liquibase-hibernate/issues/659. Could you include a copy of your logs in that newly created ticket?

Reopened this issue, when the hibernate issue is fixed, then we can close this one.

Thanks @StevenMassaro ! @papegaaij  we can follow up this on hibernate extension, I'll ask @kevin-atx  to prioritize this one.

I do have a request for this ticket still. If the loglevel is not going to be changed, can the category be changed on which the full stracktrace is logged? A simple solution would be to create an inner class and log on that class instead. This would allow us to silence that category, without loosing the informative message.

I talked to Steve and we agree that this is fine, no problems with that . Thanks for the workaround idea @papegaaij !

@papegaaij do you think https://github.com/liquibase/liquibase/pull/5667/files would be enough? Or did I got your request wrong?

Yes, that looks great. That should make it possible to silence warnings for that specific category. Thanks for the fix!


Presize map with proper capacity

This PR presizes the http.Header with proper capacity.

If this is not adopted, can you let me know the reason ?


Sprint sep18 admin view

This refactors out solr and implements the admin view.

Coverage remained the same at 23.896% when pulling c33fe1bddd54252787156b7baf36fb5570be647d on sprint-sep18-admin_view into 56a3474b6badd9f53d6f0840b9b2dd5bd7d2972e on sept-dame-sprint-base.


feat: Add Finset.card_union_eq_card_add_card and golf

Follows #10224

There are compile errors, but seems not related to this PR.


Add example for optical flow visualizaition and RAFT

Closes #5309
Thanks a lot to @NicolasHug for taking it over.

Not much well over the weekend :cry: will try to finish this in few days

@oke-aditya thank you so much for your work so far.
I took care of polishing the example a bit, here are the latest rendered docs: https://1177465-73328905-gh.circle-artifacts.com/0/docs/auto_examples/plot_optical_flow.html#sphx-glr-auto-examples-plot-optical-flow-py
LMK what you think of it!

Looks good lessgooooo https://1182173-73328905-gh.circle-artifacts.com/0/docs/auto_examples/plot_optical_flow.html#sphx-glr-auto-examples-plot-optical-flow-py

Lessssss goooooooooooooooo. Yay


workflow assistance with hifiasm assembly for a triploid

Could you please help me refine my workflow for assembling a phased triploid genome using hifiasm and HapHiC?
Here is the current plan:

Run the hifiasm pipeline with Hi-C data for triploid assembly.
Convert *.hic.p_utg.gfa to asm.fa. Or should I convert three .hic.hap.p_ctg.gfa files to respective fasta, and concatenate these three to generate asm.fa ? In my assembly, these three *.fasta would require individual purging for duplicates.
Align Hi-C data to the assembly and prepare a BAM file:$ bwa index asm.fa
$ bwa mem -5SP -t 28 asm.fa /path/to/read1_fq.gz /path/to/read2_fq.gz | samblaster | samtools view - -@ 14 -S -h -b -F 3340 -o HiC.bam
$ /path/to/HapHiC/utils/filter_bam HiC.bam 1 --nm 3 --threads 14 | samtools view - -b -@ 14 -o HiC.filtered.bam

Run the HapHiC pipeline:$ /path/to/HapHiC/haphic pipeline allhaps.fa HiC.filtered.bam nchrs --gfa "hap1.p_ctg.gfa,hap2.p_ctg.gfa,hap3.p_ctg.gfa"

I would also appreciate your feedback on the following:

When should I remove duplicates in this process?
At what stage should I handle assembly decontamination?
What is the expected output of step 4 above? Would I receive three sets of hap*.hic and hap*.assembly files for manual curation? If now, how to generate those?

Thank you for your assistance!

Convert *.hic.p_utg.gfa to asm.fa. Or should I convert three *.hic.hap*.p_ctg.gfa files to respective fasta, and concatenate these three to generate asm.fa?

Although primary contigs are longer than unitigs, hifiasm may produce imbalanced haplotypes. Therefore, we often use unitigs for scaffolding. However, when hifiasm outputs balanced haplotypes, you can try using *.hic.hap*.p_ctg.gfa. Please note that hifiasm may have a bug in generating contig IDs for polyploids, so you may need to modify them before concatenating them into a single asm.fa.

When should I remove duplicates in this process?

I have mentioned this question in this issue:

"Purging duplicates" is somewhat a misleading term. These duplicates are derived from the heterozygous sites and this term is defined from the perspective of constructing a primary or a collapsed assembly. Hence, when you are attempting to construct a haplotype-resolved assembly, these duplicates are actually what you preferred and purging them is an incorrect choice.

From the current perspective, the statement above may be a bit hasty. In trio mode, hifiasm sets -l to 0 by default, which aligns with my previous understanding. However, in Hi-C mode, hifiasm sets -l to 3 by default. This may be due to a different algorithm used in Hi-C-based phasing. In this mode, hifiasm relies on determining homologous coverage and a similarity threshold to identify haplotigs. Therefore, we can understand why the authors recommend tuning the --hom-cov and -s parameters in such scenarios.

Why one Hi-C integrated assembly is larger than another one?
For Hi-C integrated assembly, why the assembly size of both haplotypes are much larger than the estimated genome size?

Please refer to the FAQs above if you encounter related issues. I would not recommend standalone tools for purging duplicates.

At what stage should I handle assembly decontamination?

You can do it before scaffolding or during Juicebox curation.

What is the expected output of step 4 above? Would I receive three sets of hap*.hic and hap*.assembly files for manual curation? If now, how to generate those?

You will get two AGP files, a scaffold-level FASTA file, and a bash script named juicebox.sh (refer to "Final outputs" in Run HapHiC scaffolding pipeline). If you want to manual curate your assembly in Juicebox, execute the bash script juicebox (refer to Juicebox curation). This will generate out_JBAT.hic file and out_JBAT.assembly files, which contain all the haplotypes you input into HapHiC.

Thank you very much for your quick reply @zengxiaofei
Could you please elaborate on how to generate the three fasta files of phased haplotypes from step 04 output? It is not clear to me from the link.
Would this step generate three fasta files of three haplotypes?
$ /path/to/HapHiC/utils/juicer post -o out_JBAT out_JBAT.review.assembly out_JBAT.liftover.agp asm.fa```

Could you please elaborate on how to generate the three fasta files of phased haplotypes from step 04 output?

Current Hi-C scaffolders cannot guarantee perfect chromosome assignment results. Some output scaffolds (groups) may originate from the same chromosome, while a single scaffold may contain sequences from different chromosomes. Therefore, it is essential to verify the results in Juicebox first. Consequently, HapHiC does not infer haplotypes, as the process could be problematic and misleading. After manual curation in Juicebox, you can perform either self-alignment or align the assembly to a reference genome to distinguish each haplotype. In addition, it is possible to identify homologous chromosomes based on the diagonally distributed Hi-C links on the contact map. For hap*.p_ctg, you can also distinguish them according to the contig IDs in each scaffold.
Please note that Hi-C-based scaffolding is chromosome-level phasing, while only trio-based scaffolding achieves true whole-genome phasing (refer to the hifiasm paper).

Thank you @zengxiaofei
Could you please suggest a suitable program to rename/fix header of hifiasm generated *gfa files.
As you suspected, I am getting duplicate contig names error in the mapping step?

The contig IDs for all haplotypes may start with h1tg. To address this issue, you need to rename h1tg to h2tg for haplotype 2 and h3tg for haplotype 3 using awk.

Thank you again @zengxiaofei,
I have been able to run the pipeline up to the Juicebox manual curation step.
Here’s what I have done so far:

Fixed the naming of the contigs in the GFA file as you suggested.
Generated three FASTA files and concatenate them as asm.fa.
Ran the pipeline until I obtained the out_JBAT.hic, out_JBAT.assembly, and other files using the juicer.sh script from the 04.build directory.
Loaded the .hic and .assembly files into the Juicebox program and manually curated the contigs and chromosomes.
Exported the assembly to out_JBAT.review.assembly from Juicebox.

However, I am stuck at this point.
Could you please guide me on how to proceed with the following tasks?

Generating FASTA files of the three haplotypes from out_JBAT.review.assembly.
I tried the following command, but I encountered a core dump error on a 64-core, 510G HPC node after displaying this message:
juicer post -o out_JBAT out_JBAT.review.assembly out_JBAT.liftover.agp assembly.hic.hap1.p_ctg.gfa.fasta

The error message is:
[E::make_asm_dict_from_agp] sequence h2tg000002l not found
Segmentation fault (core dumped)

Generating figures for the assembly.

While trying to generate three haplotype fasta files, I tried the following command

The ragtag_agp2fa.py script is used to convert a contig-level FASTA file into a chromosome-level FASTA file using an AGP file. However, the out_JBAT.FINAL.fa file is already the final chromosome-level FASTA file, so you do not need to use this script. As mentioned earlier:

HapHiC does not infer haplotypes, as the process could be problematic and misleading. After manual curation in Juicebox, you can perform either self-alignment or align the assembly to a reference genome to distinguish each haplotype.

the final output of HapHiC includes only one AGP file and one FASTA file. HapHiC does not generate three haplotypes; you will need to create these yourself. In addition, it is possible to identify homologous chromosomes based on the diagonally distributed Hi-C links on the contact map.

Close this issue as there has been no response for two weeks.


How can I create an image not running with root user?

Description of the issue:
Default configuration gives me the following warning:

Image docker.io/company/app runs as the root user which might not be permitted by your cluster administrator.

Expected behavior:
Possibility to set a user or automatically use a specific user.
Steps to reproduce:

just run gradlew jib
pull image from registry (e.g. on openshift)
-> warning that images runs on root user...

Environment:
jib-gradle-plugin Configuration:
jib {
  to {
    image = 'company/app:'+version
    auth {
      ...
    }
  }
}

Hi @beatjost , do you happen to be running the image with docker? If so, you can run the image with a specific user. I'd recommend 1000 as a default:
docker run --user 1000 <image>

If you are running on Kubernetes, I would recommend always running pods with a security context:
Example from that page:
apiVersion: v1
kind: Pod
metadata:
  name: security-context-demo-2
spec:
  securityContext:
    runAsUser: 1000
  containers:
  - name: sec-ctx-demo-2
    image: gcr.io/google-samples/node-hello:1.0
    securityContext:
      runAsUser: 2000
      allowPrivilegeEscalation: false

Thank you for your reply - will try with 'security context'...


ADDON-32234: Added Syslog support for McAfee NSP by adding sc4s filter

Added sc4s filter for McAfee NSP and added/modified its related files

I have read the CLA Document and I hereby sign the CLA

I have read the CLA Document and I hereby sign the CLA

recheck

recheck

:tada: This PR is included in version 1.46.0-develop.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.46.0-develop.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

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

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


Intuition about AWQ 2.5x faster inference speed.

I've experimented with AWQ/GEMM kernel inferences and got some interesting results.
AWQ was 2.5x faster than (Not Quantized). Here's my experimental setup:

batch_size=1
Llama-2-7b-chat
A100-SXM4-80GB 1 GPU

prompt = 'Who is the most famous person in the world?'
inputs = tokenizer(prompt, return_tensors='pt').to(device)
model = AutoAWQForCausalLM.from_quantized(
    model_path,
    device_map={'': device},
    fuse_layers=True,
)
model.generate(**inputs, max_new_tokens=512)

kernel
generated tokens
elapsed time
speed(s/token)

float16(Not Quantized)
458
11.03s
0.0241s/token

GEMM
491
4.88s
0.0099s/token

That's pretty amazing result. so I wondered about how this AWQ kernel was so fast, and experimented with different ways to make it work. As a result, I realized that fuse_layers was the most important feature and that Its code was derived from FasterTransformer.
Here's the result of an experiment with the fuse_layers under the same conditions.

kernel
fuse_layers
generated tokens
elapsed time
speed(s/token)

GEMM
True
491
4.88s
0.0099s/token

GEMM
False
523
13.51s
0.0258s/token

As you can see, there's no speed difference with not quantized when fuse_layers=False. AWQ is only faster when fuse_layers=True, and this code seems to come from FasterTransformer.
This is my intuition so far, and I'm curious what others think.

You are correct that you see a speedup mostly with fuse_layers. The reason why this is implemented is that other frameworks like GPTQ or ExLlama do similar things to claim a speedup. The real speedup comes from the combination of 4-bit weights and fused layers because the memory bandwidth of your GPU can be better utilized when the weights are smaller.


Bump java plugin to pickup stutter fix.

Description of the change:
Pickup stutter fix from java-plugin.
Motivation for the change:
operator-sdk init --plugins quarkus ... --project-name memcached-quarkus-operator would result in incorrectly generated operator main file. The filename would be MemcachedQuarkusOperator.java but the class inside would be MemcachedQuarkusOperatorOperator. This scenario is invalid in Java as the file needs to match the class.
Checklist
If the pull request includes user-facing changes, extra documentation is required:

[ ] Add a new changelog fragment in changelog/fragments (see changelog/fragments/00-template.yaml)
[ ] Add or update relevant sections of the docs website in website/content/en/docs

@estroz pushed a change to fix test-sanity.


Need parseInt(THRESHOLD)

In line 114, THRESHOLD is a string, so it needs to be changed to parseInt(THRESHOLD) before comparing to integers.

Thanks for the report, I've created this pull request to address the issue. I will notify the repo admins to bring it into the main branch.
Thank you again
Christopher


Exception in ElixirLS.LanguageServer.SourceFile

I'm seeing an exception in ElixirLS.LanguageServer.SourceFile:
07:45:53.404 [error] Task #PID<0.516.0> started from #PID<0.509.0> terminating
** (CaseClauseError) no case clause matching: {1, nil}
    (language_server) lib/language_server/source_file.ex:118: ElixirLS.LanguageServer.SourceFile.module_line/1
    (language_server) lib/language_server/providers/workspace_symbols.ex:371: anonymous fn/2 in ElixirLS.LanguageServer.Providers.WorkspaceSymbols.index/1
    (elixir) lib/enum.ex:1925: Enum."-reduce/3-lists^foldl/2-0-"/3
    (language_server) lib/language_server/providers/workspace_symbols.ex:370: anonymous fn/1 in ElixirLS.LanguageServer.Providers.WorkspaceSymbols.index/1
    (elixir) lib/task/supervised.ex:89: Task.Supervised.do_apply/2
    (elixir) lib/task/supervised.ex:38: Task.Supervised.reply/5
    (stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3
Function: #Function<32.46682346/0 in ElixirLS.LanguageServer.Providers.WorkspaceSymbols.do_process_chunked/2>
    Args: []

The exception is coming from the get_docs line:
  def module_line(module) do
    # TODO: Don't call into here directly
    case ElixirSense.Core.Normalized.Code.get_docs(module, :moduledoc) do
      nil ->
        nil

      {line, _} ->
        line
    end
  end

Most likely related to the elixir_sense update in https://github.com/elixir-lsp/elixir-ls/pull/180
cc: @lukaszsamson

That's strange as elixir_sense master@f89444dd713520acb5d97a98b6d24386c04b9ae8 returns 3-element tuple and the updated code in module_line/1 in https://github.com/elixir-lsp/elixir-ls/pull/180 matches on that 3-element tuple.
Could it be that older version of ElixirSense.Core.Normalized.Code or the whole elixir-LS is being loaded instead? I had a similar issue related to https://github.com/elixir-lsp/vscode-elixir-ls/issues/63 (I haven't tested the fix yet, but 0.3.2 tag with 045875abef357b0088b90acbde802006b50d4449 applied works fine on my machine)

Yes that is possible, I will double check in a bit.
On Sun, Apr 5, 2020, 9:53 AM Łukasz Samson<EMAIL_ADDRESS>wrote:

That's strange as elixir_sense
master@f89444dd713520acb5d97a98b6d24386c04b9ae8 returns 3-element tuple
and the updated code in module_line/1 in #180
https://github.com/elixir-lsp/elixir-ls/pull/180 matches on that
3-element tuple.
Could it be that older version of ElixirSense.Core.Normalized.Code or the
whole elixir-LS is being loaded instead? I had a similar issue related to
elixir-lsp/vscode-elixir-ls#63
https://github.com/elixir-lsp/vscode-elixir-ls/issues/63 (I haven't
tested the fix yet, but 0.3.2 tag with
045875abef357b0088b90acbde802006b50d4449 applied works fine on my machine)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/elixir-lsp/elixir-ls/issues/184#issuecomment-609472698,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAACN5KSDEEKGS3NI6VTGQDRLDOSZANCNFSM4MBGUETA
.

Yeah you were correct. I need to remember that when you're working on ElixirLS locally all the files that you are editing are replacing the modules in the version of ElixirLS that you're running as well.


How stop/hide/delete dialog/widget in telegram chat

Create and show dialog with method "start". After some action i want to hide/delete my window with const ans buttons. How can i do it?

This can only be done manually because aiogram-dialog does not support it due to Telegram's restrictions (2 days to delete message).
You can override the methods in DialogManager or MessageManager, but I am unable to provide any further assistance.

but simple msg easy to del: msg.delete() may ba i am not understand what is widget

One window represents one message in a Telegram chat.
The message is composed of widgets, where a window acts as a container for widgets. Widgets are designed for reuse and are responsible for specific parts of the message, such as StaticMedia for videos or photos, and Const for static text. Button represents a single inline button.
To hide a widget, it can be assigned an argument when. For example, Button(..., when=F["is_admin"]) would show the button only if the user is an admin.

sorry for poor English

yes, i thought about when, but have not yet figured out how to implement dynamically when=True/False e.g. in response to a button click

Или как сделать динамическое переключение when в одном окне при каком либо событии

Message, showing Dialog automatically refreshes after every processed event. when condition is checked again on every updated. So the only thing you need is to provide actual data from your getter function

https://aiogram-dialog.readthedocs.io/en/2.0.0/widgets/hiding/index.html


TCP Modbus Client

Thank you for your library but I couldn't see Client in the linrary, I wish it has client

I tried with many library I think yours are free for error only:-) The others have more problems.


Twitter account updates

[ ] Please update https://twitter.com/AkkaDotNET profile's URL to getakka.net
[ ] Finish the DotNetFiddle email acceptance / confirmation

Done and Done


WIP Feature/arrayvalidators

This is a Draft-PR, because i wanted to fix #251, but noticed https://github.com/Automattic/mongoose/issues/8012

Updates on the mongoose Issue: the issue should get fixed with<EMAIL_ADDRESS>

I will close this and reopen in hasezoey/typegoose, when<EMAIL_ADDRESS>finally releases (currently over 7 days due)


How to Extract Zip files

Hello,
Please how do i extract zip files in the file manager aftter uploading my file ??
i cant seem to find an uncompress or extract button

There isn't one, use system commands to extract the zip file: unzip file.zip -d destination_folder
Maybe we'll add an archive extract feature in the future.


kernel: fix race condition in sys_clock_announce()

Fixes a potential subtle race condition in sys_clock_announce() on
SMP systems by changing where in the loop announce_remaining is
updated. Updating it after the loop has re-acquired the spinlock
closes a gap that could have allowed multiple cores to be executing
that loop simultaneously.
Signed-off-by: Peter Mitsis<EMAIL_ADDRESS>

Most of the time, I do not see this being an issue. However, I do see a path where we can have two cores enter that while-loop at the same time. Here's how ...

An interrupt is delivered to all cores.
Core 0 is the first to get in to that loop.
Core 1 is delayed somewhat in servicing the timer interrupt (let us say it had interrupts locked)
Core 0 hits the original announce_remaining -= dt line and updates it to 0, releases the spinlock and invokes the callback.
Meanwhile core 1 finally has a chance to service its timer interrupt. It gets spinlock. Finds out that announce_remaining is 0, so it does not bail early, AND enough time had passed that it has ticks to deliver. It thereby sets announce_remaining to a non-zero value.
Core 1 can then enter the loop. Core 0 has not yet left the loop. announce_remaining is non-zero. We thus have two cores processing the loop which from the perspective of the application can lead to an apparent out of order processing of the callbacks (something that was previously identified in a separate commit as wrong).

Digging into these failures, I see that the proposed change changes more than I anticipated as announce_remaining is serving more than one purpose.

Ah, OK, I get it.  But I actually liked your first version better.  The check for announce_remaining in the elapsed() computation is to prevent time checked during the execution of a handler from aliasing forward due to real time (i.e. force the handlers to "freeze" at the expected time until they exit).  And that was subject to exactly the same bug you fixed: the use of real time in elapsed() would be uncorked for the last timeout executed, which wasn't intended.

The the first version it shall be. :)


GitHub Release Action Fixes

This fixes a few issues that were discovered in the CodeFlare 0.0.5 release

Change version tag input to require v as part of the tag for consistency
Tag image as stable, not latest. We have switched over to using podman as well
Update github release step to include release notes
Move github tag + release step to end

@MichaelClifford @Maxusmusti can I get eyes on this PR?


Bit Shift Text Data

When you hexdump the content of the file, the message is clearly visible. This is less than ideal, since it is easily uncovered by anyone who can view the byte content of the file.
To make it more challenging to find the message, we should bit shift the message by a number of bits before we insert it into the file. This will hopefully garble the message enough that it won't appear like plain text.
To make it even harder, we could bit shift the message by a random number between 1-7, and then start the message with a nonce character that we can use to figure out how many bits the message was shifted by.

Use --obfuscate as the option to shift.

If we add the option to embed files, we probably shouldn't allow --obfuscate with --file. Bit shifting an entire file would be a cumbersome computation.


Kp nucleus cyber rename

Fixes #
Proposed Changes

This is an update to an existing solution. So any changes made should be a version increment.

ny changes made should be a version increment.

Please check the PR validations.

@NikTripathi , Looks like KqlValidations is failing which was passed before and I didn't have change anything except logo.
Looks like something has been changed on kqlValidationTest. Can you please tell me do I need to investigate on my side or something is broken on your side.

@K-Patel-NC KqlValidations is failing from our side. We are working to get it fixed. No need to investigate on your side.


Support IE11

Hi @justin-chu,
First of all great lib, with clean API Doc.
Are you planning to support IE 11?
Do you have any temporary solution/suggestion like polyfill or something else?
Thanks.

Hi @savkelita, thanks for using this library! Unfortunately there are no solutions at the moment, but I will be working on supporting IE 11 in the near future.


Admin/CMS Controllers use permit! instead of whitelisting params

Admin::Cms::FilesController, LayoutsController, PagesController, and SitesController use permit! instead of whitelisting allowed parameters with permit. These issues are flagged by running the brakeman gem against a project with Comfy as an engine. An example of a fix for the FilesController method on line 113 is as follows:
params.fetch(:file, {}).permit!

to
params.fetch(:file, {}).permit(:label, :description, :file)

Yeap. I'm aware of that. Thinking is that only admins are allowed into CMS admin area. So it doesn't make sense to restrict params. Also because you can extend CMS models / forms with new fields, it's going to be annoying to configure controllers.


PyQuante Driver Update

Summary
This aligns the PyQuanteDriver with the PySCFDriver.
Details and comments
Part of #166

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

142 of 179 (79.33%)  changed or added relevant lines in 4 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.007%) to 82.248%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit_nature/drivers/second_quantization/pyquanted/pyquantedriver.py
138
175
78.86%

Files with Coverage Reduction
New Missed Lines
%

qiskit_nature/properties/second_quantization/electronic/dipole_moment.py
1
92.86%

Totals

Change from base Build<PHONE_NUMBER>:
0.007%

Covered Lines:
8321

Relevant Lines:
10117

💛  - Coveralls

As I think I mentioned with pyscf refactor we ended up going from a class that was the driver the user interacted with plus one that did the behind the scenes work to get the integrals etc, and create the return now all in a single larger file. It just feels less modular having it all now together - as well since part of the refactor's goal too is to allow custom replacement of the computation. Maybe this is how it has to be now as its harder to separate concerns into different modules as before.

It just feels less modular having it all now together - as well since part of the refactor's goal too is to allow custom replacement of the computation.

Yes you are right about this. The new approach does indeed result in larger classes overall but it has certain benefits:

the behavior is split more logically into actual computation and result construction
the behavior can be modified by a subclass (important especially in the context of #26) without duplicating major parts of the code

The disadvantage is indeed larger files. I guess in theory we could extract these methods into a separate module and then plug them into the class but I do not think that this is worthwhile.

The disadvantage is indeed larger files. I guess in theory we could extract these methods into a separate module and then plug them into the class but I do not think that this is worthwhile.

Ok, but I will note that you cite this as an advantage

the behavior is split more logically into actual computation and result construction

which is not reflected in the module design since its all in one file. Maybe splitting it does not allow the easy sub-classing of the driver as you intend. Either way I'll not say more, it obviously works as-is, but as you can tell I am not fully comfortable with it, though I think it can be approved as-is, since this is how the pyscf one is too.

Please Let me know when a DFT Quantum Code is available for distribution.
Thanks.
Dr. Henry Makowitz, PhD


Bump compat for NonconvexCore

This causes version conflict with other Nonconvex* packages if NonconvexCore is updated

Thanks @Vaibhavdixit02 !

Well you had #4 I didn't see that!


update Entware mipsel

Entware-ng and Entware-3x = Entware
https://github.com/Entware/Entware
arm_now resize 2G
arm_now start mips32el

install
wget -O - http://bin.entware.net/mipselsf-k3.4/installer/generic.sh | /bin/sh
and ...
bug fix
busybox --install -s /bin
or
rm -f /opt/bin/wget
ln -s /bin/busybox /opt/bin/wget

opkg install gcc
Installing gcc (6.3.0-1b) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/gcc_6.3.0-1b_mipsel-3.4.ipk

https://github.com/Entware/Entware/wiki/Using-GCC-for-native-compilation
wget -qO- http://bin.entware.net/mipselsf-k3.4/include/include.tar.gz | tar xvz -C /opt/include
install local
http://bin.entware.net/mipselsf-k3.4
wget http://bin.entware.net/mipselsf-k3.4/gcc_6.3.0-1b_mipsel-3.4.ipk
opkg install http://.../name.ipk

sorry for the delay, you are amazing.
I'll have to merge this thx for giving me work haha, damn it

I did you steps you showed and this is what happened for me.
# gcc
/opt/lib/gcc/mipsel-openwrt-linux-gnu/6.3.0/crt1.o: In function `__start':
(.text+0xc): undefined reference to `main'
/opt/lib/gcc/mipsel-openwrt-linux-gnu/6.3.0/crt1.o: In function `__start':
(.text+0x10): undefined reference to `main'
collect2: error: ld returned 1 exit status

Did you had the same?


Several upgrades and improvements to CI

Looking at #217 I noticed that there was no info on the PR about Travis builds and the results of tests. I think that's because we're still on the (now deprecated) travis-ci.org, instead of the newer travis-ci.com.
I fixed that, plus a few other old shortcomings:

travis-ci.org → travis-ci.com
On Travis, build with latest Ubuntu (Focal)
On Travis, build with both Node.js 16 & 18, and latest npm
Use npm ci instead of npm i; add the build step to the CI cycle, too
Specify these new Node.js & npm requirements in README and enforce them in field engines of package.json
Rebuild lock file with modern npm ("lockfileVersion": 2)
Move default branch to master
Upgrade all upgradeable devDependencies

After merging this, I'd move the default branch here from gh-pages to master (the only reason it was gh-pages was that at the time that was the only branch that GH Pages was able to serve, but that has changed now).

wave @tripu I might be missing something but should Travis be running against this branch? I don't see the status of tests against the PR.

I set up the Travis config so that only master is built. To save resources and avoid builds in all branches. But we can remove those two lines and have builds of everything, that's fine by me!

Thank you, @tristen! :partying_face:


How to use DRAWIO_CONFIG variable?

Preflight Checklist

[X] I agree to follow the Code of Conduct that this project adheres to.
[X] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

Describe the bug
I would like to add a custom color palette using global configuration variable DRAWIO_CONFIG. I searched a while to know about this configuration in source code and issues, but in vain. No documentation. I don't know what value to put there. I tried these values in PreConfig.js:
window.DRAWIO_CONFIG={"defaultColors": [
"000000",
"595959",
"8F8F8F",
"D6D6D6"]
}   --> not working
window.DRAWIO_CONFIG='000000 595959 8F8F8F' --> Not working
Could you please add some details about DRAWIO_CONFIG and type of value expected ?
To Reproduce
Steps to reproduce the behavior:

Go to Style
Check for the added the color
No new colors are added

Expected behavior
New colors shoud be added
draw.io version (In the Help->About menu of the draw.io editor):

draw.io version [e.g. 14.2.7]

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome]
Version [e.g. 22]

Additional context
I know that we can set locally using Extras-->Configuration-->JSON. It works well. But my aim is to set globally for our SaaS instance.

Same issue here using VSCode hediet.vscode-drawio integration.
The pushed config is working on the online config, and Linux app when set using the interface

Hi,
these articles might help you:
https://desk.draw.io/support/solutions/articles/16000058316-configure-the-diagrams-net-and-draw-io-editor
https://drawio-app.com/customise-default-colours-fonts-styles-and-the-draw-io-ui-in-confluence-cloud/
Regards,

Hello @mararad I know these articles, these explains on how to configure custom colors/styles via graphical interface and is applied locally to the user who configured. What I want to achieve is to apply custom colors/styles globally by using DRAWIO_CONFIG. I tried different variations json/xml to pass value in DRAWIO_CONFIG as described here https://github.com/jgraph/drawio/blob/master/src/main/webapp/js/diagramly/App.js#L1090
Could you please suggest me the format of value accepted by DRAWIO_CONFIG ?

The correct format JSON, eg. window.DRAWIO_CONFIG= {"gridSteps": 10}. Is PreConfig.js loaded? If yes, check if App.js line 1090 is reached.

Hello @alderg yes, Preconfig.js is loaded correctly
Init PreConfig.js
window.DRAWIO_CONFIG = {"defaultColors":["000000","595959","8F8F8F"]};

But no changes, the custom color is not taken into account. How to check line 1090 is reached ? I tried with console.log, no log message

It depends on your environmnt. If you are loading App.js put a breakpoint on that line. If you are loading app.min.js, you should put a breakpoint on Editor.configure via the developer console in your browser.

Just to be sure, you are expecting to see this in the color dialog?

yes that's what I expected.
I found out the error while debugging. JSON string is not well formatted even I used online formatter :( Due to this, App.js is unable to parse and apply it. After applying well formatted JSON string, it works well.
Thanks a lot @alderg 👍

@sag1 can you post your example ?

@CvH here is an example:
window.DRAWIO_CONFIG = {"defaultColorSchemes":[[{"fill":"#000000","stroke":"none"},{"fill":"#595959","stroke":"none"},{"fill":"#8F8F8F","stroke":"none"},{"fill":"#D6D6D6","stroke":"none"},{"fill":"#C19372","stroke":"none"},{"fill":"#F4CFB2","stroke":"none"},{"fill":"#FFF6B6","stroke":"none"},{"fill":"#FFE8F7","stroke":"none"}]],"presetColors":["000000","595959","8F8F8F","D6D6D6",],"defaultColors":["000000","595959","8F8F8F","D6D6D6","FFFFFF","FF7900","4BB4E6","50BE87","FFF6B6","FFE8F7"]};


how to extract the catalogue？

I want to extract catalogue, not outline，I know there is a function that can extract the outline, but I couldn't find the function to extract the catalogue。

What do you actually mean by "catalogue"? A link to the relevant section of the PDF specification would be helpful here, since this issue is a bit too light on actionable details.
If you're referring to the /Catalog object in a PDF document then that's a lower-level object that we cannot expose directly, given its contents and that all parsing is done in a worker-thread.

What do you actually mean by "catalogue"? A link to the relevant section of the PDF specification would be helpful here, since this issue is a bit too light on actionable details.
If you're referring to the /Catalog object in a PDF document then that's a lower-level structure that we cannot expose directly, given its contents and that all parsing is done in a worker-thread.

I'm very sorry that I didn't clarify my question clearly in my first inquiry.
I made a simple GIF to illustrate my problem.

What I mean is this kind of directory. I'm not sure if you provide an API function to obtain such a directory and implement the functionality to navigate to the corresponding location upon clicking?
Could you please let me know if you have the corresponding API function? Ideally, I apologize for my poor English.

Even looking at your GIF, it's unfortunately not entirely clear exactly what you mean.
If you're referring to a "table of contents" found within the pages of a specific PDF document, that's just a a bunch of text with separate LinkAnnotations and not actually a data-structure defined in the PDF specification.
Exactly how this is implemented in an individual PDF document usually varies a fair bit, and there's consequently no way to (easily) access such data unfortunately.


Enable compression for API Responses

See documentation: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-gzip-compression-decompression.html
Once we have benchmarking working (https://github.com/podaac/hydrocron/issues/22) we can experiment with a few different values for minimumCompressionSize to see what a reasonable value might be.

I have enabled payload compression  for the API in the SIT environment but I don't think it is returning a compressed response.
I have tried:

Enabling Content-Encoding and setting the minimum-compression-size to 0.
Updated the GET method to set a header mapping in the integration response for the 200 response for method.response.header.Access-Control-Allow-Headers to 'Content-Type,Accept-Encoding' and added the 200 response header Access-Control-Allow-Headers in the method response.
Updated the OPTIONS integration response and method response with the same GET headers as above.

I don't think I need to do the last two bullets for compression to work but thought I would try it.
According to this documentation, I need to send the header Accept-Encoding:gzip with the request to receive a GZIP-encoded payload. I believe all of the other conditions are satisfied.
I think that the Python requests library automatically decodes compressed responses so I tried the following curl request:
curl -vX --header 'Accept-encoding: gzip' --location --request GET 'https://soto.podaac.sit.earthdatacloud.nasa.gov/hydrocron/v1/timeseries?feature=Reach&feature_id=63470800171&start_time=2024-02-01T00:00:00%2b00:00&end_time=2024-10-30T00:00:00%2b00:00&output=csv&fields=reach_id,time_str,wse'

Which I think would return a GZIP-encoded response as I did not specify the --compressed argument but still no luck. @frankinspace - Any thoughts on what to try next?

@nikki-t I just looked in SIT and 'Content encoding' was inactive for the hydrocron API gateway. Perhaps your changes got overridden by another deployment? I manually updated the api to enable content encoding and set the compression size to 20480 Bytes. When I run the following request in PostMan it seems like the response is being compressed.
curl --location 'https://soto.podaac.sit.earthdatacloud.nasa.gov/hydrocron/v1/timeseries?feature=Reach&feature_id=72390300011&start_time=2024-01-01T00%3A00%3A00Z&end_time=2024-10-30T00%3A00%3A00Z&output=geojson&fields=reach_id%2Ctime_str%2Cwse%2Cgeometry'

When I send that request in PostMan I am able to view the 'Content-Encoding' header on the response and see that it is set to 'gzip'. When I remove the 'Accept-Encoding' header from my request (PostMan defaults to 'gzip, deflate, br'), the 'Content-Encoding' header is not returned on the response.
It seems to be behaving as expected when content encoding is enabled

@frankinspace - Yes I deployed develop to SIT to work on another issue which overwrote the compression changes I made. It's possible I was overthinking it and all of the testing I did was automatically decompressing the response!
I can update the Terraform to enable compression, do you want to start with a compression threshold of 20480 Bytes?

Sure, that particular query results in a response that is about 27kb so I just picked 20kb so I could see if it worked or not. I did a bit of googling on what a suggested minimum-compression-size is and there were suggestions that all seemed to land in the 10's of kb or less ballpark. We probably need to do some testing if we want to come up with a more accurate threshold but starting with 20kb seems fine.


Go SDK: NullableString awkwardness

The way that the Go SDK handles optional strings is somewhat awkward, and while this ship may have sailed, @tasn asked me to provide some feedback here.
First of all, I totally understand that there's a need for a NullableString type of some kind. While idiomatic Go loves to use "zero values" including the empty string, other languages and APIs don't always work well with that, and so a string type that can also represent unset/JSON null is necessary.
But the implementation and use of NullableString in the Go SDK is awkward. Perhaps the most awkward aspect is that the helper function svix.NullableString a) takes a *string rather than a string, and b) returns not an openapi.NullableString but a *openapi.NullableString.
That means that the only way to create an openapi.NullableString from a static string literal in a single line, is the rather unwieldy *svix.NullableString(svix.String("mystring")).
The problem is compounded by the fact that openapi.NullableString is a private type, and as a result it is impossible to write 3rd-party code that manipulates it directly:
// This will not compile because the openapi package is internal.
func nullableString(s string) openapi.NullableString {
	return *svix.NullableString(&s)
}

What's particularly odd about the choice to return a pointer from svix.NullableString is that the data types that need nullable strings only ever want an openapi.NullableString, not a pointer to one, which leads to code like:
appIn := svix.ApplicationIn{
	...
	Uid: *svix.NullableString(svix.String("myuid"))
}

Suggested alternative
I think a much more Go-friendly implementation here would be to make the type something like database/sql's NullString (https://pkg.go.dev/database/sql#NullString).
package types

type NullableString {
	String string
	Valid bool
}

and then define your helper function as
package svix

func NullableString(s string) types.NullableString {
	return types.NullableString{
		String: s,
		Valid: true,
	}
}

That creates a situation where the zero-valued types.NullableString is null, because the zero value of Valid is false:
type ApplicationIn struct {
	Uid types.NullableString
}

app := ApplicationIn{}

fmt.Printf("%v\n", app.Uid.Valid) // Prints false

And constructing one to pass into a type is equally straightforward:
app := ApplicationIn{
	Uid: NullableString("my-app-id"),
}

fmt.Printf("%v\n", app.Uid.Valid) // Prints true

Here's another example to play around with: https://go.dev/play/p/jYGq7qCCC11

How is this issue progressing? It is in working stage or still in proposal?
And I am playing around find this solution can also pass the compiler (but we need to change version in go.mod to > =1.18)
type Nullable[T any] struct {
	V     T
	Valid bool
}

type NullableString Nullable[*string]

func NewNullableString(s *string) NullableString {
	if s == nil {
		return NullableString{V: s, Valid: false}
	}
	return NullableString{V: s, Valid: true}
}

Sorry, we didn't really get to it yet, but @svix-jplatte added a label a couple of weeks ago to make sure we don't miss it and fix it soon!

I think @svix-onelson is working on upgrading the OpenAPI generator which will also fix this.

@svix-onelson, is this fixed?

This doesn't look so different with the latest generator.
I think what I'd like to do for this is to expose/re-export openapi.NullableString and making some changes to the public API to make construction more convenient as suggested by the OP.
I'd like to avoid adding a new type (though generics will now be on the table since we're targeting go 1.20) as described in https://github.com/svix/svix-webhooks/issues/1198#issuecomment-2157101332. The rationale being I think we'd need to template around set/unset checks in the rest of the codegen output to account for the new type.
It could be possible to do this cleanly, but the former would definitely be more straightforward.


Soletta meets JS

This series introduce Javascript node using Duktape[1] as third party library,
allowing the usage of Javascript language to create new and customizable node types.
The aim of this series is to introduce an initial support for Javascript nodes, there is
other features that we'll add later on.
A JS node type is specified with one object containing each input and output port
declarations (name and type) and its callback functions that will be trigged on the
occurrence of certain events like input/output ports processes, open/close
processes, so forth and so on.

There are a few things here and there, but overall I like where this is going. The samples are pretty cool.

sending v2


possible memory corruption with many LPs on one process

If I build ROSS and my model using gcc's address sanitizer and then run a model with 1920 LPs on a single MPI process, I hit the following crash:
==17983==ERROR: AddressSanitizer: unknown-crash on address 0x7ffff36b67d0 at pc 0x488b5e bp 0x7fffffffd760 sp 0x7fffffffd750
READ of size 56 at 0x7ffff36b67d0 thread T0
#0 0x488b5d in late_sanity_check /home/pcarns/working/src/ROSS/core/tw-setup.c:277
#1 0x488cf7 in tw_run /home/pcarns/working/src/ROSS/core/tw-setup.c:304
#2 0x404ebd in main ../src/models/storage/triton/triton-fault-sim.c:209
#3 0x7ffff6425a3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)
#4 0x404558 in _start (/home/pcarns/working/src/codes-triton/build/src/models/storage/triton/triton-fault-sim+0x404558)
0x7ffff36b6800 is located 0 bytes to the right of 524288-byte region [0x7ffff3636800,0x7ffff36b6800)
allocated by thread T0 here:
#0 0x7ffff6f54827 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.1+0x57827)
#1 0x48ab0c in my_malloc /home/pcarns/working/src/ROSS/core/tw-util.c:229
#2 0x48a7aa in pool_alloc /home/pcarns/working/src/ROSS/core/tw-util.c:161
#3 0x48a9fe in tw_calloc /home/pcarns/working/src/ROSS/core/tw-util.c:208
#4 0x479800 in init_q /home/pcarns/working/src/ROSS/core/network-mpi.c:82
#5 0x479cdf in tw_net_start /home/pcarns/working/src/ROSS/core/network-mpi.c:143
#6 0x4879f2 in tw_init /home/pcarns/working/src/ROSS/core/tw-setup.c:72
#7 0x404b95 in main ../src/models/storage/triton/triton-fault-sim.c:148
#8 0x7ffff6425a3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)
If I look at it in gdb I see this:
#7  0x0000000000488b5e in late_sanity_check ()
at /home/pcarns/working/src/ROSS/core/tw-setup.c:277
277	        if (!memcmp(&lp->type, &null_type, sizeof(null_type))) {
(gdb) print i
$1 = 1911
(gdb) print &lp->type
$2 = (tw_lptype **) 0x7ffff36b67d0
I apologize that I don't have a concrete test case, but maybe someone happens to know why it looks like I'm running off the end of a memory allocation on lp->type on the 1911'th iteration?

Confirmed with airport model.  The quick hack way to trigger this is to modify line airport.c:192 from this:
nlp_per_pe /= (tw_nnodes() * g_tw_npe);
to this:
nlp_per_pe = 1920;
(I understand that hack probably terribly breaks the model in the big picture, I just wanted to see if it triggered the same issue in late_sanity_check()).  It appears to:
==19418==ERROR: AddressSanitizer: unknown-crash on address 0x7fb28268e7d0 at pc 0x4190d0 bp 0x7ffffb812170 sp 0x7ffffb812160
READ of size 56 at 0x7fb28268e7d0 thread T0
#0 0x4190cf in late_sanity_check /home/pcarns/working/src/ROSS/core/tw-setup.c:277
#1 0x419269 in tw_run /home/pcarns/working/src/ROSS/core/tw-setup.c:304
#2 0x4050c5 in main /home/pcarns/working/src/ROSS/models/ROSS-Models/airport/airport.c:203
#3 0x7fb2853fda3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)
#4 0x403738 in _start (/home/pcarns/working/src/ROSS/models/ROSS-Models/airport/airport+0x403738)
0x7fb28268e800 is located 0 bytes to the right of 524288-byte region [0x7fb28260e800,0x7fb28268e800)
allocated by thread T0 here:
#0 0x7fb285d24827 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.1+0x57827)
#1 0x41b07e in my_malloc /home/pcarns/working/src/ROSS/core/tw-util.c:229
#2 0x41ad1c in pool_alloc /home/pcarns/working/src/ROSS/core/tw-util.c:161
#3 0x41af70 in tw_calloc /home/pcarns/working/src/ROSS/core/tw-util.c:208
#4 0x409d72 in init_q /home/pcarns/working/src/ROSS/core/network-mpi.c:82
#5 0x40a251 in tw_net_start /home/pcarns/working/src/ROSS/core/network-mpi.c:143
#6 0x417f64 in tw_init /home/pcarns/working/src/ROSS/core/tw-setup.c:72
#7 0x404f5f in main /home/pcarns/working/src/ROSS/models/ROSS-Models/airport/airport.c:190
#8 0x7fb2853fda3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)

are you sure this isn't an issue with AddressSanitizer or your local setup?
I can run the airport model with over 9000 LPs on a single core (sequential mode) on my machine. When I finally allocate too many LPs, my program fails somewhere else.

It turns out that the number of LPs was a red herring; it was really just luck of the draw for that specific case to cause memcmp() to look at memory that AddressSanitizer would complain about.  AddressSanitizer was right but my ability to draw conclusions from its output was not.
Fix is a single character change, but I'm doing a pull request to get more practice doing things the github way.


Extension issue

Hi,
This extension has become unresponsive and basically ground VS Code to a halt. I'm sure the extension users would be grateful if you would please look into it.
Here are the settings generated from the command palette using: Developer: Show Running Extensions

Issue Type: Bug
Extension Name: html-css-class-completion
Extension Version: 1.19.0
OS Version: Darwin x64 19.6.0
VSCode version: 1.47.3

:warning: We have written the needed data into your clipboard. Please paste! :warning:
{
	"messages": [],
	"activationTimes": {
		"codeLoadingTime": 508,
		"activateCallTime": 4,
		"activateResolvedTime": 31095,
		"activationReason": {
			"startup": true,
			"extensionId": {
				"value": "Zignd.html-css-class-completion",
				"_lower": "zignd.html-css-class-completion"
			},
			"activationEvent": "*"
		}
	},
	"runtimeErrors": []
}

Thank you!

Already reported here: https://github.com/zignd/HTML-CSS-Class-Completion/issues/155


Command queue

Add queue for LED command.

This will make RTOS save from race-conditions
More robust design in case of blinking is in progress, simple led toggle will be ignored

This issue has no sense... Putting command into queus will slow HMI....


[Bug] [Branch View] Wrong link for cross PR

Gitea Version: 1.10.0+dev-289-g8b54b58bc (gitea.com)
How to reproduce:

forc a project
make a branch and push some commits to it
make a PR to the original project from this branch
-> 4. go to branch view at the forge repo, you can see the PR Nubers but you cant open them corectly

Tested Repo: https://gitea.com/6543/GitNex/branches
-> gitea missed that the pull request is on a other repo than the own branch
(instead of https://gitea.com/mmarif/GitNex/pulls/70 you get to https://gitea.com/6543/GitNex/pulls/70)

Is this still a problem?

If I understand this correctly, it's fixed by #8670

I'll check ..

@lunny YES
@guillep2k NO
this is more a frontend issue

Stil here


More info needed regarding CLI installation

The CLI installation instructions do not discuss which environment you need to install into. For example, if I'm developing in Windows (using Visual Studio) but I'm targeting Linux containers, do I install the CLI on my Windows development system or on my target Linux containers, or both?

For WSL this is a linux install on Windows


Add in additional info about using intra-process comms.

Signed-off-by: Chris Lalancette<EMAIL_ADDRESS>The main goal of this is to show off how to enable intra-process communication.  Along the way, I ended up writing a small tutorial on how to invoke ComposableNodes with the launch system, since we didn't have that.  I also cleaned up the Intra-Process-Communication tutorial a bit.  In particular, I removed a bunch of the "speculative" information at the end; that doesn't seem appropriate for a Tutorial, even if some of the stuff listed in there has been done in the meantime.

@Mergifyio backport galactic foxy


[CREATE_COMPONENT_FAILURE] Used too broadly and misleading?

We set out to create a Dapr infrastructure that uses pluggable components that are managed as docker images for deployment to a team.
Running the pluggables on the Linux host alongside Dapr was quite easy, initially. As soon as we started publishing the pluggables as docker images, we would encounter this error message.
[CREATE_COMPONENT_FAILURE]
The verbiage of this message and the ensuing search results that it turns up largely suggest that indeed the component failed to create. So it is not running.
We sunk days into this and probably should have tried to curl the pluggable container earlier, but when we eventually did, we realized it was indeed running fine.
From here, it was rather apparent that it was a difference in communication or networking between Dapr and a Docker container as opposed to a natively hosted one. I'm sure that some of you probably already know what the problem is, but we did not yet. Our next search approach was "Dapr and Docker container networking". As far as I can tell, all of the documentation, samples, and examples of this currently focus on network host mode, port forwarding, etc. This is because of an assumption that the docker container would always contain the Dapr consuming app. Not the Dapr serving app (a pluggable component).
This is another impediment that was misleading and costly before we realized that one simple fact. We spent an inordinate amount of time on this as well.
Had Dapr originally found that an expected component did not provide an expected Unix socket (.sock file), and said so, we would have had this problem resolved within minutes. Honestly, had it not misdirected us and led us to believe that it was a pluggable runtime error, the Unix socket might have been fresh enough in our minds that we would've tried it much earlier. But the misdirections really ate our lunch.
I realize that pluggable components are still rather new, but I do hope that the above inverted dependency scenario will eventually be better covered in the docs. As I learn Dapr better, I might even be confident enough to contribute that.
But for the moment, I do believe that much pain and time can be saved for future Dapr customizing adopters if the unhappy paths that yield [CREATE_COMPONENT_FAILURE] be re-evaluated and provide messages that keep adopters on task. Thoughts?

Edit
For future readers, by the way, the solution was to create a new docker volume (examples in docker compose format)
volumes:
  dapr-sockets:

and then mount that volume on both your dapr run and your pluggable image services, pointing to the directory containing the socket
volumes:
      - dapr-sockets:/tmp/dapr-components-sockets:rw

But do NOT do a direct bind like this, because the socket will be occupied
volumes:
      - /tmp/dapr-components-sockets:/tmp/dapr-components-sockets

:rw will not help here
If you're not using docker compose, keep in mind that my above examples result in a docker run that calls dapr run, not the usual dapr run-only format.

Hi, @ryan-singleton. Sorry for the bad experience. Pluggable components has quite a few rough edges and its always great to hear about ways to improve it.
Just wondering, in the list below, what you think would be the most effective way to avoid this sort of issues for future developers:

Improving the error message that comes with CREATE_COMPONENT_FAILURE
Adding a section for Docker on https://docs.dapr.io/operations/components/pluggable-components-registration/ or on another page.
Improve the message regarding pluggable component discovery, which right now is a DEBUG and not an INFO level.. Also mention the directory in the log message.

For 1 the challenge I foresee is that, by the time we are processing a component spec, there isn't anything, no marker or configuration flag, that allows us to identify something as a pluggable component. When we see a request for a component we can't create, we don't know for sure if it was just a typo, a component that isn't available on a given Dapr version or a Pluggable component that wasn't discovered*.  Perhaps just saying something like You might have a typo in your component type or dapr couldn't discover the corresponding pluggable component. could address it but I don't know.
Improving documentation, as mentioned in 2, might be appropriate regardless but I wonder if this could have been the single thing that could have saved your time.
As for item 3, it could help if you happened to search for "pluggable" in the logs. And perhaps is the simplest thing we could do to avoid such issues in the future. It doesn't point you to the Docker shared volume directly but stating that no pluggable component was found in a given path might set you on the right track.
Thoughts?
* Pluggable components are discovered during initialization and registered. This takes place before we process the components specs for your dapr application.

Hello, and thank you for the thorough response.
For what it's worth, I did have the log level set to debug and I did see that it saw my component spec and was making an attempt to register it. But what happened next was where I got stuck in the mire.
The reality is that we devs are human and can get really stuck in an idea. And this may have been a "skill issue" as they say. Lol. I won't be hurt if that's the determination. But if you are open to some proposals, here are some.
[COMPONENT_REGISTRATION_FAILURE] The component specification may be incorrect or Dapr was unable to discover the component.
This would happen in an immediate sense and possibly prevent a developer from starting down the wrong track that I took.
In any case, I can say that if the Dapr documentation covered examples of pluggable components in other docker containers, my wild goose chase would have been short circuited because I can guarantee that I would have found that documentation fairly quickly and I would have re-routed.
So to me, the real resolution to this is probably that. Documentation. I am willing to write a rough draft of that documentation, if you would like. It is significantly fresh in my mind, lol.
Let me know if you are interested, I would be glad to contribute.


Doesnt work anymore (23 Dec 24)

It appear 2 buttons

any none of em shows gifs :(
Screencast from 2024-12-23 09-42-31.webm

Oh no 😢  What Browser/OS are you using? It is working from my end but I can take a look if I can replicate it!


Increase timeout in ember tests

no issue

increases individual test timeout from 5sec to 10sec

It seems Travis is occasionally very slow and will timeout on heavier acceptance tests resulting in random failures. Hopefully this will reduce the number of random test failures we see.

This PR hit the following error: just logging it here before restarting the build. Although the tests after the failed test timeout, I'm sure that's just a cascading test failure.
If the integration tests have some dependency on each other which causes cascading failures, perhaps it makes sense to add the bail flag so that mocha quits after a single failure?

ok 4 PhantomJS 1.9 - Acceptance: Settings - Navigation when logged in saves settings
not ok 5 PhantomJS 1.9 - Acceptance: Settings - Navigation when logged in clears unsaved settings when navigating away
---
message: >
Error: Assertion Failed: You have turned on testing mode, which disabled the run-loop's autorun.
You will need to wrap any code with asynchronous side-effects in a run (http://localhost:7357/assets/vendor.js:14819)

That's the failure I was hoping that this would fix so I think it points to a deeper issue somewhere. The particular test that is failing uses all the requisite async-aware helpers so I think there must be something within the app code that's causing it to break but only with certain timings 🤔
(unless 10 seconds is still not long enough for travis sometimes 😰)

We use 15secs as the timeout server-side :wink:

I've bumped it to 15 just to see if it makes any difference as I haven't been able to replicate locally at all. It's a little worrying if something takes ~1sec locally but >10sec on travis - have we ever determined what could cause some runs to be so slow?

On that last run before it was restarted there was a >4min (2x slower) deviation in overall test run time. To me that suggests if the random failures are caused by the big swings in travis performance then all we can do is increase the timeout and hope that some of the bigger first-render performance gains coming in ember help speed tests up further too?

I've seen those builds - every now and again one seems to take aaaaages, but I have absolutely no idea why :disappointed:


Add Model from MitochondrialRetrogradeSignal repository

https://github.com/stevengogogo/MitochondrialRetrogradeSignaling/tree/master/simulation_julia_rtgM4/Model

Done