Move from Lager to Logger

Codecov Report

Merging #55 into master will decrease coverage by 1.05%.
The diff coverage is 48.21%.

@@            Coverage Diff             @@
##           master      #55      +/-   ##
==========================================
- Coverage   82.34%   81.29%   -1.06%
==========================================
  Files          29       29
  Lines        1711     1711
==========================================
- Hits         1409     1391      -18
- Misses        302      320      +18

Impacted Files
Coverage Δ

src/lashup_gm_probe.erl
82.97% <0%> (ø)
:arrow_up:

src/lashup_gm_fanout.erl
89.65% <0%> (ø)
:arrow_up:

src/lashup_gm_mc.erl
76.19% <0%> (ø)
:arrow_up:

src/lashup_kv.erl
79.13% <0%> (ø)
:arrow_up:

src/lashup_kv_sync_tx_fsm.erl
92.3% <100%> (+1.53%)
:arrow_up:

src/lashup_gm_route.erl
88.2% <100%> (ø)
:arrow_up:

src/lashup_kv_sync_rx_fsm.erl
87.87% <100%> (ø)
:arrow_up:

src/lashup_hyparview_events.erl
80% <100%> (ø)
:arrow_up:

src/lashup_gm.erl
81.5% <20%> (ø)
:arrow_up:

src/lashup_hyparview_ping_handler.erl
80.59% <50%> (ø)
:arrow_up:

... and 4 more

Continue to review full report at Codecov.

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

@ichernetsky rebar3 eunit has started printing a log of error messages, is it intentional? could you please fix it?
https://circleci.com/gh/dcos/lashup/381


call websocketDidConnect delegate after connected is set to prevent race condition

Attempting to write to the socket during websocketDidConnect fails silently sometimes because connected is not set until after processHTTP returns.  The isConnected guard in dequeueWrite can execute before connected is set to true.
This change ensures that connected is set before calling the delegate.

I think this will fix #147, correct?

my PR is similar, but does not address the case in #147.  My PR is about websocketDidConnect being called after connected is set.  looks like the solution to #147 might be similar, but there are a bunch more cases where doDisconnect is called, so looks more complicated.

Ok cool. Thanks!


Ability to replace itself

I have been using taskipy in conjunction with uv uv run and it has been an awesome addition to the family.
With the exception that uv will run sync dependencies implicitly and may cause it to try to update taskipy inside taskipy. I can also write an explicit uv sync command to be more reproducible:
[tool.taskipy.tasks]
update = "uv sync"

Now if on my dependencies I change say taskipy from "taskipy==1.13.0" to "taskipy==1.14.0" and run task update I will get the following error on Windows:
Prepared 1 package in 758ms
error: failed to remove file `C:\my\path\.venv\Lib\site-packages\..\..\Scripts\task.exe`
  Caused by: Access is denied. (os error 5)

Since taskipy is running from that exe file to run uv, it is unable to update taskipy. Sounds like a chicken-and-egg problem, but I believe it could be solved somehow by taskipy closing the file handle to its executable.
Notice this is not an uv only problem, but will happen with pip, poetry or anything else. Since uv run does sync dependencies, it is more common for the error to arise.

Huh, interesting. So if I understand correctly, taskipy running puts a lock on its executable, preventing it from being patched.
Sounds a very specific problem. Taskipy keeps running because it runs the task's shell as a subprocess. We cannot change this behavior because of how Taskipy works (e.g. pre and post hooks). Are you aware of any way to release the executable file without detaching from the process?


[HUDI-4824]RANGE Bucket index, base logic and test.

Change Logs
The rangeBucket is mainly used in the scenario of sync mysql tables to hudi in near real time, which avoids the disadvantage of the fixed number of buckets in simpleBucket.
Usually, in the mysql table, there is an auto-increment id primary key field. In the mysql cdc synchronization scenario, we can use the database name and table name as the partition field of hudi, and id as the primary key field of the hudi table，This can deal with sub-library and sub-table.
In order to reach better sync performance, we usually use bucket index, but if we use simple bucket index, because the number of buckets is fixed, it is difficult for us to determine a suitable number of buckets, and as the table grows, The previous number of buckets will no longer be appropriate.
So, I propose rangeBucekt, in the simpleBucket index, the bucket number is （hash % bucketNum）, and in rangetBucket, we will use （ id / fixedStep） to determine the bucket number, so that as the id grows，The number of buckets also increases. For example, if step = 10 is set, then, because the id is self-increasing, a bucket will be generated for every 10 pieces of data.
In the actual scenario, I set step=1,000,000, the usual size of each mysql record is similar, then the approximate size of each bucket will be 50M ~ 350M, which avoids the disadvantage of the fixed number of buckets in simpleBucket
Impact
Introduce a new index RANGE_BUCKET, people can ust it like following:
  option(HoodieIndexConfig.INDEX_TYPE.key, IndexType.BUCKET.name()).
  option(HoodieIndexConfig.BUCKET_INDEX_ENGINE_TYPE.key, "RANGE_BUCKET").
  option(HoodieIndexConfig.RANGE_BUCKET_STEP_SIZE.key, 2).
  option(HoodieLayoutConfig.LAYOUT_TYPE.key, "BUCKET").

Risk level: none | low | medium | high
low

I accidentally deleted my previous fork, so I opened a new PR, and modified the code according to the previous review requirements, please help me review it，thanks.
@danny0405 @YuweiXiao @xushiyan @alexeykudinkin

interesting index to support. thanks for the contribution.


Regarding License

Hi @HengyiWang, thanks for open source this impressive project.  I am interested in using your project for our research project, but I noticed that the repository currently lacks a clear license file. A license would provide guidance on how your project can be used, modified, or shared by others.
Would you consider adding a standard open-source license to your repository?

Have added it:)

Thanks Hengyi!


Jerked Arm movements  vs. roadmap

I managed to start the system based on a branch applying the ROS2 control and use MoveIt2 for planning the arm  movements but the result is very unsmooth movements (the whole tb3_om jerks when moves) .  I don’t know if this is due to some bugs/issues similar to (https://github.com/ROBOTIS-GIT/turtlebot3_manipulation/issues/55#issuecomment-1438289847)   or it is “by design” due to current implementation scope and the improvement is on the roadmap.  In other words is there a roadmap for this project and description of assumption/limitation assumed.
I’m new to robotics, but my understanding is that to have arm movement smooth, the joint_trajectory_controller may need to use not just “position” but also “velocity”  (and “acceleration”) . Only after that using MoveIt with plugins for trajectory smoothing  can result  with smoot robot movements.  I’m not sure if I correct understand this.
Anyway, is in the scope of this project to enable smoot control of the arm movement using ROS2 controls – or it is out -of scope.

@lmendyk  Sorry for late response. Could you share a video showing the issue you're experiencing with your robot's movements? It would help us better understand how the movements are not smooth and give us more insight into the problem you're encountering.


Link to SDK archive or update to newest version

The FBX-glTF readme asks for version 2015.1 of the FBX SDK, but links to http://www.autodesk.com/products/fbx/overview
The new default is 2016.1. The old 2015.1 version can be found here:
http://usa.autodesk.com/adsk/servlet/pc/item?siteID=123112&id=10775847

I can't found The old 2015.1 version of SDK. Can anybody help? I have tried with FBX SDK new version that is 2017 and with that version project gets built but throwing run time exception while calling function
// The next line will call the exporter
bRet = pExporter->Export(_scene);  // this throws an exception [Unhandled exception at 0x000007FED7F16341 (IO-glTF.dll) in glTF.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.]


Auto corrected by following Lint Ruby Style/SymbolArray

Auto corrected by following Lint Ruby Style/SymbolArray
Click here to configure it on awesomecode.io

Coverage remained the same at 78.476% when pulling 0d09c8be29e59e41586f5af1dbab301090ecc8a7 on awesomecode-lint-ruby-style-symbolarray-48441 into f4466d839cbd23d5753497d7d6b18d67c9c6f757 on master.


Sp3000 support

Support for Sofar ME 3000SP type of retrofit storage only inverter (tested on rebranded for Italy version, ZCS 3000SP)

Hi, just had mine installed, and re-used almost all of your code to support the 3000SP data message format.
Still fine tuning some of the fields, but I already added almost all of the ones displayed on the sofar cloud app


tour: tree.New(1) called twice produces two different trees

Context: https://tour.golang.org/concurrency/8
When attempting this exercise, I was unable to get the trees to compare as identical when calling Same(tree.New(1), tree.New(1))
The code for Tree, even when called with the same parameters, uses rand.Perm(10), which produces two different trees when called in succession.
To get my trees to compare I needed to use the following code
func main() {
tree1 := tree.New(1)
//tree2 := tree.New(2)
if (Same(tree1, tree1)) {
	fmt.Println("The trees are the same!")
} else {
	fmt.Println("The trees are different.")
}

}
Not a very enlightening test, but I am not sure how long it would take generating random trees until I got two identical trees.
To illustrate this point, the code below evaluates as different trees, even though tree1 and tree2 are generated using the same parameter.
func main() {
tree1 := tree.New(1)
tree2 := tree.New(1)
if (Same(tree1, tree2)) {
	fmt.Println("The trees are the same!")
} else {
	fmt.Println("The trees are different.")
}

}

Works as intended.

@NathanZook can you please explain your point of view ? Because I am also confused about this exercise.
It says that:
Same(tree.New(1), tree.New(1)) should return true, and Same(tree.New(1), tree.New(2)) should return false.
But following example shows that two trees generated in the proposed method are not the same:
package main

import (
	"fmt"

	"golang.org/x/tour/tree"
)

func Same(t1, t2 *tree.Tree) bool {
	fmt.Println(t1.Value, t2.Value)
	return t1.Value == t2.Value

}

func main() {
	fmt.Println(Same(tree.New(1), tree.New(1)))
}

The result is:
10 7
false

Does not matter if I run it on localhost or on https://tour.golang.org

It's a binary tree. The value at the root can be different even if the tree contains the same values. For example, take this two binary tree with values 1, 2, 3 in them:
    2
  /   \
 1     3

3
  \
    2
     \
      1

If you implement Same by looking at the root, they looks different. But the goal of the exercise is to decide whether the trees contains the same values. You'll need to walk them to find out.


LTS-13.11 is mutated back to ghc-8.6.3

https://github.com/commercialhaskell/lts-haskell/commit/ebafeb5402c9bb52bdf236b699490c28fb907972
So we can bump the snapshot for hie-8.6.3

We originally had 13.11, but it was wrong, so stepped back to 13.10. I think the stackage docs are incorrect.

Did you look at the linked commit? Snoyman changed GHC in 13.11 snapshot to be 8.6.3 from incorrect 8.6.4 some 10 days ago.

Sorry, was traveling, did not look in detail.  So I guess we can bump this next release?  I don't thing there is anything urgent in the one vs the other. Or is there?

So I guess we can bump this next release?

Yes

There isn't anything urgent


Birthday: Remove 'date' usage and calclulate date manually

Description
This PR removes all date usage from Neofetch.
This adds a new function called convert_time() which takes the date time-stamp (eg. 2016-12-06 16:32.00000) and converts it to (eg. Tue 06 Dec 2016 4:58 PM) using nothing but bash. This will allow us to use the same format for all OS since we no longer depend on date.
This PR also removes $birthday_shorthand, $birthday_format and $birthday_time.
Note: This was more of a test to see if this was possible, it probably won't be added to master.
Issues

None yet

TODO

[ ] Testing

[x] Linux | GNU | iOS
[ ] Windows
[ ] BSD
[ ] macOS
[ ] Haiku
[ ] Solaris

Output on macOS: Birthday: Sat 2016 Sep 9:14 PM

This is probably due to the macOS substitutions. What does this output?
ls -lUT /var/log/install.log | awk '{printf $6 " " $7 " " $9 " " $8}'

$ ls -lUT /var/log/install.log | awk '{printf $6 " " $7 " " $9 " " $8}'
21 Sep 2016 21:14:48`

That's already really close to what we calculate. This is the output on Linux:
ls -alct --full-time / | awk '/lost\+found|private/ {printf  $6 " " $7}'
2016-12-06 16:58:58.000000000

It's because of the macOS ls vs GNU coreutils ls

Yup.
macOS and BSD output: 21 Sep 2016 21:14:48
Linux and * output: 2016-12-06 16:58:58.000000000

So maybe just the time portion needs to be changed for macOS and BSD?

Yeah, I can probably make the function work with both.


SITL tailsitter does not found /lpe/tailsitter file

hi guys, i  the same problem liske this http://discuss.px4.io/t/sitl-tailsitter-does-not-found-lpe-tailsitter-file/1160,anyone has good ideas?please tell me,thanks a lot.

We use EKF2 by default now.


UI Modernization: Add Footer and Animations

I’ve noticed that the repository is missing a footer and the overall user interface could use some modernization. I plan to add a clean and consistent footer, while also updating the UI for a more modern and polished look. Additionally, I will incorporate animations to enhance user interactions and improve the visual appeal of the site.
Let me know if you have any specific design ideas or preferences!

Footer is not required for this website, if you have any other ideas create a new issue which I will be happy to assign
I am closing this one!


Bar Chart offset property Does not work with time axis type

Expected behavior
According to the documentation, the offset property of a scale on a bar chart should prevent the first and last bar on the chart from being cut off. The docs actually say this is true by default.
Current behavior
First and last bar are cut in half, even when offset is explicitly specified as true.
Reproducible sample
https://codesandbox.io/s/bar-chart-offset-issue-ofkyer
Optional extra steps/info to reproduce
No response
Possible solution
No response
Context
This primarily seems to happen with every scale type on the x-axis that is not category. This makes bar charts not usable for any axis type outside of category axis in my product.
chart.js version
v3.5.1
Browser name and version
Chrome
Link to your project
No response

The issue here is that the offsets to keep the bar visible is working with the ticks that were generated before auto skipping is applied. Offsets for a time chart will need to be recomputed after auto skipping

@etimberg I think it was actually "fixed" to be calculated before auto skipping. So it would probably need an option.

good to know, I'll add a config option for it. I have the test passing now

Could not find the PR for it though, so my memory might server wrong :)

Awesome thanks so much for fixing!


Update service bus to enable live testing in sovereign clouds for multiple services

1.These changes enable service bus to run live tests against AzureUsGovernment and AzureChina clouds. The sovereign cloud live tests will be green with the changes.
2.File changed description:

Match different endpoints in different clouds.

Enable UsGov and China clouds.

3.Pipeline results:
https://dev.azure.com/azure-sdk/internal/_build/results?buildId=1351616&view=results
@benbp, @chradek, @ramya-rao-a, @lilyjma for notification.

@zedy-wj Please run rushx format to fix the failure of Analyze step in CI

/azp run js - service-bus - tests

@ramya-rao-a  We have fix the format, if there are no other problem, please merge it, thanks!

Thanks @zedy-wj!


Addition of button effect

#960
Description
Effecr is added to all the buttons in the repo.
[Please include a brief description of the changes or features added]
Related Issues
[Cite any related issue(s) this pull request addresses. If none, simply state “None”]

Closes #960

Type of PR

[ ] Bug fix
[X] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
https://github.com/user-attachments/assets/6a78c870-a6ec-4530-8434-8aafee9eda9a
Checklist

[X] I have gone through the contributing guide
[X] I have updated my branch and synced it with project main branch before making this PR
[X] I have performed a self-review of my code
[X] I have tested the changes thoroughly before submitting this pull request.
[X] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[X] I have commented my code, particularly in hard-to-understand areas.

@varshith257 please review the PR.

@varshith257 please review the PR

@varshith257 please review the PR.

@varshith257 please review the PR.

@varshith257 please review the PR

@varshith257 please review the PR

@varshith257 please review the PR

Why there is large gap between Rate us and appointment form and footer?

@varshith257  their is no gap

Why there is large gap between Rate us and appointment form and footer?

@varshith257 their is no such gap , below is the preview of this PR.
https://github.com/user-attachments/assets/0b770833-7016-4e33-b7a0-d6aa615267f4

@varshith257 now please review the PR.

@varshith257 please review the PR

@varshith257 please review the PR

@varshith257 please review the PR

Can fix merge conflicts?

Can fix merge conflicts?

okay

@varshith257 conflicts are resolved.


Causes severe issues when run on a fabricloader server [19w13b]

When I run a fabricloader server with this mod installed, breaking or right clicking on any block results in it disappearing on the clients end. The block is still there, and you can't move into the location where the block would be.

I know this mod is the issue because I don't have any other fabric mods installed, other than fabric api.
Edit: even without fabric api the same result happens when I break or right click blocks

So I think I might know what's going on, I was messing around with the issue and I realized that the client might see the blocks initially, but think the world generation is completely different, therefor when I interact with blocks they get "replaced" with what the client thinks it should be,

i actually haven't tested this mod much on a server, i'll try to reproduce this issue tomorrow

this seems to be due to inconsistencies between the server and client BlockPos (caused by the Fix Lighting option being enabled server-side, but not client-side). unfortunately i'll just have to disable the Fix Lighting option by default, as i can't really think of any ways to somehow fix this. sorry

Alright, thank you for responding


Page not found (404)

Dear @jhao104
Thanks for sharing your project. I met a problem

Without any error promotion until python manage.py runserver
Django 1.10.2
Python 2.7.15

Problem solved by modifying django_site/setting.py,
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
-   'blog'
+  'blog',
]


Adds example of a 'GCP ready' pipeline

Addresses https://github.com/systemslab/popper/issues/359

awesome! thanks a lot


ICEES+ Terms & Conditions: formatting differs by endpoint (minor issue)

This issue is to report that the formatting of the terms & conditions of use that users receive in response to calls to the ICEES+ OpenAPI differs based on endpoint functionality. This may be a Swagger interface issue, but it probably should be addressed, if possible.
For examples, see screenshots below.

Closing issue, as responses are as expected with JSON vs tabular output.


added sign-in edge case tests

Sign Tests - edge cases
Description
Added further tests around validating error messages
Checklist:

[ ] Automated checks are passing locally.
[ ] CHANGELOG updated if change is worth telling users about.

General testing

[ ] Test without javascript
[ ] Test on small screen

Accessibility testing

[ ] Works keyboard only
[ ] Tested with one screen reader
[ ] Zoom page to 400% - content still visible
[ ] Disable css - does content make sense and appear in a logical order?
[ ] Passes automated checker (automated in build or manual)

@slorek another small pr, appreciate if you want take a quick look before I want to merge this.


Smart layout axis not work

The inferred-layout-axis.schema.yaml schema is not working as what I saw after unzipped a sketch file where integer 0 represents Horizontal and 1 represents Vertical.
Where
enum:
  - 0
  - 1
  - 2
enumDescriptions:
  - None
  - Horizontal
  - Vertical

Should be
enum:
  - 0
  - 1
enumDescriptions:
  - Horizontal
  - Vertical

It seems the group layout value could be "groupLayout": { "_class": "MSImmutableFreeformGroupLayout" } if it is not set inferred layout.

It seems the group layout value could be "groupLayout": { "_class": "MSImmutableFreeformGroupLayout" } if it is not set inferred layout.

Yep you're correct. Without an inferred (smart) layout set the groupLayout value is a MSImmutableFreeformGroupLayout.


ZSTD codec

Summary
Describe the goal of this PR. Mention any related Issue numbers.
Requirements

[ ] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[ ] I've read and agree to the Code of Conduct.

I looked a bit more into this, and I'm not convinced that ZSTD is the direction we want to go. The discussion from OpenSearch here specifically raises some concerns:

One of those reasons is the hard dependency on native compiled code, which often leads to portability issues due to glibc differences.

There's also currently issues with memory leaks, and aside from that the performance (especially at query time) is a mixed bag. If we were already running zlib this may be more interesting, but we currently use the default of BEST_SPEED.
https://github.com/apache/lucene/issues/9784#issuecomment-1223937672

Codec
Indexing time (ms)
Disk usage (MB)
Retrieval time per 10k docs (ms)

BEST_SPEED (LZ4 with small blocks)
35383
90.175
190.17524

BEST_COMPRESSION (vanilla zlib, DEFLATE level=6)
76671
58.682
1910.42106

BEST_COMPRESSION (Cloudflare zlib, DEFLATE level=6)
54791
58.601
1395.53593

ZSTD dict (level=1)
24687
63.324
928.73997

ZSTD dict (level=2)
24934
63.722
977.29911

ZSTD dict (level=3)
28285
62.072
938.10886

ZSTD dict (level=4)
37863
60.427
969.18655

ZSTD dict (level=5)
45479
59.317
941.20922

ZSTD dict (level=6)
57842
58.481
881.69049

ZSTD dict (level=7)
65796
58.107
886.42249

I think this is something we can table for now, and potentially revisit in the future.


[5.3] phpunit Strange behavior

Laravel Version: 5.3.21
PHP Version: 7 (Homestead)
Database Driver & Version: Mysql (Sqlite for test)

Description:
Currently, I have 115 tests written for my app, and in some point of testing when I had 112 and 113 number of tests, my test start to fail.
From some reason, fails were on next file(Controller) that phpunit start to crawl, and assertResponseStatus(401) was 400.
I ignored that issue and write a new test that fails from same errors and in some point of testing my test won't fail anymore for that error. Everything seems to be normal now.
Because is API I try to reproduce the error with Postman, and everything is working like expected.
Steps To Reproduce:
This test is for the controller I have 30 similar requests and all tests are green, the only method is changed i.e get or post.

    public function test_add_employed_for_business()
    {
        $apiKey = factory(ApiKey::class)->create();
    	$business = factory(Business::class)->create();

    	$response = $this->post('/api/business/edit/'.$business->id.'/add-employed',[
			  'email' =><EMAIL_ADDRESS>			  'name' => 'John Doe',
			  'password' => 'pass123',
			  'user_role_id' => '1'
    		], ['Authorization' => 'Bearer '.$apiKey->api_token, 'secret' => $business->business_token])
	    	->assertResponseStatus(200);
    }

// DEBAG
dd($response); //Return status code 200

I notice that, if is on end of my class method that check is assertResponseStatus(400) i.e method that tests bad request, few next tests will fail. Otherwise, all tests are good.

Execute phpunit with --debug to see which tests execute just before the errors are occurring.

@sisve I do that, and test above is executing. And 2 next test fails, if I continue to write test error disappeared and everything is normal

Please continue on the forums, we keep this repo for laravel bug reporting only.


iSpindel Battery Block

It would be great to incorporate the Battery details in a block. Brewfather is still now able to show this from the iSpindel, the data should be there, I assume this would be quite minor to add in, but quite valuable for users not using other applications or UI's.

What do you mean by "in a block"?

So by block I mean the measurement blocks in the dashboards.

Could also be Trendable.
Would be great too on the HomePage Summary.

I don't think trendable is in the cards, but adding it to the dashboard certainly is. I need to refactor the dashboards at some point and add some customizability - I'll see about getting this added when I tackle that.

Yeah just having it in the cards is great.

As I tend to make wine rather than beer, in the iSpindel management window I don't need the ABV panel, so for me they could swap. I don't know if having a choice of what panels to display makes life easier or more complicated?
Just throwing that in in case it might help?


"New Submission" button on grant details looks like it's greyed out

Could we make it a regular color?

To me, it looks like this issue comes from Ember.
This button is generated by this bit from grants/show.hbs template:
{{#link-to 'grants' class="btn btn-primary btn-small"}}Back to grants{{/link-to}}

From the Ember docs (https://guides.emberjs.com/v2.5.0/templates/links/):

When the rendered link matches the current route, and the same object instance is passed into the helper, then the link is given class="active".

So it looks like Ember is adding the 'active' class to this link, which Bootstrap uses to change the color. Not yet sure how to fix this behavior in Ember.

This shouldn't be an issue one @cameronblandford  and myself make the PR for our UI changes.


chore(adopters): https://griffin.com

@iliapolo asked if we would be OK being on the adopters list. I've run it by our CTO, and it's a 👍, so here's the PR.
I also fixed the alphabetisation and made a slight grammar change. That's a separate commit so can be easily binned if desired.

@dancmeyers Do I have your permission to set DCO to pass?


Enable checkstyle in CI

For improving the code quality, it's time to enable checkstyle in CI.
That means we should use unified code style after enabling it. If it fails to check style, the CI will complain about it.
After we discussed offline, we'd like to use Alibaba's code style as well.

duplicate https://github.com/seata/seata/issues/563


Consider allowing Generic Trigger Keys

Something like
const enum TriggerAreas {
    Foo,
    Bar,
    Baz,
    Cat
};

type TriggerKeyType = string|MyObject|TriggerAreas;
export class MyStore extends ReSub.StoreBase<TriggerKeyType>{
...
    // Trigger for enum, string and a complex object are fully typesafe
    this.trigger([TriggerAreas.Foo, 'fooitemKey', fooObject]);
...
}

This would allow passing anything a developer wants through keys and allows more documentation context to be gathered from the specified trigger keys.

IMO, this is one of those cases where keeping it simple (restricting it to strings and numbers) is preferable. Just my 2c.

I like the added documentation and typesafety around specifying the space of trigger keys. We can add the restriction that TriggerKeyType extends string|number so the behavior is the same and it is not a breaking change. [Note: MyStore extends StoreBase does not need <> since TypeScript now infers the default string|number for you.]
Someone might want support for Symbols to avoid namespace collisions with specific and arbitrary keys. We don't have that problem since our keys are usually in a predefined format so we can make our special keys different (e.g. guid vs 'FooToken'). This would be more of a problem for subscribing to arbitrary numbers (e.g. id) and having const enum of special keys (e.g. TK.NoneId).
Actually, Key_All = '%!$all' is a good candidate for a Symbol.


Support Node.js?

Consider supporting Node.js.
As pointed out in https://github.com/JuulLabs/kable/pull/24#discussion_r539566598, the current implementation likely does not work outside of the browser.

Closing as there are no plans to support Node.js.
PRs are welcome if someone wants to tackle this.


Cow: Watch atlantisplus.com

Cow requests the watch of the watch_keyword atlantisplus\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

atlantisplus\.com has been seen in 2 true positives, 0 false positives, and 0 NAAs.

Approved by double-beep in Charcoal HQ


🐛 Fix widget registering

This PR aims to fix this issue https://github.com/MaayanLab/clustergrammer-widget/issues/17

Thanks @antoinegaston. I don't have write access to this repo, but I can try to contact someone with the permissions to do the merge.


Allow hostname to be set non-interactively

#This makes testing with vagrant a little easier since a name can be auto-generated in the Vagrantfile or passed in as an ENV:
config.vm.provision "shell", inline: "bash <(curl http://classroom.puppet.com/bootstrap.sh) -u #{ENV['BOOTSTRAP_USER']} -k #{ENV['BOOTSTRAP_KEY']}"

@binford2k done. Funnily enough that's what I had initially but I changed it to hostname.


[WIP] HIVE-27746: Hive Metastore should send single AlterPartitionEvent wit…

…h list of partitions

What changes were proposed in this pull request?

Why are the changes needed?

Does this PR introduce any user-facing change?

Is the change a dependency upgrade?

How was this patch tested?

Event processing for repl is still missing

@jfsii Can you please review this?

@henrib Can you please review?

LGTM +1, Pending green ptests.

The latest two runs are successful, the build failure is caused by Sonar,

[2024-03-07T00:56:43.905Z] [ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:<IP_ADDRESS>4:sonar (default-cli) on project hive: The plugin [java] does not support Java 11.0.8: org/sonar/plugins/java/JavaPlugin has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0 -> [Help 1]
which I think has already been fixed in the master branch, I will rebase the commits and let the ptests run again.


Submit bank-vaults to https://www.operatorhub.io ?

Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
Submit bank-vaults to https://www.operatorhub.io ?
Describe alternatives you've considered
N/A
Additional context

We've been looking into this for Bank-Vaults and the other operators we made - are you using any other operators with OLM, or plan to use it with BV? If so, what is your experience of OLM?

Sorry, not understand what is OLM...

It's the Operator Lifecycle Manager. Besides being listed what is the value you are looking to extract from the https://www.operatorhub.io ?

Seriously, I don't have experience of using OLM. But we looking for something like it help use to manage our operators. Sure we have some concern with version upgrade cause broken change.
Since BV also using operator-sdk. Then I think BV listed on operator hub maybe a good idea.

PR submitted: https://github.com/operator-framework/community-operators/pull/161

Fixed already: https://operatorhub.io/operator/beta/vaultoperator.v0.4.10


Release version update

Can someone publish v1.1.4 ? The package on npm is still v1.1.2.
https://github.com/javascript-obfuscator/obfuscator-loader/issues/11

Hello, @JerryChan31 may you kindly publish the same. I am awfully stuck as the target node version for me is 14.4 and it is not building. Please, Thank you.

Can you also change the dependency on javascript-obfuscator to be a peer dependency so that it can be upgraded separately

Hi. I added the loader to webpack-obfuscator package. Check the readme. Loader based on the code of this package.

I marked this package as deprecated.


Add 'post javascript object' example to readme

Wasn't sure initially if JSON.stringify() for post body would work, then it took me longer than it should have to work out that Content-Type was needed for POST JSON to work with koa-body (and perhaps other body parsers?), so this might help others.

Coverage remained the same at 100.0% when pulling 5af9b62f0dcd08e208c59b6c1a3ed43f5f9b68e4 on chrisveness:master into 3c053ce32760d2d5d6cb8712fb4115b44e4083d4 on bitinn:master.

Coverage remained the same at 100.0% when pulling ee42d28653ae356f72b4a95df348ba511ceafe4d on chrisveness:master into 3c053ce32760d2d5d6cb8712fb4115b44e4083d4 on bitinn:master.

Coverage remained the same at 100.0% when pulling ee42d28653ae356f72b4a95df348ba511ceafe4d on chrisveness:master into 3c053ce32760d2d5d6cb8712fb4115b44e4083d4 on bitinn:master.

Thanks!

Coverage remained the same at 100.0% when pulling 4a217ba1a10e1ecee2d71c3fd16c880a004e26a2 on chrisveness:master into 3c053ce32760d2d5d6cb8712fb4115b44e4083d4 on bitinn:master.

Coverage remained the same at 100.0% when pulling 4a217ba1a10e1ecee2d71c3fd16c880a004e26a2 on chrisveness:master into 3c053ce32760d2d5d6cb8712fb4115b44e4083d4 on bitinn:master.


mm-teams-bot-conversations

Docs Build status updates of commit 93098b8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 0f76a83:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 83670f7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit e585e18:
:clock10: Pending: waiting for processors (5 builds ahead of you)
:warning: Docs Build is busy, currently there are 5 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit e585e18:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 9979178:
:clock10: Pending: waiting for processors (6 builds ahead of you)
:warning: Docs Build is busy, currently there are 6 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 9979178:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/add-authentication-to-your-teams-bot.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 4174ed7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/add-authentication-to-your-teams-bot.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 2bcbcde:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/add-authentication-to-your-teams-bot.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit f76c84c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/bots/how-to/conversations/add-authentication-to-your-teams-bot.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-and-receive-messages.md
:white_check_mark:Succeeded

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Closing without merging.


[devops] Should automate Cloud-front integration with S3

As decided in #154 we should automate the integration between cloud-front and s3

Fixed


The contents of /tmp are cleared few seconds after start up

Windows Version
Microsoft Windows [Version 10.0.22621.3737]
WSL Version
WSL version: <IP_ADDRESS> Kernel version: <IP_ADDRESS>-2 WSLg version: 1.0.61 MSRDC version: 1.2.5326 Direct3D version: 1.611.1-81528511 DXCore version: 10.0.26091.1-240325-1447.ge-release Windows version: 10.0.22621.3737
Are you using WSL 1 or WSL 2?

[X] WSL 2
[ ] WSL 1

Kernel Version
Linux version <IP_ADDRESS>-microsoft-standard-WSL2 (root@941d701f84f1) (gcc (GCC) 11.2.0, GNU ld (GNU Binutils) 2.37) #1 SMP Fri Mar 29 23:14:13 UTC 2024
Distro Version
NAME="Arch Linux" PRETTY_NAME="Arch Linux" ID=arch BUILD_ID=rolling VERSION_ID=20240101.0.204074 ANSI_COLOR="38;2;23;147;209" HOME_URL="https://archlinux.org/" DOCUMENTATION_URL="https://wiki.archlinux.org/" SUPPORT_URL="https://bbs.archlinux.org/" BUG_REPORT_URL="https://bugs.archlinux.org/" PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/" LOGO=archlinux-logo
Other Software
No response
Repro Steps

On startup touch /tmp/file
Wait a few seconds. The file will be gone.

Expected Behavior
Feature parity to bare-metal Linux. That is, files created under /tmp on startup should not be removed after such a short period.
Actual Behavior
The file is removed.
I learned this because I use blesh. See this discussion
Diagnostic Logs
WslLogs-2024-07-02_20-47-17.zip

Related #8441

This is the same issue as #8441, but #8441 is closed for some inactivity. It's not solved. The problem is not specific to ble.sh, but there are also problems with other frameworks.

https://github.com/romkatv/gitstatus/issues/234#issuecomment-1097968209
https://github.com/romkatv/gitstatus/issues/317
https://github.com/romkatv/gitstatus/issues/325
https://github.com/romkatv/gitstatus/issues/332
https://github.com/romkatv/gitstatus/issues/333
https://github.com/romkatv/gitstatus/issues/424
https://github.com/akinomyoga/ble.sh/discussions/462

Clearing /tmp on startup of WSL is fine, but it should not happen after programs start to use /tmp. Clearing /tmp should be finished in the booting-up process of the system before any programs that may use /tmp start. The current behavior would affect all the programs that use /tmp in their initialization stage.

@LeonardoMor Do you have systemd enabled in your distro ?
This is most likely caused by the systemd-tmpfiles-clean.service unit. Can you try running:
systemctl mask systemd-tmpfiles-clean.service and see if that solves the issue ?
Also if doesn't, can you share the output of cat /proc/self/mountinfo before and after the file is deleted ?

systemd is indeed enabled:
❯ ps --no-headers -o comm 1
systemd

cat /proc/self/mountinfo before and after:

❯ printf '%s: %s: $ cat /proc/self/mountinfo\n%s\n' Before "$(date -Iseconds)" "$(cat /proc/self/mountinfo)"
Before: 2024-07-09T19:25:26-06:00: $ cat /proc/self/mountinfo
74 82 0:26 / /mnt/wsl rw,relatime shared:1 - tmpfs none rw
75 82 0:28 / /usr/lib/wsl/drivers ro,nosuid,nodev,noatime - 9p drivers ro,dirsync,aname=drivers;fmask=222;dmask=222,mmap,access=client,msize=65536,trans=fd,rfd=7,wfd=7
80 82 0:36 / /usr/lib/modules rw,relatime - tmpfs none rw
81 80 0:33 / /usr/lib/modules/<IP_ADDRESS>-microsoft-standard-WSL2 rw,nosuid,nodev,noatime - overlay none rw,lowerdir=/modules,upperdir=/modules_overlay/rw/upper,workdir=/modules_overlay/rw/work
82 66 8:32 / / rw,relatime - ext4 /dev/sdc rw,discard,errors=remount-ro,data=ordered
83 82 0:38 / /mnt/wslg rw,relatime shared:2 - tmpfs none rw
84 83 8:32 / /mnt/wslg/distro ro,relatime shared:3 - ext4 /dev/sdc rw,discard,errors=remount-ro,data=ordered
100 82 0:46 / /usr/lib/wsl/lib rw,nosuid,nodev,noatime - overlay none rw,lowerdir=/gpu_lib_packaged:/gpu_lib_inbox,upperdir=/gpu_lib/rw/upper,workdir=/gpu_lib/rw/work
101 82 0:2 /init /init ro - rootfs rootfs rw,size=8107332k,nr_inodes=2026833
113 82 0:5 / /dev rw,nosuid,relatime shared:15 - devtmpfs none rw,size=8107332k,nr_inodes=2026833,mode=755
117 82 0:20 / /sys rw,nosuid,nodev,noexec,noatime shared:19 - sysfs sysfs rw
118 82 0:63 / /proc rw,nosuid,nodev,noexec,noatime shared:20 - proc proc rw
119 113 0:64 / /dev/pts rw,nosuid,noexec,noatime shared:21 - devpts devpts rw,gid=5,mode=620,ptmxmode=000
120 82 0:65 / /run rw,nosuid,nodev shared:22 - tmpfs none rw,mode=755
121 120 0:66 / /run/lock rw,nosuid,nodev,noexec,noatime shared:23 - tmpfs none rw
122 120 0:67 / /run/shm rw,nosuid,nodev,noatime shared:24 - tmpfs none rw
123 113 0:67 / /dev/shm rw,nosuid,nodev,noatime shared:24 - tmpfs none rw
124 120 0:68 / /run/user rw,nosuid,nodev,noexec,noatime shared:25 - tmpfs none rw,mode=755
125 118 0:27 / /proc/sys/fs/binfmt_misc rw,relatime shared:26 - binfmt_misc binfmt_misc rw
126 117 0:69 / /sys/fs/cgroup ro,nosuid,nodev,noexec shared:27 - tmpfs tmpfs ro,size=4096k,nr_inodes=1024,mode=755
127 126 0:21 / /sys/fs/cgroup/unified rw,nosuid,nodev,noexec,relatime shared:28 - cgroup2 cgroup2 rw,nsdelegate
130 126 0:60 / /sys/fs/cgroup/cpuset rw,nosuid,nodev,noexec,relatime shared:31 - cgroup cgroup rw,cpuset
131 126 0:61 / /sys/fs/cgroup/cpu rw,nosuid,nodev,noexec,relatime shared:32 - cgroup cgroup rw,cpu
132 126 0:62 / /sys/fs/cgroup/cpuacct rw,nosuid,nodev,noexec,relatime shared:33 - cgroup cgroup rw,cpuacct
133 126 0:70 / /sys/fs/cgroup/blkio rw,nosuid,nodev,noexec,relatime shared:34 - cgroup cgroup rw,blkio
134 126 0:71 / /sys/fs/cgroup/memory rw,nosuid,nodev,noexec,relatime shared:35 - cgroup cgroup rw,memory
138 126 0:72 / /sys/fs/cgroup/devices rw,nosuid,nodev,noexec,relatime shared:39 - cgroup cgroup rw,devices
140 126 0:73 / /sys/fs/cgroup/freezer rw,nosuid,nodev,noexec,relatime shared:41 - cgroup cgroup rw,freezer
142 126 0:74 / /sys/fs/cgroup/net_cls rw,nosuid,nodev,noexec,relatime shared:43 - cgroup cgroup rw,net_cls
143 126 0:75 / /sys/fs/cgroup/perf_event rw,nosuid,nodev,noexec,relatime shared:44 - cgroup cgroup rw,perf_event
145 126 0:76 / /sys/fs/cgroup/net_prio rw,nosuid,nodev,noexec,relatime shared:46 - cgroup cgroup rw,net_prio
146 126 0:77 / /sys/fs/cgroup/hugetlb rw,nosuid,nodev,noexec,relatime shared:47 - cgroup cgroup rw,hugetlb
148 126 0:78 / /sys/fs/cgroup/pids rw,nosuid,nodev,noexec,relatime shared:49 - cgroup cgroup rw,pids
150 126 0:79 / /sys/fs/cgroup/rdma rw,nosuid,nodev,noexec,relatime shared:51 - cgroup cgroup rw,rdma
152 126 0:80 / /sys/fs/cgroup/misc rw,nosuid,nodev,noexec,relatime shared:53 - cgroup cgroup rw,misc
156 83 0:40 /etc/versions.txt /mnt/wslg/versions.txt rw,relatime shared:54 - overlay none rw,lowerdir=/systemvhd,upperdir=/system/rw/upper,workdir=/system/rw/work
158 83 0:40 /usr/share/doc /mnt/wslg/doc rw,relatime shared:55 - overlay none rw,lowerdir=/systemvhd,upperdir=/system/rw/upper,workdir=/system/rw/work
160 82 0:38 /.X11-unix /tmp/.X11-unix ro,relatime shared:2 - tmpfs none rw
161 82 0:83 / /mnt/c rw,noatime - 9p C:\134 rw,dirsync,aname=drvfs;path=C:\;uid=1000;gid=1000;symlinkroot=/mnt/,mmap,access=client,msize=65536,trans=fd,rfd=5,wfd=5
162 124 0:38 /run/user /run/user rw,relatime shared:2 - tmpfs none rw
163 126 0:84 / /sys/fs/cgroup/systemd rw,nosuid,nodev,noexec,relatime shared:56 - cgroup cgroup rw,xattr,name=systemd

❯ touch /tmp/test.tmp; while true; do printf '%s: $ ls -lat /tmp | head\n%s\n\n' "$(date -Iseconds)" "$(ls -lat /tmp | head)"; sleep 2; done
2024-07-09T19:25:36-06:00: $ ls -lat /tmp | head
total 3448
-rw-r--r--  1 leo  leo       0 Jul  9 19:25 test.tmp
drwxrwxrwt 47 root root   4096 Jul  9 19:25 .
drwx------  2 leo  leo    4096 Jul  9 19:25 ssh-XXXXXXnIkT5N
drwxr-xr-x 18 root root   4096 Jul  9 19:25 ..
drwxrwxrwx  2 root root     60 Jul  9 19:25 .X11-unix
drwx------  2 leo  leo    4096 Jul  9 19:24 ssh-XXXXXXmAvC2x
drwx------  2 leo  leo    4096 Jul  9 19:23 tmux-1000
drwx------  2 leo  leo    4096 Jul  9 19:23 ssh-XXXXXXrBaswW
drwx------  2 leo  leo    4096 Jul  9 19:22 ssh-XXXXXXFg5aZ

...

2024-07-09T19:25:42-06:00: $ ls -lat /tmp | head
total 3448
-rw-r--r--  1 leo  leo       0 Jul  9 19:25 test.tmp
drwxrwxrwt 47 root root   4096 Jul  9 19:25 .
drwx------  2 leo  leo    4096 Jul  9 19:25 ssh-XXXXXXnIkT5N
drwxr-xr-x 18 root root   4096 Jul  9 19:25 ..
drwxrwxrwx  2 root root     60 Jul  9 19:25 .X11-unix
drwx------  2 leo  leo    4096 Jul  9 19:24 ssh-XXXXXXmAvC2x
drwx------  2 leo  leo    4096 Jul  9 19:23 tmux-1000
drwx------  2 leo  leo    4096 Jul  9 19:23 ssh-XXXXXXrBaswW
drwx------  2 leo  leo    4096 Jul  9 19:22 ssh-XXXXXXFg5aZw

2024-07-09T19:25:44-06:00: $ ls -lat /tmp | head
total 4
drwxrwxrwt  8 root root  160 Jul  9 19:25 .
drwx------  3 root root   60 Jul  9 19:25 systemd-private-8cae43c7d3124da9be80e2796f378d53-systemd-logind.service-6nGJTr
drwx------  3 root root   60 Jul  9 19:25 systemd-private-8cae43c7d3124da9be80e2796f378d53-dbus-broker.service-7Y68yN
drwxrwxrwt  2 root root   40 Jul  9 19:25 .font-unix
drwxrwxrwt  2 root root   40 Jul  9 19:25 .ICE-unix
drwxrwxrwt  2 root root   40 Jul  9 19:25 .X11-unix
drwxrwxrwt  2 root root   40 Jul  9 19:25 .XIM-unix
drwxr-xr-x 18 root root 4096 Jul  9 19:25 ..
...

❯ printf '%s: %s: $ cat /proc/self/mountinfo\n%s\n' After "$(date -Iseconds)" "$(cat /proc/self/mountinfo)"
After: 2024-07-09T19:25:59-06:00: $ cat /proc/self/mountinfo
74 82 0:26 / /mnt/wsl rw,relatime shared:1 - tmpfs none rw
75 82 0:28 / /usr/lib/wsl/drivers ro,nosuid,nodev,noatime - 9p drivers ro,dirsync,aname=drivers;fmask=222;dmask=222,mmap,access=client,msize=65536,trans=fd,rfd=7,wfd=7
80 82 0:36 / /usr/lib/modules rw,relatime - tmpfs none rw
81 80 0:33 / /usr/lib/modules/<IP_ADDRESS>-microsoft-standard-WSL2 rw,nosuid,nodev,noatime - overlay none rw,lowerdir=/modules,upperdir=/modules_overlay/rw/upper,workdir=/modules_overlay/rw/work
82 66 8:32 / / rw,relatime - ext4 /dev/sdc rw,discard,errors=remount-ro,data=ordered
83 82 0:38 / /mnt/wslg rw,relatime shared:2 - tmpfs none rw
84 83 8:32 / /mnt/wslg/distro ro,relatime shared:3 - ext4 /dev/sdc rw,discard,errors=remount-ro,data=ordered
100 82 0:46 / /usr/lib/wsl/lib rw,nosuid,nodev,noatime - overlay none rw,lowerdir=/gpu_lib_packaged:/gpu_lib_inbox,upperdir=/gpu_lib/rw/upper,workdir=/gpu_lib/rw/work
101 82 0:2 /init /init ro - rootfs rootfs rw,size=8107332k,nr_inodes=2026833
113 82 0:5 / /dev rw,nosuid,relatime shared:15 - devtmpfs none rw,size=8107332k,nr_inodes=2026833,mode=755
117 82 0:20 / /sys rw,nosuid,nodev,noexec,noatime shared:19 - sysfs sysfs rw
118 82 0:63 / /proc rw,nosuid,nodev,noexec,noatime shared:20 - proc proc rw
119 113 0:64 / /dev/pts rw,nosuid,noexec,noatime shared:21 - devpts devpts rw,gid=5,mode=620,ptmxmode=000
120 82 0:65 / /run rw,nosuid,nodev shared:22 - tmpfs none rw,mode=755
121 120 0:66 / /run/lock rw,nosuid,nodev,noexec,noatime shared:23 - tmpfs none rw
122 120 0:67 / /run/shm rw,nosuid,nodev,noatime shared:24 - tmpfs none rw
123 113 0:67 / /dev/shm rw,nosuid,nodev,noatime shared:24 - tmpfs none rw
124 120 0:68 / /run/user rw,nosuid,nodev,noexec,noatime shared:25 - tmpfs none rw,mode=755
125 118 0:27 / /proc/sys/fs/binfmt_misc rw,relatime shared:26 - binfmt_misc binfmt_misc rw
126 117 0:69 / /sys/fs/cgroup ro,nosuid,nodev,noexec shared:27 - tmpfs tmpfs ro,size=4096k,nr_inodes=1024,mode=755
127 126 0:21 / /sys/fs/cgroup/unified rw,nosuid,nodev,noexec,relatime shared:28 - cgroup2 cgroup2 rw,nsdelegate
130 126 0:60 / /sys/fs/cgroup/cpuset rw,nosuid,nodev,noexec,relatime shared:31 - cgroup cgroup rw,cpuset
131 126 0:61 / /sys/fs/cgroup/cpu rw,nosuid,nodev,noexec,relatime shared:32 - cgroup cgroup rw,cpu
132 126 0:62 / /sys/fs/cgroup/cpuacct rw,nosuid,nodev,noexec,relatime shared:33 - cgroup cgroup rw,cpuacct
133 126 0:70 / /sys/fs/cgroup/blkio rw,nosuid,nodev,noexec,relatime shared:34 - cgroup cgroup rw,blkio
134 126 0:71 / /sys/fs/cgroup/memory rw,nosuid,nodev,noexec,relatime shared:35 - cgroup cgroup rw,memory
138 126 0:72 / /sys/fs/cgroup/devices rw,nosuid,nodev,noexec,relatime shared:39 - cgroup cgroup rw,devices
140 126 0:73 / /sys/fs/cgroup/freezer rw,nosuid,nodev,noexec,relatime shared:41 - cgroup cgroup rw,freezer
142 126 0:74 / /sys/fs/cgroup/net_cls rw,nosuid,nodev,noexec,relatime shared:43 - cgroup cgroup rw,net_cls
143 126 0:75 / /sys/fs/cgroup/perf_event rw,nosuid,nodev,noexec,relatime shared:44 - cgroup cgroup rw,perf_event
145 126 0:76 / /sys/fs/cgroup/net_prio rw,nosuid,nodev,noexec,relatime shared:46 - cgroup cgroup rw,net_prio
146 126 0:77 / /sys/fs/cgroup/hugetlb rw,nosuid,nodev,noexec,relatime shared:47 - cgroup cgroup rw,hugetlb
148 126 0:78 / /sys/fs/cgroup/pids rw,nosuid,nodev,noexec,relatime shared:49 - cgroup cgroup rw,pids
150 126 0:79 / /sys/fs/cgroup/rdma rw,nosuid,nodev,noexec,relatime shared:51 - cgroup cgroup rw,rdma
152 126 0:80 / /sys/fs/cgroup/misc rw,nosuid,nodev,noexec,relatime shared:53 - cgroup cgroup rw,misc
156 83 0:40 /etc/versions.txt /mnt/wslg/versions.txt rw,relatime shared:54 - overlay none rw,lowerdir=/systemvhd,upperdir=/system/rw/upper,workdir=/system/rw/work
158 83 0:40 /usr/share/doc /mnt/wslg/doc rw,relatime shared:55 - overlay none rw,lowerdir=/systemvhd,upperdir=/system/rw/upper,workdir=/system/rw/work
160 82 0:38 /.X11-unix /tmp/.X11-unix ro,relatime shared:2 - tmpfs none rw
161 82 0:83 / /mnt/c rw,noatime - 9p C:\134 rw,dirsync,aname=drvfs;path=C:\;uid=1000;gid=1000;symlinkroot=/mnt/,mmap,access=client,msize=65536,trans=fd,rfd=5,wfd=5
162 124 0:38 /run/user /run/user rw,relatime shared:2 - tmpfs none rw
163 126 0:84 / /sys/fs/cgroup/systemd rw,nosuid,nodev,noexec,relatime shared:56 - cgroup cgroup rw,xattr,name=systemd
164 113 0:85 / /dev/hugepages rw,nosuid,nodev,relatime shared:57 - hugetlbfs hugetlbfs rw,pagesize=2M
165 117 0:6 / /sys/kernel/debug rw,nosuid,nodev,noexec,relatime shared:58 - debugfs debugfs rw
166 113 0:37 / /dev/mqueue rw,nosuid,nodev,noexec,relatime shared:59 - mqueue mqueue rw
167 117 0:11 / /sys/kernel/tracing rw,nosuid,nodev,noexec,relatime shared:60 - tracefs tracefs rw
168 82 0:86 / /tmp rw,nosuid,nodev - tmpfs tmpfs rw,nr_inodes=1048576
231 120 0:87 / /run/credentials/systemd-journald.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:61 - ramfs none rw,mode=700
233 120 0:88 / /run/credentials/systemd-tmpfiles-setup-dev-early.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:62 - ramfs none rw,mode=700
235 120 0:89 / /run/credentials/systemd-udev-load-credentials.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:63 - ramfs none rw,mode=700
169 117 0:90 / /sys/fs/fuse/connections rw,nosuid,nodev,noexec,relatime shared:64 - fusectl fusectl rw
239 120 0:91 / /run/credentials/systemd-sysctl.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:65 - ramfs none rw,mode=700
241 120 0:92 / /run/credentials/systemd-tmpfiles-setup-dev.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:66 - ramfs none rw,mode=700
309 120 0:93 / /run/credentials/systemd-tmpfiles-setup.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:105 - ramfs none rw,mode=700
312 120 0:94 / /run/credentials/systemd-vconsole-setup.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:119 - ramfs none rw,mode=700
465 120 0:97 / /run/credentials/console-getty.service ro,nosuid,nodev,noexec,relatime,nosymfollow shared:211 - ramfs none rw,mode=700

Does systemctl mask systemd-tmpfiles-clean.service survives shutdown? because I need to run wsl --shutdown Arch in order to reproduce the problem.

Here's probably what's causing the issue:
168 82 0:86 / /tmp rw,nosuid,nodev - tmpfs tmpfs rw,nr_inodes=1048576

There something that's mounting a tmpfs over /tmp, which masks the files in there.
Can you share the output of:
systemctl -t mount

?

Here's probably what's causing the issue:
168 82 0:86 / /tmp rw,nosuid,nodev - tmpfs tmpfs rw,nr_inodes=1048576

There something that's mounting a tmpfs over /tmp, which masks the files in there. Can you share the output of:
systemctl -t mount

?

❯ systemctl -t mount
  UNIT                                                                       LOAD   ACTIVE SUB     DESCRIPTION
  -.mount                                                                    loaded active mounted Root Mount
  dev-hugepages.mount                                                        loaded active mounted Huge Pages File System
  dev-mqueue.mount                                                           loaded active mounted POSIX Message Queue File System
  init.mount                                                                 loaded active mounted /init
  mnt-c.mount                                                                loaded active mounted /mnt/c
  mnt-wsl.mount                                                              loaded active mounted /mnt/wsl
  mnt-wslg-distro.mount                                                      loaded active mounted /mnt/wslg/distro
  mnt-wslg-doc.mount                                                         loaded active mounted /mnt/wslg/doc
  mnt-wslg-versions.txt.mount                                                loaded active mounted /mnt/wslg/versions.txt
  mnt-wslg.mount                                                             loaded active mounted /mnt/wslg
  proc-sys-fs-binfmt_misc.mount                                              loaded active mounted Arbitrary Executable File Formats File System
  run-credentials-console\x2dgetty.service.mount                             loaded active mounted /run/credentials/console-getty.service
  run-credentials-systemd\x2djournald.service.mount                          loaded active mounted /run/credentials/systemd-journald.service
  run-credentials-systemd\x2dsysctl.service.mount                            loaded active mounted run-credentials-systemd\x2dsysctl.service.mount
  run-credentials-systemd\x2dsysusers.service.mount                          loaded active mounted run-credentials-systemd\x2dsysusers.service.mount
  run-credentials-systemd\x2dtmpfiles\x2dsetup.service.mount                 loaded active mounted run-credentials-systemd\x2dtmpfiles\x2dsetup.service.mount
  run-credentials-systemd\x2dtmpfiles\x2dsetup\x2ddev.service.mount          loaded active mounted run-credentials-systemd\x2dtmpfiles\x2dsetup\x2ddev.service.mount
  run-credentials-systemd\x2dtmpfiles\x2dsetup\x2ddev\x2dearly.service.mount loaded active mounted run-credentials-systemd\x2dtmpfiles\x2dsetup\x2ddev\x2dearly.service.mount
  run-credentials-systemd\x2dudev\x2dload\x2dcredentials.service.mount       loaded active mounted run-credentials-systemd\x2dudev\x2dload\x2dcredentials.service.mount
  run-credentials-systemd\x2dvconsole\x2dsetup.service.mount                 loaded active mounted run-credentials-systemd\x2dvconsole\x2dsetup.service.mount
  run-lock.mount                                                             loaded active mounted /run/lock
  run-shm.mount                                                              loaded active mounted /run/shm
  run-user.mount                                                             loaded active mounted /run/user
  sys-fs-fuse-connections.mount                                              loaded active mounted FUSE Control File System
  sys-kernel-debug.mount                                                     loaded active mounted Kernel Debug File System
  sys-kernel-tracing.mount                                                   loaded active mounted Kernel Trace File System
  tmp-.X11\x2dunix.mount                                                     loaded active mounted /tmp/.X11-unix
  tmp.mount                                                                  loaded active mounted Temporary Directory /tmp
  usr-lib-modules-<IP_ADDRESS>\x2dmicrosoft\x2dstandard\x2dWSL2.mount          loaded active mounted /usr/lib/modules/<IP_ADDRESS>-microsoft-standard-WSL2
  usr-lib-modules.mount                                                      loaded active mounted /usr/lib/modules
  usr-lib-wsl-drivers.mount                                                  loaded active mounted /usr/lib/wsl/drivers
  usr-lib-wsl-lib.mount                                                      loaded active mounted /usr/lib/wsl/lib

Legend: LOAD   → Reflects whether the unit definition was properly loaded.
        ACTIVE → The high-level unit activation state, i.e. generalization of SUB.
        SUB    → The low-level unit activation state, values depend on unit type.

32 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.

This is probably the unit that's causing this behavior:
  tmp.mount                                                                  loaded active mounted Temporary Directory /tmp

Does running  systemctl mask tmp.mount, followed by wsl --shutdown resolve the issue ?

This is probably the unit that's causing this behavior:
  tmp.mount                                                                  loaded active mounted Temporary Directory /tmp

Does running  systemctl mask tmp.mount, followed by wsl --shutdown resolve the issue ?

Tested this. This does not fix the issue.

Hello,
Is your systemd version 256(.2-1) ?
It seems systemd behaviour changed since version 255, somehow as if we are logged in the WSL instance before systemd is actually fully ready/started.
Maybe related, a systemd ticket that was closed as "WSL issue": https://github.com/systemd/systemd/issues/33483
Unexpectedly, when I enable the experimental autoMemoryReclaim setting (windows-side WSL configuration in .wslconfig), the issue does not appear to happen:
[experimental]
autoMemoryReclaim = gradual

Alternatively as a temporary workaround, you may try to revert to systemd 255 to confirm this is due to the 256 version.

Indeed:
systemd 256 (256.2-1-arch)
+PAM +AUDIT -SELINUX -APPARMOR -IMA +SMACK +SECCOMP +GCRYPT +GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBCRYPTSETUP_PLUGINS +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK +XKBCOMMON +UTMP -SYSVINIT +LIBARCHIVE

Where is this .wslconfig file?

In the user home directory (%UserProfile%), e.g. C:\Users\your-user-name.
By default the file is not there (all parameters have default values), so the first time you want to set a specific setting value, you have to create the file in this directory.
There are some details here.

This resolves the issue.

Glad to hear this also works for you.
I don't know what is exactly the underlying issue between WSL 2 and systemd 256.
Fixing it this way seems more like an unexpected side effect of enabling this setting, but at least, that's a workaround for now.

This is probably the unit that's causing this behavior:
  tmp.mount                                                                  loaded active mounted Temporary Directory /tmp

Does running  systemctl mask tmp.mount, followed by wsl --shutdown resolve the issue ?

@OneBlue this is what fixed the issue for me. Is this a new service?

In my environment, mounting /tmp with /etc/fstab solved the problem.
tmpfs   /tmp            tmpfs   rw,nodev,nosuid,noatime 0       0
tmpfs   /var/tmp        tmpfs   rw,nodev,nosuid,noatime 0       0

https://wiki.archlinux.org/title/Tmpfs#Disable_automatic_mount

Under systemd, /tmp is automatically mounted as a tmpfs, if it is not already a dedicated mountpoint (either tmpfs or on-disk) in /etc/fstab.

Closing since the issue is resolved.

@OneBlue How was this solved? In my understanding, the original issue is not resolved.
"Turning off feature X" wouldn't be a real solution for a problem in the behavior of X (where X corresponds to clearing /tmp in the present case, and the problem is the timing where this feature is triggered). Turning off feature X is needed for e.g. #1278 and #3406.
If "turning off feature X" would considered the solution, I'd like to request to remove the feature from WSL totally or at least turn the feature off by default (or was the feature of clearing /tmp already removed from WSL?).

WSL doesn't control whether systemd is enabled by default, this setting is controlled by distributions and their maintainers.
If a default systemd configuration mounts over /tmp during boot, this isn't something that WSL can "override", this is something that needs to be fixed on the distribution side.

I see. Then, it would be subtle where this should be fixed.

If a default systemd configuration mounts over /tmp during boot, this isn't something that WSL can "override",

Mounting over /tmp during boot is the expected behavior, and this is not actually what I expect WSL to override. As mentioned in https://github.com/microsoft/WSL/issues/11739#issuecomment-2229210158:

It seems systemd behaviour changed since version 255, somehow as if we are logged in the WSL instance before systemd is actually fully ready/started.

the problem is that the user processes start before the booting procedure of systemd is completed.
Who is responsible to this behavior of "starting programs with incomplete boot"? I wouldn't think this "starting programs with incomplete boot" is configured by the distributions, but is that the case? Or it might be the issue in systemd, but https://github.com/microsoft/WSL/issues/11739#issuecomment-2229210158 seems to suggest that the upstream systemd considers it to be the WSL issue:

Maybe related, a systemd ticket that was closed as "WSL issue": systemd/systemd#33483

Who is responsible to this behavior of "starting programs with incomplete boot"? I wouldn't think this "starting programs with incomplete boot" is configured by the distributions, but is that the case? Or it might be the issue in systemd, but #11739 (comment) seems to suggest that the upstream systemd considers it to be the WSL issue:

Thank you so much for this comment. This issue definitely needs more attention.

I had a look at this and created a new report: https://github.com/microsoft/WSL/issues/11857


I have this weird terminal glitch, please someone help

Whenever I run a program for the first time I get normal results in terminal

But on the second run and on I get this weird space and things seems really off

**and then if I turn vscode to window mode and then back to fullscreen it fixes it but what's causing the issue?

Does changing the terminal.integrated.gpuAcceleration setting help?


Add observers to Stitch

Immutability simply isn't performant enough for large games. I am re-adding observers and events to Stitch to solve this issue.
Observers should themselves be immutable though (see Rx)
Leaving this up as an issue for discussion on how this should be implemented

Added Signals in commit a319515771ac9439cfed1ad30ec17f28163e88b8
These should provide an easy way to interact with Stitch using observables

Thinking of using Quenty's Rx lib (https://github.com/Quenty/NevermoreEngine/tree/main/src/rx) as an example for how this should be implemented


Add support for session expiry to self-service tokens

Think this works - have added a kwarg to the decorator, self_service_session_expiry.

Will release as v0.8 once approved.

Solves #9


Support existing Keycloak instance

Thanks for the OIDC plugin and including a setup for Keycloak in this helm chart!
For those of us who already have existing Keycloak instances, it would be great to be able to leverage those by configuring the Keycloak component to point to our existing instance rather than deploying a new one.

@nealf - thanks for creating this issue. I agree that we should implement this feature. I am not sure when but I plan to add this feature soon. The final solution will allow for any OIDC Identity Provider, not just the an existing Keycloak instance.


Enhancement: Update localheinz/composer-normalize

This PR

[x] updates localheinz/composer-normalize

💁♂ For reference, see https://github.com/localheinz/composer-normalize/compare/0.6.0...0.9.0 (albeit that isn't quite true, as composer.lock is not committed).

60 commits without changelog is hard to catch up
please, target 2.12 LTS

@keradus
Good point, should probably start keeping a changelog!

@keradus @SpacePossum
Since this is admittedly the first time that I have written a changelog, perhaps you can take a look at https://github.com/localheinz/composer-normalize/pull/94 and let me know if this is good?
I would appreciate it!

Thank you @localheinz.


Unclear how to use use_sim_time

I haven't found in the documentation how to activate use_sim_time in rclc.
Any hints are appreciated. But in the end this should probably be a paragraph in the documentation or, depending on complexity, shown with an example.

i believe that currently rclc only supports the clock type with RCL_STEADY_TIME. probably we need to design the clock support for RCL_SYSTEM_TIME and RCL_ROS_TIME.

Based on reading the source I agree that rclc probably does not support RCL_ROS_TIME. However, I also learned, that I do not need it for my use case.
For everyone with a similar problem, I recommend the following:

If you msg files contain the ROS time, you might not need use_sim_time support. Remember, that time values can be in std_msgs/Header in a or multiple field(s) somewhere in your msg definition or somewhere deeply nested within complex fields.
If you need the ROS time, chances are that you can just subscribe to /clock using type rosgraph_msgs/msg/Clock. ros2 bag play --clock  uses a regular publisher to publish that message periodically (depending on a parameter when calling the binary and the play speed) and it can be read by a regular subscription. To transfer the value between the callbacks, you can save the value in a global variable, a pointer, a shared reference,  a closure or whatever your programming language offers.
If you want to kind of hide that subscriber, you can wrap it in a callback and call your real regular callback with the time as an additional argument.
The implementation of most of the ROS time is not done in rcl, but in the language-specific client libraries like rclcpp and rclpy. If you want to go down deep into the rabbit hole, it's implementing the subscription to /clock in a separate thread (possibly using pthreads) (otherwise ROS time never gets updated in a long running callback making ROS time only useful directly after the start of the callback which means the above solution should do) and updating all clocks which use ROS time (via a list of all such clocks like in an event listener and using synchronization mechanisms due to multithreading). The corresponding rclcpp code can be found in rclcpp time_source.cpp.


Ollama crashes on Llava on windows after passing image path

Ollama crashes when tried with this for llava
What's in this image? C:\Users\test\Downloads\pexels-oleksandr-p-321552.jpg

Hi there, would it be possible to share your machine specs? Thanks so much!

If you have the an image handy as well that causes the crash, that will help us debug.

Systeminfo:
ystem Type:               x64-based PC
OS Name:                   Microsoft Windows 10 Pro for Workstations
OS Version:                10.0.19045 N/A Build 19045
Processor(s):              2 Processor(s) Installed.
[01]: Intel64 Family 6 Model 85 Stepping 7 GenuineIntel ~2295 Mhz
[02]: Intel64 Family 6 Model 85 Stepping 7 GenuineIntel ~2295 Mhz
Windows Directory:         C:\Windows
System Directory:          C:\Windows\system32
Boot Device:               \Device\HarddiskVolume2
Total Physical Memory:     270,039 MB
Available Physical Memory: 254,649 MB
Virtual Memory: Max Size:  308,951 MB
Virtual Memory: Available: 292,091 MB
Virtual Memory: In Use:    16,860 MB
nvidia-smi:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 528.89       Driver Version: 528.89       CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Quadro RTX 4000    WDDM  | 00000000:2D:00.0  On |                  N/A |
| 30%   36C    P8    10W / 125W |    371MiB /  8192MiB |      6%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
link to image:
https://c4.wallpaperflare.com/wallpaper/26	9/758/332/funny-cats-wallpaper-preview.jpg
Command:
PS C:\Users\test> ollama run llava:34b

Whats in this image ? C:\Users\test\Downloads\funny-cats-wallpaper-preview.jpg
Added image 'C:\Users\test\Downloads\funny-cats-wallpaper-preview.jpg'
Error: Post "http://<IP_ADDRESS>:11434/api/chat": read tcp <IP_ADDRESS>:64261-><IP_ADDRESS>:11434: wsarecv: An existing connection was forcibly closed by the remote host.

Server Log:
[GIN] 2024/02/16 - 12:55:51 | 200 |   14.3987587s |       <IP_ADDRESS> | POST     "/api/chat"
[1708106151] all slots are idle and system prompt is empty, clear the KV cache
time=2024-02-16T12:56:03.377-05:00 level=DEBUG source=prompt.go:175 msg="prompt now fits in context window" required=796 window=2048
time=2024-02-16T12:56:03.377-05:00 level=DEBUG source=routes.go:1205 msg="chat handler" prompt="<|im_start|>system\n<|im_end|>\n<|im_start|>user\nWhats in this image ?  [img-0]<|im_end|>\n<|im_start|>assistant\n" images=1
time=2024-02-16T12:56:03.377-05:00 level=INFO source=dyn_ext_server.go:166 msg="loaded 1 images"
[1708106163] slot 0 - loaded image
[1708106163] slot 0 is processing [task id: 0]
[1708106163] slot 0 : kv cache rm - [0, end)
[1708106163] slot 0 - encoding image [id: 0]
CUDA error: out of memory
current device: 0, in function ggml_cuda_pool_malloc_vmm at C:\Users\jeff\git\ollama\llm\llama.cpp\ggml-cuda.cu:7834
cuMemSetAccess(g_cuda_pool_addr[device] + g_cuda_pool_size[device], reserve_size, &access, 1)
GGML_ASSERT: C:\Users\jeff\git\ollama\llm\llama.cpp\ggml-cuda.cu:241: !"CUDA error"
clip_model_load: model name:   openai/clip-vit-large-patch14-336
clip_model_load: description:  image encoder for LLaVA
clip_model_load: GGUF version: 3
clip_model_load: alignment:    32
clip_model_load: n_tensors:    377
clip_model_load: n_kv:         19
clip_model_load: ftype:        f16
clip_model_load: loaded meta data with 19 key-value pairs and 377 tensors from C:\Users\test.ollama\models\blobs\sha256-83720bd8438ccdc910deba5efbdc3340820b29258d94a7a60d1addc9a1b5f095
clip_model_load: Dumping metadata keys/values. Note: KV overrides do not apply in this output.
clip_model_load: - kv   0:                       general.architecture str              = clip
clip_model_load: - kv   1:                      clip.has_text_encoder bool             = false
clip_model_load: - kv   2:                    clip.has_vision_encoder bool             = true
clip_model_load: - kv   3:                   clip.has_llava_projector bool             = true
clip_model_load: - kv   4:                          general.file_type u32              = 1
clip_model_load: - kv   5:                               general.name str              = openai/clip-vit-large-patch14-336
clip_model_load: - kv   6:                        general.description str              = image encoder for LLaVA
clip_model_load: - kv   7:                        clip.projector_type str              = mlp
clip_model_load: - kv   8:                     clip.vision.image_size u32              = 336
clip_model_load: - kv   9:                     clip.vision.patch_size u32              = 14
clip_model_load: - kv  10:               clip.vision.embedding_length u32              = 1024
clip_model_load: - kv  11:            clip.vision.feed_forward_length u32              = 4096
clip_model_load: - kv  12:                 clip.vision.projection_dim u32              = 768
clip_model_load: - kv  13:           clip.vision.attention.head_count u32              = 16
clip_model_load: - kv  14:   clip.vision.attention.layer_norm_epsilon f32              = 0.000010
clip_model_load: - kv  15:                    clip.vision.block_count u32              = 23
clip_model_load: - kv  16:                     clip.vision.image_mean arr[f32,3]       = [0.481455, 0.457828, 0.408211]
clip_model_load: - kv  17:                      clip.vision.image_std arr[f32,3]       = [0.268630, 0.261303, 0.275777]
clip_model_load: - kv  18:                              clip.use_gelu bool             = false
clip_model_load: - type  f32:  235 tensors
clip_model_load: - type  f16:  142 tensors
clip_model_load: CLIP using CUDA backend
clip_model_load: text_encoder:   0
clip_model_load: vision_encoder: 1
clip_model_load: llava_projector:  1
clip_model_load: model size:     667.51 MB
clip_model_load: metadata size:  0.14 MB
clip_model_load: params backend buffer size =  667.51 MB (377 tensors)
clip_model_load: compute allocated memory: 33.75 MB

did anyone manage to find a solution to this bug?
thanks

cc @jmorganca @dhiltgen

Unfortunately it looks like our memory prediction algorithm didn't work correctly for this setup and we attempted to load too many layers into the GPU and it ran out of VRAM. We're continuing to improve our calculations to avoid this.
In the next release (0.1.29) we'll be adding a new setting that can allow you to set a lower VRAM setting to workaround this type of crash until we get the prediction logic fixed. OLLAMA_MAX_VRAM=<bytes> For example, I believe your GPUs is an 8G card, so you could start with 7G and experiment until you find a setting that loads the as many layers as possible without hitting the OOM crash. OLLAMA_MAX_VRAM=7516192768

Hi this should be improved now – memory estimation for image Llava models is much more accurate – please let me know if you're still seeing OOM errors.


Add Support for Scans in Arbitrary Orientations to DICOM Importer

Description
Sometimes cores are scanned in such a way that each file contains a rectangular/vertical slice instead of a radial/horizontal slice. The importers.dicom() function should be able to account for this.
Outcomes

[ ] Add inputs to importers.dicom() that allow the user to specify if the core needs to be rotated
[ ] Allow the user to specify if the core needs to be flipped vertically

Closed this issue since it's functionality is covered by the flip and rotate functions


(upstream) Prevent SocketRocket killing the connection before notifying of final messages

wrap NSStreamEventEndEncountered in dispatch_async _workQueue per upstream:
https://github.com/square/SocketRocket/pull/294
CLA completed

@vjeux can you assign this to whomever owns the iOS websocket debugger? SocketRocket needs to be updated.

@facebook-github-bot shipit


Is there a way to identify when the last row of a CSV file is consumed?

In some case I want to wait to have all the rows of the files to run some action (for example build a dataframe using the full CSV).
I tried to use the internal.kafka.reporter.topic but I can get a COMPLETED status before receiving the last row.

Hi @serioja,
Since Connect FilePulse 2.4.x, using the internal connect-file-pulse-status topic, you have a COMMITTED status which gives you the guarantee that all data in a file has been produced in Kafka.
Another solution could be to inject file offset metadata as Kafka record-headers, see https://streamthoughts.github.io/kafka-connect-file-pulse/docs/developer-guide/accessing-data-and-metadata/#record-offset
Using the $offset.endPosition and $metadata.size  should also help you. Basically, if $offset.endPositiion >= $metadata.size then record is the last one.
You can use the AppendFilter to add $offset.endPosition to the record-header.

Thank you for your quick answer. I will try these approaches.  For the first one, I have a doubt though: I may have COMMITTED but I will still receive some data after receiving the COMMITED event. I may be wrong, but I think I have observed this behaviour.
The second one should fit exactly my needs.


'Module 'path_provider' not found' error message when building in release mode

Problem:
When building my flutter app in debug mode, it compiles with no problems, but when i build it in release mode, the build fails and xcode reports the error as Module 'path_provider' not found.
I think that when i run flutter build ios it's not generating all the necessary files, however there is no error message when running this command, it seemingly succeeds...
Output of flutter doctor:

(I'm not using intelliJ)
The error message in xcode:

Contents of my Podfile:
# Uncomment this line to define a global platform for your project
platform :ios, '9.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'

project 'Runner', {
  'Debug' => :debug,
  'Profile' => :release,
  'Release' => :release,
}

def parse_KV_file(file, separator='=')
  file_abs_path = File.expand_path(file)
  if !File.exists? file_abs_path
    return [];
  end
  generated_key_values = {}
  skip_line_start_symbols = ["#", "/"]
  File.foreach(file_abs_path) do |line|
    next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
    plugin = line.split(pattern=separator)
    if plugin.length == 2
      podname = plugin[0].strip()
      path = plugin[1].strip()
      podpath = File.expand_path("#{path}", file_abs_path)
      generated_key_values[podname] = podpath
    else
      puts "Invalid plugin specification: #{line}"
    end
  end
  generated_key_values
end

target 'Runner' do
  use_frameworks!
  use_modular_headers!

  # Flutter Pod

  copied_flutter_dir = File.join(__dir__, 'Flutter')
  copied_framework_path = File.join(copied_flutter_dir, 'Flutter.framework')
  copied_podspec_path = File.join(copied_flutter_dir, 'Flutter.podspec')
  unless File.exist?(copied_framework_path) && File.exist?(copied_podspec_path)
    # Copy Flutter.framework and Flutter.podspec to Flutter/ to have something to link against if the xcode backend script has not run yet.
    # That script will copy the correct debug/profile/release version of the framework based on the currently selected Xcode configuration.
    # CocoaPods will not embed the framework on pod install (before any build phases can generate) if the dylib does not exist.

    generated_xcode_build_settings_path = File.join(copied_flutter_dir, 'Generated.xcconfig')
    unless File.exist?(generated_xcode_build_settings_path)
      raise "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first"
    end
    generated_xcode_build_settings = parse_KV_file(generated_xcode_build_settings_path)
    cached_framework_dir = generated_xcode_build_settings['FLUTTER_FRAMEWORK_DIR'];

    unless File.exist?(copied_framework_path)
      FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), copied_flutter_dir)
    end
    unless File.exist?(copied_podspec_path)
      FileUtils.cp(File.join(cached_framework_dir, 'Flutter.podspec'), copied_flutter_dir)
    end
  end

  # Keep pod path relative so it can be checked into Podfile.lock.
  pod 'Flutter', :path => 'Flutter'

  # Plugin Pods

  # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
  # referring to absolute paths on developers' machines.
  system('rm -rf .symlinks')
  system('mkdir -p .symlinks/plugins')
  plugin_pods = parse_KV_file('../.flutter-plugins')
  plugin_pods.each do |name, path|
    symlink = File.join('.symlinks', 'plugins', name)
    File.symlink(path, symlink)
    pod name, :path => File.join(symlink, 'ios')
  end
end

# Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system.
install! 'cocoapods', :disable_input_output_paths => true

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['ENABLE_BITCODE'] = 'NO'
    end
  end
end

The file view of my iOS folder in VSCode:

I've been opening xcode with the command 'open ios/Runner.xcworkspace/'
I've tried rebooting xcode, and my whole computer multiple times and I've tried running pod install from the ios folder several times; I always get a success message.
I'd really appreciate some advice as this is an issue that I've been stuck on for a couple of weeks!!

Hi @alicew104
Could you please run flutter upgrade --force.
If the issue persists, please provide your updated flutter doctor -v,
your flutter run--release --verbose,
your pubspec.yaml
and a minimal reproducible code sample.
Please refrain from posting pictures if not necessary.
Thank you

Same problem here, even after a clean up...

Hi @virgule-xyz
could you please provide the info listed above
Thank you

Hi, I have managed to fix this issue by creating a new flutter project, copying over my code, deleting the podfile and the podfile.lock and then running flutter clean. I think that perhaps I had fiddled about with the project so much whilst trying to fix it that there were lots of issues. Thank you for your help :-)

Hi @alicew104
I'm glad that you fixed the issue,
thank you for letting me know
@virgule-xyz
if following the steps provide by @alicew104 doesn't fix the issue for you
please file a new issue with the exact description of what happens, logs and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.
Thank you

Ok I'll give you a feedback as soon as I try again :)


oauth2 with nextcloud

https://docs.nextcloud.com/server/19/developer_manual/client_apis/LoginFlow/index.html#login-flow-v2
I try to configure the oidc (which base on oauth2) against a nextcloud instance.
When I use as issuervalue https://cloud.example.com/index.php/login/v2, I got an error
FATA[0000]oidc.go:39 failed to create oidc provider: oidc: failed to decode provider discovery object: expected Content-Type = application/json, got "text/html; charset=UTF-8": invalid character '<' looking for beginning of value
I'm a bit lost. Or is plain oauth2 not supported? Any chance to support it too?

Yeah the OIDC provider doesn't support plain old oauth2. We can open a feature request issue for oauth2 and I or perhaps someone from the community could help out adding it. Support for oauth2 should be straight forward because the current OIDC provider can be adapted for it.

We can open a feature request issue for oauth2 and I or perhaps someone from the community could help out adding it.

That would be awesome!


Update initialization to a Builder pattern

Reason
Simplify the initialization parameters
Description
Use the builder pattern to simplify the initialization process.
Each initialization parameter should be have its own setter and the initialize() method should be called after all parameters are set.
The calls should return the own builder instance to allow chaining multiple calls.
Success Criteria

[ ] initialization is done with builder pattern
[ ] docs updated

Additional Information
No response

changed


Pre authorize client applications using Managed Identity

[Enter feedback here]
Hello,
I was wondering how can we pre authorize a client application which is using Managed Identity? The reason being the application id (which is the managed identity service principal client id ) is not getting allowed.

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

ID: 23b434db-9091-da08-2c96-839d462bc114
Version Independent ID: 7bee76e7-acdc-5bc5-50ec-6004c73b9a95
Content: Configure an app to expose web APIs - Microsoft identity platform
Content Source: articles/active-directory/develop/quickstart-configure-app-expose-web-apis.md
Service: active-directory
Sub-service: develop
GitHub Login: @rwike77
Microsoft Alias: ryanwi

@arkaonelovemanu, There is no way you can pre-authorize users or servicePrincipals IDs, as the authorization is always happens based on the access-token that the application/user submits to the resource.
Though it would be great to know your end goal and the actual error so that we can check if there can be any other way to achieve your goal.

thanks for clarifying this, Sourav.  the end goal is machine to machine authentication using Managed Identity where both client and the server are apis . The server api is kind of a centralized service which is consumed by multiple clients. The client uses Managed Identity.
The known way to do this is by using approles and assigning them to the client using Powershell, the downside is we need an Admin grant every time a new client is created.
Is there any other way to achieve this?

@arkaonelovemanu, You can try using the below PowerShell Script. This script helps in granting the Admin Consent automatically for the scopes that you would specify in the script for a specific Application.
Note: Currently this script works for Microsoft Graph API, but it can be changed by modifying the $resourceID variable with appropriate ServicePrincipal id of the required API
Connect-AzureAD
$clientId = "" # ---> This App Id is used to request a token from AAD for performing the operation using client_credential flow.
$clientSecret = ""
$tenantId = ""

$tokenEndpoint = "https://login.microsoftonline.com/$TenantID/oauth2/v2.0/token"

$targetApp = Read-Host -Prompt "Enter Application Name (for which Admin Permissions to be granted) "
$targetAppid = (Get-AzureADApplication -SearchString $targetApp).AppId
$targetAppServicePrincipalID = (Get-AzureADServicePrincipal -All $true | where {$_.AppId -eq $targetAppid}).ObjectId

#Resource ID --> The who would be consuming the token for eg: the API.
#Here the $resourceID variable holds the value of GraphAggregatorService's ServicePrincipalID
$resourceID = "68edd7c9-8274-4a52-90c6-3d45aa573a4e"

$scope = "Group.Read.All, Directory.ReadWrite.All"

$TokenRequestBody = @{
    Grant_Type     = "client_credentials"
    Scope          = "https://graph.microsoft.com/.default"
    client_Id      = $clientId
    client_Secret  = $clientSecret
}

$Token = Invoke-RestMethod -Uri $tokenEndpoint -Method Post -Body $TokenRequestBody

#update the startTime and expiryTime in current UTC time
$apiBody = @{
    clientId    = $targetAppServicePrincipalID
    consentType = "AllPrincipals"
    principalId = $null
    resourceId  = $resourceID
    scope       = $scope
    startTime   = "2020-08-10T07:45:00Z"
    expiryTime  = "2020-08-10T10:37:00Z"
}

$apiHeader = @{
    Authorization = "$($Token.token_type) $($Token.access_token)"
}

$apiUrl = "https://graph.microsoft.com/beta/oauth2PermissionGrants"
Invoke-RestMethod -Uri $apiUrl -Headers $apiHeader -Method Post -Body $($apiBody | ConvertTo-Json) -ContentType "application/json" -Verbose

Hope this helps.
Do let us know if there are any further queries around this, so that we can help further.

@arkaonelovemanu , Closing this thread since no further response received.


Add Hour Spark Function

In Spark HOUR return the hour component of the string/timestamp.
This function takes timestamp as input args and returns a int32(diff from Presto return BigInt, it's Int type in Spark).

SELECT FUNC('2009-07-30 12:58:59'); => 12

You can find the implementation in https://github.com/apache/spark/blob/b74b1592c9ec07b3d29b6d4d900b1d3ba1417cd1/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/datetimeExpressions.scala?#L419-L424
And find related unit test in https://github.com/apache/spark/blob/b74b1592c9ec07b3d29b6d4d900b1d3ba1417cd1/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/DateExpressionsSuite.scala#L334-L363

Friendly ping, please take a look. @PHILO-HE

@PHILO-HE @rui-mo Thanks for both your review !!!
Comments has been amended. PTAL

Hi @mbasmanova, Rui and I have reviewed this pr. Could you spare some time to review further?

Hi @PHILO-HE @mbasmanova @rui-mo addressed comments, please take another review, thanks!


Update nf-evntrace-controltracew.md

fixed names of parameters

@Scottj1s : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Multiline doc comments not working properly

As I was building documentation w/ DocC and generating code (with docs) using Sourcery, I noticed that not all documentation comments are parsed correctly (and this may also affect parsed annotations). It seems the multiline doc comment style is not properly parsed. I've tried to outline some examples below. Thanks for having a look!
// sourcery: notWorkingAnnotation
/**
 These are doc comments
*/
func something() {}
...
// sourcery: workingAnnotation
/// These are doc comments
func somethingElse() {}
...
// sourcery: workingAnnotation
/// These are doc comments
/* Incorrectly appearing doc comments */
func somethingElse() {}

Relates to
https://github.com/krzysztofzablocki/Sourcery/issues/766
https://github.com/krzysztofzablocki/Sourcery/pull/1002

👋🏻 Hello,
thank you for reporting the issue @dan-stytch ,
it was quite tough to resolve, but easy to investigate.
#1293 resolves this.


[FSDE-30400] Fix file input js

https://ctl.atlassian.net/browse/FSDE-30400

@tjimenezLumen File input is missing functionality. Please add it and make it sure the file input component can load files.


[ci skip] adding user @YuuuXie

Hi! This is the friendly automated conda-forge-webservice.
I've added user @YuuuXie as instructed in #13.
Merge this PR to add the user. Please do not rerender this PR or change it in any way. It has [ci skip] in the commit message to avoid pushing a new build and so the build configuration in the feedstock should not be changed.
Please contact conda-forge/core to have this PR merged, if the maintainer is unresponsive.
Fixes #13

Hi @jan-janssen , thank you very much for adding me! I have one more question:
Although the current version our package is in pure python, now we have a following version which includes c++ code as well (not yet on pypi but will be released soon). I assume I can not just go ahead merging the update, I wonder if I need to go through any new review processes? Thanks!

The continuous integration won’t be able to merge it automatically, but we can rerender the recipe and add the missing dependencies. So feel free to release the new version on pypi then I can walk you through the process.

OK, that sounds great! Thank you!


[Typescript] Top-level array don't get generated

Hello there
I'm trying to use quicktype-core to generate typescript interfaces from the following JSON schema.
The input JSON schema
{
	"$schema": "http://json-schema.org/draft-06/schema#",
	"title": "TextClassificationOutput",
	"type": "array",
	"items": {
		"type": "object",
		"title": "TextClassificationOutputElement",
		"properties": {
			"label": {
				"type": "string",
			},
			"score": {
				"type": "number",
			}
		},
		"required": ["label", "score"]
	}
}

However, the generated Typescript types are not what I am expecting:

The "top-level" array type is not generated
The name for the "inner" object definition does not match the title attribute

The generated Typescript code
export interface TextClassificationOutput {
    label: string;
    score: number;
    [property: string]: any;
}

I am expecting something like this instead:
export type TextClassificationOutput = TextClassificationOutputElement[];

export interface TextClassificationOutputElement {
    label: string;
    score: number;
    [property: string]: any;
}

The code generation script (typescript)
import type { SerializedRenderResult } from "quicktype-core";
import { quicktype, InputData, JSONSchemaInput, FetchingJSONSchemaStore } from "quicktype-core";
import * as fs from "fs/promises";

async function generateTypescript(): Promise<SerializedRenderResult> {
        const schema = new JSONSchemaInput(new FetchingJSONSchemaStore());
	await schema.addSource({
		name: `text-generation-output`,
		schema: await fs.readFile(`./schema.json`, { encoding: "utf-8" }),
	});
	const inputData = new InputData();
	inputData.addInput(schema);

	return await quicktype({
		inputData,
		lang: "typescript",
		alphabetizeProperties: true,
		rendererOptions: {
			"just-types": true,
			"nice-property-names": true,
			"prefer-unions": true,
			"prefer-const-values": true,
			"explicit-unions": true,
			"runtime-typecheck": false,
		},
	});
}

I'm happy to contribute a fix to this, but I can't wrap my head around the naming attribution code, and I don't know where to start.
Some pointers would be greatly appreciated.

If you change:
name: `text-generation-output`,
to:
name: `#/definitions/`,
it should work!


New settings

I went ahead and updated this Pull request quite heavily. I separated the commits by purpose and optimized some code (such as removing unused/redundant code). I also added what i believe is the correct steam address for the current script.
Please review/test the PR now :)


Add note about loading image / audio files to docs

This PR adds a small note about how to load image / audio datasets that have multiple splits in their dataset structure.
Related forum thread: https://discuss.huggingface.co/t/loading-train-and-test-splits-with-audiofolder/22447
cc @NielsRogge

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Thanks for the feedback @polinaeterna ! I've reworded the docs a bit to integrate your comments and this should be ready for another review :)

I've just realized that there is another PR about audio documentation open: #4872
and there the more detailed description on how to use audiofolder is moved to another section ("Create an audio dataset")

Ah yes, let's add a comment to #4872 - that will be simpler than the alternatives :)

@polinaeterna @lhoestq What do you think about adding support for the metadata format from Kaggle (one metadata file for each split with the name equal to the split name) to ImageFolder/AudioFolder? I also think we can relax some requirements a bit by:

allowing filename as the name of the main metadata column (currently, only file_path is allowed)
not requiring that the features of all the given metadata files are equal. Instead, we can have a soft check by using _check_if_features_can_be_aligned + _align_features. The rationale is that train/val metadata often has extra columns compared to test metadata.

These changes would allow us to load the Kaggle dataset linked in the forum thread without any "interventions".

Can you give more details about the Kaggle format ? I'm down to discuss it in a separate issue if you don't mind.

allowing filename as the name of the main metadata column (currently, only file_path is allowed)

filename refers to the name of the file, so there's no logic about relative path or directories. If I recall correctly this is what we're doing right now so why not

not requiring that the features of all the given metadata files are equal. Instead, we can have a soft check by using _check_if_features_can_be_aligned + _align_features. The rationale is that train/val metadata often has extra columns compared to test metadata.

+1 and we can set to None the missing features

I'm not sure if this is worth opening a new issue :).
What I mean by the Kaggle format is the structure like this one (the name of a metadata file is equal to the directory it "references"):
- train
    - img1.jpeg
    - img2.jpeg
    - ...
- test
    - img1.jpeg
    - img2.jpeg
    - ...
- train.csv
- test.csv

@mariosasko +1 allowing different features set and metadata filenames corresponding to split names
Considering filename column - right now it's even called file_name now, which is not nice because in fact it's a relative file path indeed, so I think it should be file_path (and I don't know why I haven't thought about it before the release...)

@lewtun don't you mind if I close this pull request as I've integrated your changes in https://github.com/huggingface/datasets/pull/4872 ? (it doesn't have a link to a kaggle example though)