text:
add more things to success response, like status, header, maybe even allow it to be extended

For now success responses have only data, we could add more stuff, make it configurable, not sure it is needed though.

This is really critical.
It's mandatory to receive full response.
To provide a silly example, like when you need to read Authorization header to complete a login!
Just joking, but: Come on, don't make me patch it locally :D :D

@samueledirito I was afraid that header is a must. Usually people would return token in data, not response header, but indeed this sometimes happens.

It's mandatory to receive full response.

What response keys would you consider as a must? Apart from data
You might wonder why there is response.data only for now. In previous versions of this library actually I returned all response in sendRequest for instance or promisified request action. But I stored only data in reducer. It has to be consistent everywhere though in order to make SSR and cache work, as those just take response from reducer instead of making AJAX call. In reducer there is only data that's why I took 1 step back and reducer response only to data. Also, response has to be serializable, otherwise SSR wont work and future persistent cache wont work either.
So the questions are:

what response keys are worth storing in reducer
should we make this configurable or just drivers should by default include more than data
whether we should store some stuff for mutations, as mutations dont have data stored. In theory we could return more than data for mutation and not store those as cache and ssr is only for queries anyway

As you said, I think you're introducing a breaking change (removing complete response) due that before you provided it.
You haven't already extracted any interfaces between different drivers, so changing only redux-saga-requests-axios so that returns everything should be a problem (but a solution, really) for anyone.
In addition (my fault, I don't know well how SSR works), are you really sure that axios driver and SSR are related? Maybe it's just a potential problem that anyway will occur lesser than using it on CSR.

the problem is consistency, I want response to be the same read from reducer and from dispatched request and when reading from cache. Driver could return more than data but I want response to have the same shape everywhere, and more matter whether using cache and ssr or not, otherwise people will compain and bugs will occur. Thats why I need to have my questions answered before I think how to solve it.

Ok, I catch your point.
To resolve this, I think it could be good if Authorization header should be provided at less.
I can't imagine someone who uses your package (that is amazing!!!) and talks with a backend via custom headers :D It's really umpleasant :( :(

we need to be generic and flexible, so if headers, all headers should be there, no matter whether Authorization or not. Anything else apart from headers?

Not really, you'll save my day if you could open an alpha with headers only :D

do u use axios?

Yes!
If you need any help, we can chat via hangouts

@samueledirito for now you can use axios interceptor, sth like:
axios.interceptors.response.use(response => {
  if (!response.headers.Authorization) {
    return response;
  }

  // assuming that response.data is object, if not, adjust below
  return {
    ...response,
    data: { ...response.data, token: response.headers.Authorization }
  };
});

This will just add header information to data itself.

I'd have to say that I have not felt the need to use response headers per se, but sometimes I want to know status codes returned by the server, like if it's a 302 or something, you don't want that to be a real error - just something that gets ignored or reverted, so maybe you just wanna ignore that error... Not sure it's related, but it feels related.

Now axios and fetch drivers support status and headers in response next to data

authors: klis87 samueledirito zeraien


text:
[main] Upgrade to latest dependencies

after manual run -creydr
/cc knative-extensions/eventing-writers
/assign knative-extensions/eventing-writers
Produced by: knative-extensions/knobots/actions/update-deps

Build issues addressed in #3485

/retest

/retest

source: gharchive/pull-request

authors: creydr knative-automation

license_type: permissive

license_source: github-api


text:
Auto generate Triggers OIDC identity service account and expose in its status

Support auto generation of Triggers identity service account and expose in AuthStatus

Fixes #3521

Proposed Changes

Release Note

Support auto generation of Triggers identity service account and expose in AuthStatus

Docs

Hi @xiangpingjiang,
thanks a lot for your PR and working on this.
Can you add a test for this in control-plane/pkg/reconciler/trigger/trigger_test.go?
/ok-to-test

/retest

/retest

/retest

/retest

/retest

/retest

/retest-required

/retest

/retest

/retest

Hello @xiangpingjiang, thanks for your PR. When I tested it, I didn't see a service account created for a trigger and the kafka-controller was crashing. Can you check on it? And we should add some logic to reconcile triggers, if the features config map gets updated. e.g. for the following:

disabled -> enabled: create sa and set .status.auth
enabled -> disabled: clear .status.auth (depending on how fast Remove OIDC service account, when OIDC feature is disabled again knative/eventing#7570 gets in, you can also add/reuse the logic from there to remove the service account again)

Hello, @creydr
Where I can find a simple example to show how to use the eventing-kafka-broker?
I have read the doc https://knative.dev/docs/eventing/brokers/broker-types/kafka-broker/  , but didn't find it.

Hi @xiangpingjiang,
https://github.com/knative-extensions/eventing-kafka-broker/blob/main/DEVELOPMENT.md#installation provides useful information how to install EKB (and general developement information).
After the cluster is setup with EKB, you can create a broker & trigger the usual way. e.g. via
apiVersion: eventing.knative.dev/v1
kind: Broker
metadata:
  annotations:
    eventing.knative.dev/broker.class: Kafka
  name: my-kafka-broker

or via the kn client with kn broker create my-kafka-broker --class Kafka.
If the docs are not clear or you miss anything, feel free to update them or create an issue with what's missing so we can improve it.

hello @creydr We have a quickstart for eventing https://knative.dev/docs/getting-started/first-source/ Do we have something similar for using EKB?

Hey @xiangpingjiang,
the quickstart for eventing is about how to develop a source in general. Not sure what you have in mind for EKB here, but probably something to bring up in a Workgroup meeting?

hello @creydr We have a quickstart for eventing https://knative.dev/docs/getting-started/first-source/ Do we have something similar for using EKB?

Hey @xiangpingjiang, the quickstart for eventing is about how to develop a source in general. Not sure what you have in mind for EKB here, but probably something to bring up in a Workgroup meeting?

@creydr
For example.  After installing kafka-broker https://knative.dev/docs/eventing/brokers/broker-types/kafka-broker/#installation  ,  how to create a broker and a trigger , and set the source and sink to run a simple demo

Hi @xiangpingjiang,
do you need any more info to proceed with this?

Hi @xiangpingjiang, do you need any more info to proceed with this?

Hello @creydr
It's ok for now. Thank you

/retest

/retest

/retest-required

seems to be a flake
    steps.go:47: sources.knative.dev/v1beta1, Resource=kafkasources did not become ready, timed out waiting for the condition
--- FAIL: TestKnativeKafkaCloudEventExtensionsAdded/KnativeKafkaCEExtensionsAdded/sourceAddsKnativeKafkaCEExtensions/Setup/kafka_source_is_ready (127.37s)

/retest-required

--- FAIL: TestTriggerNoFinalizer/0/triggerNoFinalizerOnBrokerNotFound/Assert/eventually_trigger_has_no_finalizer (20.03s)

Flake AFAIK
/retest-required

/retest-required

/retest-required

/retest-required

FAIL test/e2e_new.TestTriggerNoFinalizer/0 (814.26s)

/retest

/test reconciler-tests

/test reconciler-tests

/retest-required

/retest-required

/retest-required

/retest-required

authors: Leo6Leo creydr xiangpingjiang


text:
[release-1.2] Remove skipped test

Remove test that is anyways skipped, no where used -and hard coded to the "consolidated" dispatcher.

/cherry-pick release-1.4

/cherry-pick main

/retest

/retest

/close

repo: knative-sandbox/eventing-kafka

license_source: bigquery


text:
:broom: Accommodate to knative-sandbox/reconciler-test#294

Proposed Changes

:broom: Accommodate to knative-sandbox/reconciler-test#294

/cc @knative-sandbox/eventing-writers
/cc @knative-sandbox/eventing-kafka-approvers

/cc @knative-sandbox/eventing-writers

/cc @knative/eventing-writers

I'm kind of out of the picture these days and was hoping another code-owner would take a look, but am happy to un-block you.  I did a super quick review of the changes to make sure it wasn't malicious ; ) but haven't put any real thought into the changes.
/approve
/lgtm

authors: cardil travis-minke-sap


text:
[Channel] Set defaults of spec.delivery

Like https://github.com/knative/eventing/pull/5748 but for KafkaChannel.
Proposed Changes

[Channel] Set defaults of spec.delivery
Upgrade eventing to main go get -u knative.dev/eventing@main
Add delete permissions to channelable manipulator cluster role

Eventing controller needs to delete channels when a step in
a sequence is removed.

knative/eventing#5718

Release Note

The field `spec.delivery.deadLetterSink.ref.namespace` for KafkaChannel if not specified is defaulted to `metadata.namespace`.

/kind enhancement
/assign @aliok @matzew

/cherry-pick release-0.25

/cherry-pick release-0.26


text:
[main] Upgrade to latest dependencies

Cron -knative-prow-robot
/cc knative-sandbox/source-wg-leads
/assign knative-sandbox/source-wg-leads
Produced by: knative-sandbox/knobots/actions/update-deps
Details:
bumping knative.dev/pkg d9b7180...21eb4c1:
  > 21eb4c1 Bump assorted dependencies to their latest versions (# 2205)
  > 552bbc1 Support the webhook serving over non-TLS. (# 2204)
  > 64ab22b k8s-service-trailing-slash-fix (# 2178)
  > c367a9d Drop Client as it is only used in tests (# 2203)
  > bb4aaf0 Ignore special errors in codegen for events (# 2202)
  > 3826bb2 Add a new mechanism for requeuing a key. (# 2201)
  > 889b567 Update community files (# 2199)
  > 842df75 Update community files (# 2196)
  > fa8095f Use default Kubeconfig loading rules (# 2197)
bumping knative.dev/eventing 48112db...8551625:
  > 8551625 Update actions (# 5627)
  > 5c7b553 update deps (# 5625)
  > 7d502ca Only reconcile CRDs labeled with the duck key/value (# 5601)
  > a8a3063 Run conformance tests as project admin (# 5596)
  > 486c349 fix metrics md page (# 5615)
  > d32eb86 Update CODE_OF_CONDUCT.md (# 5616)
  > 1f48ef0 Revert "if no kubeconfig use inclusterconfig test (# 5603)" (# 5613)
  > 699a33b Improve security-related config in more yaml files (# 5612)
  > ea859aa Improve security-related config in yaml files (# 5611)
  > d3e8af1 upgrade to latest dependencies (# 5606)
  > d9b4354 Update community files (# 5602)
  > dcbb9af Fix the link to the Working Group page. (# 5610)
  > a005619 Add health endpoint to event_display server (# 5608)
  > 7251c1b if no kubeconfig use inclusterconfig test (# 5603)
  > 003a8a2 upgrade to latest dependencies (# 5595)

/approve
/lgtm

authors: knative-automation lionelvillard

repo: knative-sandbox/eventing-prometheus


text:
Add k8s recommended labels

Changes
Adds Kubernetes recommended labels to networking as discussed in https://github.com/knative/networking/issues/552
Note that changes to the labels in vendor/knative.dev/networking should be handled by the automation once https://github.com/knative/networking/pull/555 merges.
/kind enhancement

blah sorry wrong tab - geez

/lgtm
/approve

authors: dprotaso psschwei


text:
For sharedmain zap's Fatal should deterministically calculate the POSIX return code

/area test-and-release
/kind feature
Actual Behavior
The Zap's Fatal method is calling os.Exit(1) regardless of a message. This isn't the best UX choice. The POSIX return code could be used for quick assessment about a process failure. When the retcode is always equal 1 for any error, this can't be utilized.
Tools like Docker or Kubernetes report back the return code of the process. By using a deterministic algorithm to calculate the POSIX return code, a quick debugging is possible. Users could indicate if the process is failing because of the same reason, without looking into logs.
Expected Behavior
The best would be to rely on Fatal's message or on an error object if it's attached as a Field.
Additional Info
Related to https://github.com/uber-go/zap/issues/1086

Going to close this out - see the comments on the PR. I think this will be confusing for users as certain exit codes have specific meanings.
I think the better approach would be to ensure we write to the k8s termination path
see: https://kubernetes.io/docs/tasks/debug/debug-application/determine-reason-pod-failure/

source: gharchive/issue

authors: cardil dprotaso

repo: knative/pkg


text:
Make Stackdriver metrics exporter watch Stackdriver Secret

Follow-up to enhance #824
Goal is to have this in by Nov 15, 2019.
Expected Behavior
The metrics Stackdriver exporter can support reading a k8s Secret to configure the Stackdriver client with for authentication.
When the specified Stackdriver Secret for Stackdriver metrics exporter changes (same name/namespace, but is modified in-place), the Stackdriver exporter should be re-created with the new Secret for authenticating to Stackdriver.
Actual Behavior
Stackdriver exporter continues on with the original Secret until the next metrics ConfigMap update that triggers an exporter update.
Steps to Reproduce the Problem

Run Knative on GKE
Add a GCP service account credential as a k8s Secret named "stackdriver-service-account-key" to "knative-serving" namespace
Set "metrics.backend-destination" in "config-observability" to "stackdriver"
Set "metrics.stackdriver-use-secret" in "config-observability" to "true"
Check the container logs for a "knative-serving" namespace Knative controller, see that the metrics exporter has updated and the config includes "stackdriver" and "true"
Update the k8s Secret however you feel
Check the same container logs, see there is no new metrics exporter update.

/assign @anniefu

Closing this issue since it will become obsolete with the new metrics plan to use the opencensus agent exporter to export to the OpenCensus collector service: https://github.com/knative/pkg/blob/master/metrics/README.md


text:
Fix badge svg for GH-action workflows

Changes

Use new url for GH action badges

Fixes #257

@pierDipi  done, also here in action: https://github.com/knative/release/issues/247

repo: knative/release


text:
Use cargo-auditable

Building with cargo-auditable will allow consumers to run cargo-audit on the released binaries if they like, to help secure their software supply pipeline.

Following the couple of steps in the readme did not work so... gonna close this unless someone really wants it.

repo: knope-dev/knope

license: MIT


text:
When xchartpanel is embedded in JScrollPane, the lines of the line graph will overflow from the panel

My program uses a JScrollPane to load the line chart,  this will adapt to the screen better. But the line will exceed the  data area when the  scrollpane  is smaller than  chart. Here's my code:
import org.knowm.xchart.XChartPanel;
import org.knowm.xchart.XYChart;
import org.knowm.xchart.demo.charts.ExampleChart;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.border.EmptyBorder;
public class ScrollPaneTest extends JFrame{

        private JPanel fatherPane;

        private JPanel contentPane;

        private JScrollPane scrollPane;

        private JTextArea textArea;

        public ScrollPaneTest() {
            fatherPane = new JPanel();
            contentPane = new JPanel();
            fatherPane.add(contentPane);
            fatherPane.setLayout(new GridLayout(1, 2));
            fatherPane.setPreferredSize(new Dimension(800,   350));
            contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
            contentPane.setLayout(new BorderLayout(0, 0));
            this.setContentPane(contentPane);

            textArea=new JTextArea();
            fatherPane.add(textArea);
            scrollPane = new JScrollPane();
            fatherPane.add(scrollPane);
            contentPane.add(fatherPane, BorderLayout.CENTER);
            ExampleChart<XYChart> exampleChart = new LineChart01();
            XYChart chart = exampleChart.getChart();
            XChartPanel<XYChart> chartPanel = new XChartPanel<>(chart);
            scrollPane.setViewportView(chartPanel);
            this.setTitle("scroll panel");
            this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            this.setBounds(100, 100, 500, 350);
            this.setVisible(true);
    }

    public static void main(String []args){
        ScrollPaneTest example=new ScrollPaneTest();

    }

}

I test many times for this, but did not find any effect solution, does XChart support JScrolPane feature?:grinning:

@bbigcookie Try it with the latest version.

Update it to 3.6.3  version, it works. Thanks.

repo: knowm/XChart


text:
ctx wasn't able to return after set in other callback function

I used the below code, the last line doesn't work in callback function of getall. there is no any response was return.
router.get('/',function (ctx, next) {
getall(function(result){
console.log('result===>',result);
ctx.body=result;
}
}
but I move the last line in out of the getall, it may return a response correctly.

router.get('/', function(ctx, next) {
	return new Promise(function(resolve, reject) {
		getall(function(result) {
			console.log('result===>', result);
			ctx.body = result;
			resolve();
		})
	});
})

koa send http response immediately when sync middleware called.
If there has async code in the middleware, the middleware should be async function or return a Promise

as @liangxingchen stated, you aren't doing control flow properly. middleware should always be returning a promise in koa v2

Yes, it works. Thanks

authors: jonathanong liangxingchen xinshouke

repo: koajs/koa


text:
Add note to cookies usage.

Putting a note to cookies usage before others using cookies like this way:
ctx.cookies.set('foo', 'bar');
ctx.cookies.get('foo') !== 'bar'

+0
This may seem redundant.

authors: dead-horse liuyanghejerry


text:
Chrome extension not working with Next.js v11

Trying to get this working with Next.js 11+ and not having any luck.
I downloaded and ran the example site, but when I upgraded it from Next 10.0.6 -> 11.0.0 the Chrome extension stopped working (it just shows "Haven't received any cache data from SWRDevTools"). The React panel continues to work as expected after the upgrade. Tried to figure out what is going wrong, but no luck.
Love the promise of this package! Thanks for all of your work on it, it's the biggest thing I'm missing with SWR.

Thank you for reporting the issue! I'll test it on Next.js v11 and v12.

I've confirmed that this has been fixed with webpack5: false in next.config.js, so I have to make swr-devtools webpack v5 compatible.

The middleware of SWRDevtools seems not to be called with Next.js v11.

@modbp I've fixed it and released it as v0.4.0, so could you test the version?
https://github.com/koba04/swr-devtools/releases/tag/v0.4.0
If your application still doesn't work, please confirm that it only includes single swr in your bundle.

Hi @koba04, looks like it's all worrying now on my end. 🎉🎉🎉
Thank you so much for addressing this issue!


text:
Create newFile

adding new file

good


text:
Remove onchain id

The link does not work anyway, lol
https://github.com/kodadot/nft-gallery/assets/90852205/04c3ede4-d7cc-4d58-98da-f56e5e95a4a9
If anyone asks, there are alternatives:

https://support.polkadot.network/support/solutions/articles/65000181981-how-to-set-and-clear-an-identity

task

remove it
say bye

👋🏻

repo: kodadot/nft-gallery


text:
Add historical activity for particular user profile -- timeline

Start easy adding events for a particular address to show which item has address interacted.
Probably to particular whale directory #1165  related would be nice to estimate the daytime activity of particular address when the address has doing the on-chain activity.
Could be extended for the History component at profile? Like done https://github.com/kodadot/nft-gallery/issues/2346
💡 Open.
It would work as history sales feed for collections yet it would be on top of profile.
Inspired by nansen Alex.
Ref

inspired how block explorer works https://kusama.subscan.io/account/G29NScLSew5zqwmJAPupvJWDCDkpxKUhDnMeVdD2BBcnHar

I will take this

authors: MSghais yangwao


text:
Sorting - happening only for 1 page

Sorting: if you click on Explore - after clicking on the top of the column (for example, sort by Price), it will sort offers only on the open page. However, the price should be sorted based on all the items (on all pages), not only one page. This way, you see the highest price only on the open page - the most expensive items can still stay "hidden" on the other pages.

Originally posted by @JustLuuuu in https://github.com/kodadot/nft-gallery/issues/3562#issuecomment-1195261907

👋


text:
glb, gltf model viewer on create

As a User, I want to see the (3D) preview of what I'm going to mint
small package if possible or reuse google/model-viewer

similar to this #3273?

Oops!


text:
expanded container color v2

its happening again on kodadot.xyz
Description in #4342

Hey @exezbcz, when issue closed and PR merged refer to beta.kodadot.xyz not kodadot.xyz (production)
@yangwao will make a new release in the upcoming days

Hey @exezbcz, when issue closed and PR merged refer to beta.kodadot.xyz not kodadot.xyz (production) @yangwao will make a new release in the upcoming days

Ic, my bad, thanks!

authors: exezbcz roiLeo


text:
the headers set for the video link seem not work properly

the data returned by getVideoList(JavaScript):
[{"url":"https://v.ddys.pro/v/Anime/Shuumatsu_Train_DokoeIku/Shuumatsu_Train_DokoeIku_S01E01.mp4","originalUrl":"https://v.ddys.pro/v/Anime/Shuumatsu_Train_DokoeIku/Shuumatsu_Train_DokoeIku_S01E01.mp4","quality":"1080P","headers":{"Referer":"https://ddys.pro","Origin":"https://ddys.pro"}}]

and the url can be played in mpv

Are you sure because it works properly

I tried another website and the headers settings are indeed fine.

authors: Ftbom kodjodevf

repo: kodjodevf/mangayomi


text:
Start floating windows in defined grid layout

I've set floating windows to assume a position via grid layout in.skhdrc:
alt - t : chunkc tiling::window --toggle float;\
          chunkc tiling::window --grid-layout 5:6:2:1:2:3

Wondering how to make the floating windows given the state on startup in the same way in .chunkwmrc:
chunkc tiling::rule --owner \"WhatsApp\" --state float

Usually windows simply remind their last position and size when starting, but the electron framework chooses to override this behaviour (and as such applications that are built on-top of electron, like WhatsApp). There is currently no such solution available in chunkwm as far as I know.

I do also experience with native apps though where it will start in a weird size in the corner of the screen but when I un-toggle float then toggle it again then it gets into the expected position. It tends to happen when waking my mac from sleep?

authors: dominiklohmann stevebasford

repo: koekeishiya/chunkwm

license: mit


text:
Animation delay resets animation to initial property

The delay property seems to ignore the current state of the layer it's animating. It always animates from the property it had when the method was first fired. I guess this is expected, but I'm not sure if it has any practical use? It feels a bit unintuitive. Here's an example of the resetting action (in this case resets to y:0 when the second animation kicks in) :
imageLayer2 = new Layer x: 300

imageLayer2.animate
	properties:
		y: 70

imageLayer2.animate
	properties:
		y: 150
		opacity: 0.5
	delay: 0.5

And here's my workaround (or how I would prefer it to work). It continues from y=70:
imageLayer = new Layer

down = new Animation
	layer: imageLayer
	properties:
		y: 70

moredown = new Animation
	layer: imageLayer
	properties:
		y: 150
		opacity: 0.5

down.start()
utils.delay(0.5, -> moredown.start())

This one is similar to #252, please add anything related to this there.

repo: koenbok/Framer


text:
Enable Training on 6GB Cards... with DeepSpeed?

I am trying to squeeze training onto my 6GB laptop RTX 2060, and cant quite manage it with the "low memory" config:
accelerate launch --num_cpu_threads_per_process 8 train_db.py \
--pretrained_model_name_or_path="/home/alpha/Storage/AIModels/Stable-diffusion/panatomy05full_0.7-AIModels_Anything-V3.0-pruned-fp16_0.3-Weighted_sum-merged.ckpt" \
--train_data_dir="/home/alpha/Storage/TrainingData/test/training_data" \
--output_dir="/home/alpha/Storage/TrainingOutput/test/" \
--prior_loss_weight=1.0 \
--resolution=512 \
--train_batch_size=1 \
--learning_rate=1e-6 \
--max_train_steps=1600 \
--use_8bit_adam \
--xformers \
--mixed_precision="fp16" \
--cache_latents \
--gradient_checkpointing \
--save_precision="fp16" \
--full_fp16 \
--save_model_as="safetensors" \

So, I figured I would investigate Deepspeed cpu offloading with the accelerate config... but I keep running into errors on both the git version and the 0.7.7 release from pypi. Here is an error from the pypi release:
Traceback (most recent call last):
  File "/home/alpha/clone/sd-scripts/train_db.py", line 332, in <module>
    train(args)
  File "/home/alpha/clone/sd-scripts/train_db.py", line 154, in train
    unet, text_encoder, optimizer, train_dataloader, lr_scheduler = accelerator.prepare(
  File "/home/alpha/.local/lib/python3.10/site-packages/accelerate/accelerator.py", line 619, in prepare
    result = self._prepare_deepspeed(*args)
  File "/home/alpha/.local/lib/python3.10/site-packages/accelerate/accelerator.py", line 805, in _prepare_deepspeed
    engine, optimizer, _, lr_scheduler = deepspeed.initialize(**kwargs)
  File "/home/alpha/.local/lib/python3.10/site-packages/deepspeed/__init__.py", line 125, in initialize
    engine = DeepSpeedEngine(args=args,
  File "/home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/engine.py", line 330, in __init__
    self._configure_optimizer(optimizer, model_parameters)
  File "/home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/engine.py", line 1210, in _configure_optimizer
    self.optimizer = self._configure_zero_optimizer(basic_optimizer)
  File "/home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/engine.py", line 1455, in _configure_zero_optimizer
    optimizer = DeepSpeedZeroOptimizer(
  File "/home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/zero/stage_1_and_2.py", line 532, in __init__
    self._param_slice_mappings = self._create_param_mapping()
  File "/home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/zero/stage_1_and_2.py", line 544, in _create_param_mapping
    lp_name = self.param_names[lp]
KeyError: <exception str() failed>
[2023-01-12 13:13:52,241] [INFO] [launch.py:318:sigkill_handler] Killing subprocess 5398
[2023-01-12 13:13:52,244] [ERROR] [launch.py:324:sigkill_handler] ['/usr/bin/python', '-u', 'train_db.py', '--pretrained_model_name_or_path=/home/alpha/Storage/AIModels/Stable-diffusion/panatomy05full_0.7-AIModels_Anything-V3.0-pruned-fp16_0.3-Weighted_sum-merged.ckpt', '--train_data_dir=/home/alpha/Storage/TrainingData/test/training_data', '--output_dir=/home/alpha/Storage/TrainingOutput/test/', '--prior_loss_weight=1.0', '--resolution=512', '--train_batch_size=1', '--learning_rate=1e-6', '--max_train_steps=1600', '--use_8bit_adam', '--xformers', '--mixed_precision=fp16', '--cache_latents', '--gradient_checkpointing', '--save_precision=fp16', '--full_fp16', '--save_model_as=safetensors'] exits with return code = 1
Traceback (most recent call last):
  File "/home/alpha/.local/bin/accelerate", line 8, in <module>
    sys.exit(main())
  File "/home/alpha/.local/lib/python3.10/site-packages/accelerate/commands/accelerate_cli.py", line 43, in main
    args.func(args)
  File "/home/alpha/.local/lib/python3.10/site-packages/accelerate/commands/launch.py", line 827, in launch_command
    deepspeed_launcher(args)
  File "/home/alpha/.local/lib/python3.10/site-packages/accelerate/commands/launch.py", line 540, in deepspeed_launcher
    raise subprocess.CalledProcessError(returncode=process.returncode, cmd=cmd)
subprocess.CalledProcessError: Command '['deepspeed', '--no_local_rank', '--num_gpus', '1', 'train_db.py', '--pretrained_model_name_or_path=/home/alpha/Storage/AIModels/Stable-diffusion/panatomy05full_0.7-AIModels_Anything-V3.0-pruned-fp16_0.3-Weighted_sum-merged.ckpt', '--train_data_dir=/home/alpha/Storage/TrainingData/test/training_data', '--output_dir=/home/alpha/Storage/TrainingOutput/test/', '--prior_loss_weight=1.0', '--resolution=512', '--train_batch_size=1', '--learning_rate=1e-6', '--max_train_steps=1600', '--use_8bit_adam', '--xformers', '--mixed_precision=fp16', '--cache_latents', '--gradient_checkpointing', '--save_precision=fp16', '--full_fp16', '--save_model_as=safetensors']' returned non-zero exit status 1.

Is there anything in particular that needs to be changed for this repo to support deepspeed? Or maybe there is some other tweak to squeeze LORA onto 6GB?

Tried upgrading accelerate and downgrading pytorch to 1.13.1, still no dice:
╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
│ /home/alpha/clone/sd-scripts/train_db.py:332 in <module>                                         │
│                                                                                │
│   329 │   │   │   │   │     help="steps to stop text encoder training, -1 for no training / Te   │
│   330                                                                                │
│   331   args = parser.parse_args()                                                               │
│ ❱ 332   train(args)                                                                              │
│   333                                                                                │
│                                                                                │
│ /home/alpha/clone/sd-scripts/train_db.py:154 in train                                            │
│                                                                                │
│   151                                                                                │
│   152   # acceleratorがなんかよろしくやってくれるらしい                                          │
│   153   if train_text_encoder:                                                                   │
│ ❱ 154 │   unet, text_encoder, optimizer, train_dataloader, lr_scheduler = accelerator.prepare(   │
│   155 │   │   unet, text_encoder, optimizer, train_dataloader, lr_scheduler)                     │
│   156   else:                                                                                │
│   157 │   unet, optimizer, train_dataloader, lr_scheduler = accelerator.prepare(unet, optimize   │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/accelerate/accelerator.py:872 in prepare         │
│                                                                                │
│    869 │   │   │   old_named_params = self._get_named_parameters(*args)                          │
│    870 │   │                                                                                │
│    871 │   │   if self.distributed_type == DistributedType.DEEPSPEED:                            │
│ ❱  872 │   │   │   result = self._prepare_deepspeed(*args)                                       │
│    873 │   │   elif self.distributed_type == DistributedType.MEGATRON_LM:                        │
│    874 │   │   │   result = self._prepare_megatron_lm(*args)                                     │
│    875 │   │   else:                                                                             │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/accelerate/accelerator.py:1093 in                │
│ _prepare_deepspeed                                                                               │
│                                                                                │
│   1090 │   │   │   │   │   │   if type(scheduler).__name__ in deepspeed.runtime.lr_schedules.VA  │
│   1091 │   │   │   │   │   │   │   kwargs["lr_scheduler"] = scheduler                            │
│   1092 │   │   │                                                                                │
│ ❱ 1093 │   │   │   engine, optimizer, _, lr_scheduler = deepspeed.initialize(**kwargs)           │
│   1094 │   │   │   if optimizer is not None:                                                     │
│   1095 │   │   │   │   optimizer = DeepSpeedOptimizerWrapper(optimizer)                          │
│   1096 │   │   │   if scheduler is not None:                                                     │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/deepspeed/__init__.py:125 in initialize          │
│                                                                                │
│   122 │   assert model is not None, "deepspeed.initialize requires a model"                      │
│   123 │                                                                                │
│   124 │   if not isinstance(model, PipelineModule):                                              │
│ ❱ 125 │   │   engine = DeepSpeedEngine(args=args,                                                │
│   126 │   │   │   │   │   │   │   │    model=model,                                              │
│   127 │   │   │   │   │   │   │   │    optimizer=optimizer,                                      │
│   128 │   │   │   │   │   │   │   │    model_parameters=model_parameters,                        │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/engine.py:330 in __init__      │
│                                                                                │
│    327 │   │   │   model_parameters = self.module.parameters()                                   │
│    328 │   │                                                                                │
│    329 │   │   if has_optimizer:                                                                 │
│ ❱  330 │   │   │   self._configure_optimizer(optimizer, model_parameters)                        │
│    331 │   │   │   self._configure_lr_scheduler(lr_scheduler)                                    │
│    332 │   │   │   self._report_progress(0)                                                      │
│    333 │   │   elif self.zero_optimization():                                                    │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/engine.py:1210 in              │
│ _configure_optimizer                                                                             │
│                                                                                │
│   1207 │   │   optimizer_wrapper = self._do_optimizer_sanity_check(basic_optimizer)              │
│   1208 │   │                                                                                │
│   1209 │   │   if optimizer_wrapper == ZERO_OPTIMIZATION:                                        │
│ ❱ 1210 │   │   │   self.optimizer = self._configure_zero_optimizer(basic_optimizer)              │
│   1211 │   │   elif optimizer_wrapper == AMP:                                                    │
│   1212 │   │   │   amp_params = self.amp_params()                                                │
│   1213 │   │   │   log_dist(f"Initializing AMP with these params: {amp_params}", ranks=[0])      │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/engine.py:1455 in              │
│ _configure_zero_optimizer                                                                        │
│                                                                                │
│   1452 │   │   │   │   │   │   "Pipeline parallelism does not support overlapped communication,  │
│   1453 │   │   │   │   │   )                                                                     │
│   1454 │   │   │   │   │   overlap_comm = False                                                  │
│ ❱ 1455 │   │   │   optimizer = DeepSpeedZeroOptimizer(                                           │
│   1456 │   │   │   │   optimizer,                                                                │
│   1457 │   │   │   │   self.param_names,                                                         │
│   1458 │   │   │   │   timers=timers,                                                            │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/zero/stage_1_and_2.py:532 in   │
│ __init__                                                                                │
│                                                                                │
│    529 │   │                                                                                │
│    530 │   │   self._link_all_hp_params()                                                        │
│    531 │   │   self._enable_universal_checkpoint()                                               │
│ ❱  532 │   │   self._param_slice_mappings = self._create_param_mapping()                         │
│    533 │                                                                                │
│    534 │   def _enable_universal_checkpoint(self):                                               │
│    535 │   │   for lp_param_group in self.bit16_groups:                                          │
│                                                                                │
│ /home/alpha/.local/lib/python3.10/site-packages/deepspeed/runtime/zero/stage_1_and_2.py:544 in   │
│ _create_param_mapping                                                                            │
│                                                                                │
│    541 │   │   │   param_mapping_per_group = OrderedDict()                                       │
│    542 │   │   │   for lp in self.bit16_groups[i]:                                               │
│    543 │   │   │   │   if lp._hp_mapping is not None:                                            │
│ ❱  544 │   │   │   │   │   lp_name = self.param_names[lp]                                        │
│    545 │   │   │   │   │   param_mapping_per_group[                                              │
│    546 │   │   │   │   │   │   lp_name] = lp._hp_mapping.get_hp_fragment_address()               │
│    547 │   │   │   param_mapping.append(param_mapping_per_group)                                 │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯

Hi, Unfortunately I have no experience about DeepSpeed.
However, you seem to run train_db.py. It is intended to train DreamBooth. If you want to train LoRA, please use train_network.py (some argments should be modified.) LoRA training might be work with 6GB VRAM without full_fp16 option.

🤦 I knew train_network.py was LORA, but I apparently copy pasted the wrong file.
I figured full-fp16 would reduce VRAM usage, but I will leave it out if thats not the case.

Yeah, looks like LORA training uses about 5.1GB without deepspeed, torch inductor or anything weird like that.

I am trying to squeeze training onto my 6GB laptop RTX 2060

Same here. Looking to run any training on 6GB vram. So far I had most success with LORA training on Automatic1111 after adjusting some settings, but even though I manage to complete training it didn't do any actual training for some reason. Even after 5000 epochs on 7 images. So I am still looking for the solution.
If you are desperate I can recommend this colab: https://github.com/TheLastBen/fast-stable-diffusion

LoRA training might be work with 6GB VRAM without full_fp16 option.

I figured full-fp16 would reduce VRAM usage, but I will leave it out if thats not the case.

As well, I am pretty sure fp16 supposed to reduce VRAM usage, as FP16 precision consumes only half the memory for floating points as FP32.

That is great news. Are you using latest Dreambooth version in Auto1111? Cuz I have to use older one, otherwise I am getting OOM errors.
The only settings configuration that let me even start training without OOM error is:
Gradient checkpointing
adam
fp16
xformers

I don't have to do full fp16 experimental.

What is that?

https://github.com/bmaltais/kohya_ss
I am using bmaltais GUI for training. I don't train in automatic's GUI.
the full fp16 experimental is less VRAM consuming than mixed precision training. It's an option in the GUI i'm using.
I use Dreamlike Photoreal v2.
Yes, I train the text encoder too.

I would still like to get Deepspeed working if only so I can train at faster settings higher batch size.
I'm trying to investigate whats going wrong, but I can't even get the git version of DeepSpeed to work (see that linked issue above) :/

Also, --full_fp16 doesn't seem to change VRAM consumption or training speed for me.

I am using bmaltais GUI for training.

@lolxdmainkaisemaanlu
Are you running this on Windows?

I am using bmaltais GUI for training.

@lolxdmainkaisemaanlu
Are you running this on Windows?
How much RAM do you have?

Yes, I am running it on Windows 11. But I use a custom Windows 11.
I have 16 GB RAM.
Recently I tried LoRA training with batch size = 2 and only some 48 mb could not be allocated! I think with some tweaks and maybe deepspeed implementation it would be possible to even do batch size = 2 on 6 GB VRAM.
I think if deepspeed stage 2 is implemented LoRA training would be possible even on 4 GB VRAM cards!

@lolxdmainkaisemaanlu
I can already manage a batch size of 2 on my 2060, even without gradient checkpointing enabled or any stage of deepspeed enabled.
I am running my display through a laptop with an IGP though, so its VRAM is totally empty.

Yes, I am running it on Windows 11. But I use a custom Windows 11.

@lolxdmainkaisemaanlu
Ok. So bmaltais GUI is compatible with Windows then. Cuz I am getting some errors during training. I was thinking its because
bitsandbytes is not supported on Windows.
Are you able to train in Dreambooth or only LORA?

Yes, I am running it on Windows 11. But I use a custom Windows 11.

@lolxdmainkaisemaanlu
Ok. So bmaltais GUI is compatible with Windows then. Cuz I am getting some errors during training. I was thinking its because bitsandbytes is not supported on Windows.
Are you able to train in Dreambooth or only LORA?

bmaltais GUI should be fully compatible with Windows.
I actually use a different library of bitsandbytes because 1000 series cards are not compatible with it. It gives me kernel not found error. https://github.com/james-things/bitsandbytes-prebuilt-all_arch - This is what I use.
I have not tried Dreambooth training because I think 8GB VRAM is the minimum to do it properly. I only train in LoRA.

@lolxdmainkaisemaanlu
I can already manage a batch size of 2 on my 2060, even without gradient checkpointing enabled or any stage of deepspeed enabled. Says it sits at about 5700mb last I checked.
I am running my display through a laptop with an IGP though, so its VRAM is totally empty.

Yeah I think your igpu is helping you fit in batch size = 2 in 6GB VRAM. I don't have an igpu ( i5 12400F) so my 1060 6GB is running the display as well.
Actually I'm just lacking 48mb to be able to use batch size = 2 myself! Only need a tiny bit of optimization now.

@lolxdmainkaisemaanlu
I am getting this issue. It looks like bitsandbytes is causing some problems. Did you encounter any of this?
File "C:\Programs\Python\Python310\lib\site-packages\bitsandbytes_init_.py", line 5, in
from .optim import adam
File "C:\Programs\Python\Python310\lib\site-packages\bitsandbytes\optim_init_.py", line 5, in
from .adam import Adam, Adam8bit, Adam32bit
File "C:\Programs\Python\Python310\lib\site-packages\bitsandbytes\optim\adam.py", line 11, in
from bitsandbytes.optim.optimizer import Optimizer2State
File "C:\Programs\Python\Python310\lib\site-packages\bitsandbytes\optim\optimizer.py", line 6, in
import bitsandbytes.functional as F
File "C:\Programs\Python\Python310\lib\site-packages\bitsandbytes\functional.py", line 13, in
lib = ct.cdll.LoadLibrary(os.path.dirname(file) + '/libbitsandbytes.so')
File "C:\Programs\Python\Python310\lib\ctypes_init_.py", line 452, in LoadLibrary
return self.dlltype(name)
File "C:\Programs\Python\Python310\lib\ctypes_init.py", line 374, in init
self._handle = _dlopen(self._name, mode)
OSError: [WinError 193]

Deepspeed does not seem to support 8bitAdam. https://github.com/huggingface/diffusers/pull/735.
I succeeded to work train_db.py with deepspeed by removing 8bitAdam option.
Deepspeed offloads optimizer states to cpu so VRAM usage is reduced even if using regular Adam.
However, train_network.py did not work because it is not compatible with "LoRANetwork".

on windows? if so howd you install deepspeed?

linux.

Yeah, looks like LORA training uses about 5.1GB without deepspeed, torch inductor or anything weird like that.
But I am leaving this open because I can't get either to work yet.

thanks for testing this.
were you able to get deepspeed to work with kohya?

authors: brucethemoose healthyfat laksjdjf lolxdmainkaisemaanlu mmcatbox

repo: kohya-ss/sd-scripts


text:
working fine but [pcl::NormalEstimation::compute] input_ is empt! keep print out

Hi,
i could have the mapping working.
however there is error
[pcl::NormalEstimation::compute] input_ is empt! keep print out
as per image below.. everything else i guess working fine since i could see the map cloud(white)) and the input cloud(rainbow)

the different is ...
when i use rosbag recorded from velodyne VLP16, its working fine.. no such error..
but i get the error above when i use sick mrs1104 (4 laser, 7.5 degree vertical)
im aware that this error come from floor_detection_nodelet,
however no matter  i tweak the param, sensor_height, height_clip_range, and floor_pts_thresh...
it wont eliminate that error
the bag sample is here
https://drive.google.com/file/d/1lD3vWHrTpi0Pz300FIPkR5cBRB5mjCtJ/view?usp=sharing
and here is my launch file
https://drive.google.com/file/d/1lD3vWHrTpi0Pz300FIPkR5cBRB5mjCtJ/view?usp=sharing

and here is my launch file

    <param name="sensor_height" value="2.0" />
<param name="height_clip_range" value="1.0" />
<param name="floor_pts_thresh" value="256" />

Hi did you solve this issue?

i am encountering the same issue. any workaround?

authors: BamsaAhmed ipinyulun mgrallos


text:
Minor Update

grammar fixed in the readme
some changes in package.xml
some changes in CMakeList.txt
add .gitignore file

Thanks a lot!!


text:
🛑 Leo Pizza is down

In b407d27, Leo Pizza (https://leo-pizzaservice.de) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Leo Pizza is back up in 3403d4d after 14 minutes.

repo: koko-io/up


text:
🛑 Leo Pizza is down

In 92756fb, Leo Pizza (https://leo-pizzaservice.de) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Leo Pizza is back up in 9e89260 after 18 minutes.


text:
stop panicing if ping thread fails

With this, the tokio worker threads won't panic anymore if anything went wrong.
This is useful if a crate like human-panic is used, because otherwise users get full crash message for every single ping that couldn't be sent.

Thanks~

authors: TeFiLeDo kolapapa

repo: kolapapa/surge-ping


text:
Exclude repositories or organisations from cloning

A feature I would love to see is the ability to exclude repositories or organisations from cloning.
For example I am in an organisation EpicGames, but not having contributed to any repositories I honestly do not care if their repositories are in my backup vault. So I propose adding new flags --exclude-orgs and --exclude-repos.

Hello! To begin with, let's see how you could achieve that right now.
Blacklist a repository
If you want a particular repository abc/def to not be included into your snapshot, you can just manually create the directory /path/to/snapshot/abc/def and then create any file in that directory:
cd /path/to/snapshot
mkdir -p abc/def
echo This file prevents the repo from being cloned > abc/def/DO_NOT_CLONE.txt

If you do so, both clone_all_repos.sh and update_clones.sh will still attempt to invoke git in that directory, however, git will refuse to clone to a non-empty directory and won't update anything, as there's no repo there.
Blacklist an organization
If you want to ignore all the repos from organization abc, that's a little more complicated, and you'll need to utilize the power of UNIX filesystem permissions:
cd /path/to/snapshot
mkdir abc
echo Repos of this organization won\'t be cloned due to permissions > abc/DO_NOT_CLONE.txt
chmod 555 abc  # No one can create new files/directories under `abc/`

... but whitelist a repository
Moreover, I can (and do) use the last approach for skipping all repos of an organization abc except for a repo abc/def:
cd /path/to/snapshot
mkdir abc
mkdir abc/def
echo Only the manually allowed repos will be cloned from this organization > abc/DO_NOT_CLONE_NEW.txt
chmod 555 abc

Because the last operation is not recursive, you prevent write access for abc (meaning that new repositories won't be created there), but because you have already created abc/def (with write access allowed to the owner, by default), the scripts will be able to clone and update the repo there.

Now, as for your suggestion of that being a feature. On one hand, I don't very much like that you need to resort to these tricks to achieve it, especially considering the last one, which I find a little cumbersome. Not to mention, you rely on a concrete permissions model (I don't think you can set these kind of permissions on NTFS, for example). On the other hand, implementing all the blacklist/whitelist logic in shell might be tedious, and, perhaps, the code for that is not going to be nice and clean.
So, I don't very much like that you need to do some external stuff to have these working, thus, shall someone come up with a nice way to integrate these features (or, maybe, just one of them) into the project, I'd be glad to look at that. But I haven't come up with anything nice, and I'm not planning to work on this for the above solution fits my use cases perfectly well :)

authors: kolayne pavtiger


text:
excludeNames option has incomplete behavior.

FileRemover first checks whether the target is unused.
https://github.com/konifar/gradle-unused-resources-remover-plugin/blob/master/plugin/src/main/groovy/com/github/konifar/gradle/remover/remover/filetype/FileRemover.groovy#L33
Then checked whether it is included in ExcludeNames.
https://github.com/konifar/gradle-unused-resources-remover-plugin/blob/master/plugin/src/main/groovy/com/github/konifar/gradle/remover/remover/filetype/FileRemover.groovy#L36
Because unnecessary scanning runs, I think that it is better to reverse the order. :raised_hands:

And also XmlValueRemover too.

I thought it's better to let the users know the reason why the file is not removed.
But in the point of the performance view point, I agree with you. In addition, this tool print log which let the users know the exclude options.
So I'll improve it as you recommended. Thanks!


text:
Fixed issue with size not being updated in TreeMap upon removal of so…

…me nodes.
For issue https://github.com/konsoletyper/teavm/issues/112

Yes, but heigts are invalid before balance(). So you should not have removed it.

I see your point.  This particular change may not have been necessary.  I see your change, and I'm in the process of testing it.

authors: konsoletyper shannah

repo: konsoletyper/teavm


text:
bump dependencies

Applied mkpr on package.json
/tmp/mkpr.sh

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

npm package (@latest dist-tag)
v1.34.12
GitHub release

Your semantic-release bot :package::rocket:

repo: konsumation/konsum-frontend-svelte


text:
Grid trusted subnets

This PR adds support for trusted subnets within a grid.

If some of grid nodes are colocated in a trusted network (for example within the boundary of your own datacenter) you can add subnets to grid trusted subnet list. This disables data plane encryption within trusted subnet and switches overlay to faster (near-native) mode as an optimization.

@nevalla ping

Looks good!

authors: jakolehm nevalla

repo: kontena/kontena


text:
Adding migration to migrationsFolder ./src broken

Brief bug description
When running the add script eg:
data-ops migrations add --name 02_test2 --migrationsFolder ./src
The migrationsFolder isn't picked up, all migrations added go to the root folder.
Expected behavior
--migrationsFolder ./src should place my file here:
src/02_test2ts
not in the root.
Test environment
Node v20.17.0
MacOS
Additional context
There seems to be a difference in the src an the build:
https://github.com/kontent-ai/data-ops/blob/main/src/modules/migrations/add.ts
const folderPath = params.migrationsFolder ?? process.cwd();

@kontent-ai/data-ops/build/src/commands/migrations/add/add.js:48
const folderPath = params.folder ?? process.cwd();

# this should be
const folderPath = params.migrationsFolder ?? process.cwd();

Hey @Freekbron,
what version of data-ops are you using?

I was using "@kontent-ai/data-ops": "^1.5.0" like in the migrations-boilerplate. With upgrading to ^1.6.1, adding a migration works like expected!

authors: Freekbron IvanKiral

repo: kontent-ai/data-ops


text:
:bug: Update indirect Dependency location

Updating dependency incident location lookup for indirect dependencies to point to "parent" dependency location. E.g. for maven-javax-to-jakarta-00002 rule.
Replaces https://github.com/konveyor/analyzer-lsp/pull/532
Related to https://issues.redhat.com/browse/MTA-2006

Thanks for review @pranavgaikwad, will update!

repo: konveyor/analyzer-lsp


text:
Enable k8s plugins for transform

Enable k8s plugins from crane-lib for transform.
#22

Actually, with this refactoring, GetBinaryPlugins doesn't need to be an exported function, so forget what I said above. Leave it as-is, but just rename the exported func GetPlugins (and change the places where it's called).

Just updated GetBinaryPlugins to GetPlugins.

authors: eemcmullan sseago

repo: konveyor/crane


text:
add runtimeClassName and nodeAffinity for koordlet

Note on DCO:
If the DCO action in the integration test fails, one or more of your commits are not signed off. Please click on the Details link next to the DCO action for instructions on how to resolve this.
Checklist:

[ ] I have bumped the chart version according to versioning
[ ] I have updated the chart changelog with all the changes that come with this pull request according to changelog.
[ ] Any new values are backwards compatible and/or have sensible default.
[ ] I have signed off all my commits as required by DCO.

Changes are automatically published when merged to master. They are not published on branches.

Please kindly do a review. I am running a k3s cluster, 1 master node, 2 worker (with containerd, see example agent config. when specifying default runtime in /etc/docker/daemon.json, it's working.) nodes with GPU cards.

I need to specify runtimeClassName to allow the GPU cards be discovered. Otherwise kubectl get devices will return an empty list.
I need to specify node nodeAffinity to allow koordlet could be scheduled to worker nodes only.

After above modifications, I am seeing the expected output from kubectl get devices.
user@k3s81:~# kubectl get devices -o yaml
apiVersion: v1
items:
- apiVersion: scheduling.koordinator.sh/v1alpha1
  kind: Device
  metadata:
    creationTimestamp: "2023-10-15T07:12:40Z"
    generation: 1
    labels:
      node.koordinator.sh/gpu-driver-version: 535.104.12
      node.koordinator.sh/gpu-model: GeForce-RTX-2080-Ti
    name: k3s82
    ownerReferences:
    - apiVersion: v1
      blockOwnerDeletion: true
      controller: true
      kind: Node
      name: k3s82
      uid: 42b37e92-e079-466d-ab18-a00ce2187cf3
    resourceVersion: "10140"
    uid: 3e24800e-7cfb-4c96-8a4f-d2eca3fef5a1
  spec:
    devices:
    - health: true
      id: GPU-ebca0fd7-1821-8765-3239-ca056e15b028
      minor: 0
      resources:
        koordinator.sh/gpu-core: "100"
        koordinator.sh/gpu-memory: 11Gi
        koordinator.sh/gpu-memory-ratio: "100"
      type: gpu
  status: {}
- apiVersion: scheduling.koordinator.sh/v1alpha1
  kind: Device
  metadata:
    creationTimestamp: "2023-10-15T07:12:40Z"
    generation: 1
    labels:
      node.koordinator.sh/gpu-driver-version: 535.104.12
      node.koordinator.sh/gpu-model: GeForce-RTX-2080-Ti
    name: k3s83
    ownerReferences:
    - apiVersion: v1
      blockOwnerDeletion: true
      controller: true
      kind: Node
      name: k3s83
      uid: a09e5037-42fa-4868-b061-89af3d4951bb
    resourceVersion: "10139"
    uid: 8ff8e0a7-f557-4d9e-8e30-345d2341fb90
  spec:
    devices:
    - health: true
      id: GPU-7e738f84-ca39-bce7-3107-73ba51a16e9b
      minor: 0
      resources:
        koordinator.sh/gpu-core: "100"
        koordinator.sh/gpu-memory: 11Gi
        koordinator.sh/gpu-memory-ratio: "100"
      type: gpu
  status: {}
kind: List
metadata:
  resourceVersion: ""

# https://github.com/k3s-io/k3s/issues/1264#issuecomment-903821584
token: TOKEN
server: https://k3s81:6443
docker: false
kubelet-arg:
  - "node-status-update-frequency=4s"
private-registry: "/etc/rancher/k3s/registry.yaml"
flannel-iface: "ens193"
log: "/var/log/k3s-agent.log"

this pr is not active and a new pr following this resolve the same issue in release 1.4
https://github.com/koordinator-sh/charts/pull/84

@guhuajun we have added release v1.4.0 chart, would you like to provide a pr like this for release v1.4.0?

@guhuajun we have added release v1.4.0 chart, would you like to provide a pr like this for release v1.4.0?

Let me find some timeslots for doing a new pr.

authors: ZiMengSheng guhuajun

repo: koordinator-sh/charts


text:
koord-manager: support resource amplification config, cpu and memory

Ⅰ. Describe what this PR does
Support resource amplification config, cpu and memory.
amplification-config: |
    {
      "enable": false,
      "CPURatio":1.5,
      "MemoryRatio":1.5,
      "nodeConfigs": [
        {
          "name": "myselect",
          "nodeSelector": {
              "matchLabels": {
                "node.koordinator.sh/cpunormalization": "true"
              }
          },
          "enable": true,
          "CPURatio":1.5,
          "MemoryRatio":2
        }
      ]
    }

cpuAmplificationRatio = amplificationStrategy.CPURatio * CPUNormalizationRatio
memoryAmplificationRatio = amplificationStrategy.MemoryRatio

Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[ ] I have written necessary docs and comments
[ ] I have added necessary unit tests and integration tests
[ ] All checks passed in make test

PTAL, thanks. @saintube @jasonliu747 @FillZpp

All is resolved, thanks. cc @saintube @zqzten

repo: koordinator-sh/koordinator


text:
Downloading file from internet with UrlVfs.

I want to download a file with UrlVfs:
UrlVfs("https://raw.githubusercontent.com/korlibs/korio/master/README.md").copyTo(resourcesVfs["readme.md"])

This however creates a readme.md that doesn't contain the plain text I was expecting:�      �R]o�0}ƿ�� B�G���A���4M �\7q3'�l'���ݤ	��yp>��{N���y5�RQ9a��
^�,s,��w���X�ν¹�F����tE�i�0�����T��^%7v��J�ڲ�[�f+HM�*��%$fuBH\S=k̊�+?-
�F;%+�f_ ��3���·�WX(��l%L+~��Z�V�m����_�`����������
|?y��E̡0b{�a��tq�O�ԕ�����T�䮱;���is�Uzg��mx�j�޹��!
��&+�IZ�VTT��q��1ħV���_t��{��<�z�
�7\M�b��*�g{?ݷ���$��̤M�ɺ^\��}�g���[� �΃�,��0<�p�?
9�����l��s�cgG���lW�R��iS�^��2�x���RC8��
�a���)�^�����a��𻏭�m0���@H&jQe�JM����#�缍���іѫ��N��v�����

It takes ~40 seconds to download this 3kb file.
It isn't possible to use custom headers.

The problem is that the download encoding is GZIP. So it should be instead:

UrlVfs("https://raw.githubusercontent.com/korlibs/korio/master/README.md").copyTo(resourcesVfs["readme.gzip"])

Then I need to uncompress the file manually with
resourcesVfs["readme.gzip"].readBytes().uncompress(GZIP).toString(UTF8)

Any idea, why the download takes so long?

Was not aware of that. Can you curl or wget with speed info and compare? Feel free to create a separate issue for that

authors: Josef-Vonasek soywiz

repo: korlibs/korio


text:
[KNode-Manager]Feature: node controller

The node_controller is responsible for managing the status of node resources within the master cluster. This includes tasks such as creating and deleting nodes, as well as maintaining their status, which encompasses health checks and resource allocation quotas, among other aspects.

/assign @wangyizhi1

repo: kosmos-io/kosmos


text:
Make Status objects more robust?

https://github.com/kostrykin/pypers/pull/8#discussion_r1713049851 concerns an issue which should be dealt with when writing the status file.
However, e6561730aea9d0bfc10e752978d52711ebbe9105 from #15 copes with that issue when reading the status file. Although it would be better to deal with the issue when writing the status file, it is fine for the moment.

e6561730aea9d0bfc10e752978d52711ebbe9105 added a word around for this issue.
This issue concerns writing the status file, whereas e6561730aea9d0bfc10e752978d52711ebbe9105 copes with the issue when reading the status file. This is fine for now, but it would be more elegant and re-usable, if the issue was coped with at the writing-level.

repo: kostrykin/repype


text:
Add debian no details option for debian.

Add no details command for debian.
# Before
$  ./goval-dictionary fetch-debian -dbtype redis -dbpath redis://localhost:6379/1 7 8 9
$ redis-cli -c info memory  | grep used_memory_human
used_memory_human:38.24M

# After
$  ./goval-dictionary fetch-debian --no-details -dbtype redis -dbpath redis://localhost:6379/1 7 8 9
$ redis-cli -c info memory  | grep used_memory_human
used_memory_human:26.15M

Thanks!

repo: kotakanbe/goval-dictionary


text:
Update versions and fix breaking changes

Update the versions to work with Kotest 1.5

I think the build failure is a false negative. The only failing tests are called failing test and are 1 shouldBe 2

I've kicked the build off again.

I think you can make this work by marking the sample specs as private, and then deleting the project config.

@sksamuel Thank you for the tips. That I got it working ✅

1.1.0 released.
On Mon, 7 Feb 2022 at 09:14, James Baker @.***> wrote:

@sksamuel https://github.com/sksamuel Thank you for the tips. That I
got it working ✅
—
Reply to this email directly, view it on GitHub
https://github.com/kotest/kotest-extensions-pitest/pull/1#issuecomment-1031576601,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFVSGT6WWDZVLCSOLL7K5DUZ7OVRANCNFSM5NA65AJA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

authors: RusticFlare sksamuel

repo: kotest/kotest-extensions-pitest


text:
ac:details usage issues

What happened?
I'm trying to use the ac:details template to populate page properties but i'm unable to due to errors in parsing.
com.atlassian.confluence.api.service.exceptions.BadRequestException: Content body cannot be converted to new editor format
What did you expect to happen?
I expected a page properties element with a table of key value pairs

How can we reproduce the behavior you experienced?
Using the following example

:details_start:
| Key1 | Key2 |
| --- | --- |
| Value1 | Value 2 |

:details_end:

Further Information (please complete the following information)

Mark Version (mark --version): v9.12.0
Mark Parameters: N/A
Confluence Hosting:  Cloud
Confluence Version: Cloud
Environment specific Information: Running in Windows

Logs or other output
Markdown parsing section of the log
2024-07-15 18:07:18.471 TRACE rendering markdown:

                              <ac:structured-macro ac:name="details" ac:schema-version="1""><ac:rich-text-body>
                              | Key1 | Key2 |
                              | --- | --- |
                              | Value1 | Value 2 |

                              </ac:rich-text-body></ac:structured-macro>

2024-07-15 18:07:18.471 TRACE rendered markdown to html:

<ac:structured-macro ac:name="details" ac:schema-version="1""><ac:rich-text-body>

                              Key1
                              Key2

                              Value1
                              Value 2

</ac:rich-text-body></ac:structured-macro>

Additional context
I'm unclear if my ac:details usage is correct.
Looking at the code it seems there's an extra " in the <ac:structured-macro ac:name="details" ac:schema-version="1""> line (here) but i'm unsure if that's the cause of my problem.
I don't currently have a golang build env otherwise I would test fixing it myself

Attempt 1 - Manual Definition (Fail)
I tried just defining the html manually, that seems to break due to the
 incorrectly wrapping the ac instead of the table

<ac:structured-macro ac:name="details" ac:schema-version="1">
<ac:rich-text-body>

      Key1
      Key2

      Value1
      Value2

</ac:rich-text-body>
</ac:structured-macro>

TRACE
2024-07-15 18:20:09.558 TRACE rendering markdown:

                              <ac:structured-macro ac:name="details" ac:schema-version="1">
                              <ac:rich-text-body>

                                    Key1
                                    Key2

                                    Value1
                                    Value2

                              </ac:rich-text-body>
                              </ac:structured-macro>

2024-07-15 18:20:09.559 TRACE rendered markdown to html:

<ac:structured-macro ac:name="details" ac:schema-version="1">
                              <ac:rich-text-body>

                                    Key1
                                    Key2

                                    Value1
                                    Value2

                              </ac:rich-text-body>
                              </ac:structured-macro>

Attempt #2 - Manual Definition (Works)
If I take my table and make it a one-line it works. Here the
 surrounds the whole thing.
<ac:structured-macro ac:name="details" ac:schema-version="1">
<ac:rich-text-body>

Key1	Key2

Value1	Value2

</ac:rich-text-body>
</ac:structured-macro>

TRACE
2024-07-15 18:25:01.143 TRACE rendering markdown:

                              <ac:structured-macro ac:name="details" ac:schema-version="1">
                              <ac:rich-text-body>

Key1	Key2

Value1	Value2

                              </ac:rich-text-body>
                              </ac:structured-macro>

2024-07-15 18:25:01.144 TRACE rendered markdown to html:

<ac:structured-macro ac:name="details" ac:schema-version="1">
                              <ac:rich-text-body>

Key1	Key2

Value1	Value2

                              </ac:rich-text-body>
                              </ac:structured-macro>

Yes that unfortunately doesn't work right now. See also: https://github.com/kovetskiy/mark/issues/324

Btw I rebuilt it after removing the syntax error  (here) but the behavior remained the same.
Like you I looked into block parsing but couldn't get it to work properly. I ran it through the debugger for a while and finally gave up, waiting for someone smarter to dust it off :|

Good catch! Quoting is fixed in 9.13.1. Feel free to give it a shot.

Please test with https://github.com/kovetskiy/mark/releases/tag/10.0.0 and report back if it's still not working as expected.

Can confirm - working as expected now :clap:
024-08-01 12:10:51.432 TRACE rendering markdown:

                              <ac:structured-macro ac:name="details" ac:schema-version="1"><ac:rich-text-body>
                              | Key1 | Key2 |
                              | --- | --- |
                              | Value1 | Value 2 |

                              </ac:rich-text-body></ac:structured-macro>

2024-08-01 12:10:51.433 TRACE rendered markdown to html:
                              <ac:structured-macro ac:name="details" ac:schema-version="1"><ac:rich-text-body>

                              Key1
                              Key2

                              Value1
                              Value 2

                              </ac:rich-text-body></ac:structured-macro>

authors: OnceUponALoop mrueg

repo: kovetskiy/mark


text:
Native Build

Validate that the native build is possible. If it does not work currently, make it possible.

Native Build is already possible using: ./gradlew build -Dquarkus.package.type=native -Dquarkus.native.container-build=true

repo: kpalatzky/microvault


text:
Some groups have wrong location with prefix "пол" and suffix "янг".

That's how location stored in university's database, not sure if we can change that data

authors: Masedko Oleks-Y


text:
Пщ нужно обрабатывать регэкспом!

Чтобы любые строки с содержанием пщ были пщ

Это аналог пинга, лишний флуд будет лишним, имхо.

authors: kpmy krab

repo: kpmy/xep

license: WTFPL


text:
Bash does not detect a TTY when using pty

I'm trying to use pty to start a bash shell in a way that will allow me to pass the --rcfile flag. Because Bash in its infinite wisdom decided not to respect --rcfile unless you're in a TTY.
Problem is that even when using pty it does not detect a tty.
This is the pty specific code I've written (keep in mind this is proof of concept code)
func (p *Process) start() error {
	var err error
	if p.pty, err = pty.Start(p.cmd); err != nil {
		return err
	}

	go func() {
		_, err := io.Copy(p.cmd.Stdout, p.pty)
		if err != nil {
			panic(fmt.Sprintf("Error while copying stdout: %v", err))
		}
		_, err = io.Copy(p.pty, p.cmd.Stdin)
		if err != nil {
			panic(fmt.Sprintf("Error while copying stdin: %v", err))
		}
	}()

	return nil
}

Keep in mind the above is used to basically run bash --rcfile /some/file. Once started I use stdin to send it additional commands. In this case I've sent it the "tty" command and it returns not a tty.
Any idea what I might be missing, or does this package not fully set up a tty?
Thanks

After looking into this, I don't think there is an issue with the lib. I see multiple issue with the sample code you provided:
p.cmd  is the exec.Cmd getting started, so p.pty and p.cmd.Stdout are equal, so are p.pty and p.cmd.Stdin. (see run.go from the lib).
The copy goroutine will not consume p.cmd.Stdin as it is blocked by the copy to p.cmd.Stdout.
Following your snippet, here is a working example of bash loading a rcfile in tty mode.
package main

import (
        "fmt"
        "io"
        "log"
        "os"
        "os/exec"

        "github.com/kr/pty"
)

type Process struct {
        cmd    *exec.Cmd
        pty    *os.File
        stdout io.Reader
        stdin  io.Writer
}

func (p *Process) start() error {
        stdinR, stdinW := io.Pipe()
        stdoutR, stdoutW := io.Pipe()

        p.stdin = stdinW
        p.stdout = stdoutR

        var err error
        if p.pty, err = pty.Start(p.cmd); err != nil {
                return err
        }

        go func() {
                defer stdoutR.Close()
                _, err := io.Copy(stdoutW, p.pty)
                if err != nil {
                        log.Printf("Error while copying pty to output pipe: %v", err)
                }
        }()
        go func() {
                defer stdinW.Close()
                _, err = io.Copy(p.pty, stdinR)
                if err != nil {
                        log.Printf("Error while copying input pipe to pty: %v", err)
                }
        }()

        return nil
}

func main() {
        p := &Process{
                cmd: exec.Command("bash", "--rcfile", "hello.rc"),
        }
        p.start()

        go func() {
                fmt.Fprintf(p.stdin, "cat hello.rc\n")
                fmt.Fprintf(p.stdin, "tty\n")
                fmt.Fprintf(p.stdin, "hello\n")
                fmt.Fprintf(p.stdin, "exit\n")
        }()

        io.Copy(os.Stdout, p.stdout)
}

Resulting in:
$> go run main.go
cat hello.rc
tty
hello
exit
$ cat hello.rc
hello() {
        echo "hello from rc file" >&2
}
$ tty
/dev/pts/25
$ hello
hello from rc file
$ exit
exit
2019/06/17 11:02:45 Error while copying pty to output pipe: read /dev/ptmx: input/output error

Bash properly loads the hello function from hello.rc.
Note that the final error is expected as the copy routine does the final read on the closed pty.
Closing for now as it doesn't seem related to the lib.

D'oh, I did not realize Copy was blocking, that makes sense in retrospect.
Thanks a lot for the very helpful response @creack, you went above and beyond!

Hi @creack, I wonder if you can help me shed some light on why my use-case does not appear to be working. I'm trying to hook things up in such a way that I can read and interpret the stdout "live". I've repurposed the code you shared above to reproduce my particular issue:
package main

import (
	"fmt"
	"io"
	"log"
	"os"
	"os/exec"

	"github.com/kr/pty"
)

type Process struct {
	cmd   *exec.Cmd
	pty   *os.File
	stdin io.Writer
}

func (p *Process) start() error {
	stdinR, stdinW := io.Pipe()

	outWriter := &stdWriter{}
	p.stdin = stdinW

	var err error
	if p.pty, err = pty.Start(p.cmd); err != nil {
		return err
	}

	go func() {
		_, err := io.Copy(outWriter, p.pty)
		if err != nil {
			log.Printf("Error while copying pty to output pipe: %v", err)
		}
	}()
	go func() {
		defer stdinW.Close()
		_, err = io.Copy(p.pty, stdinR)
		if err != nil {
			log.Printf("Error while copying input pipe to pty: %v", err)
		}
	}()

	return nil
}

type stdWriter struct {
}

func (w *stdWriter) Write(p []byte) (n int, err error) {
	fmt.Printf("Writing: %s", string(p))
	return len(p), nil
}

func main() {
	p := &Process{
		cmd: exec.Command("bash", "--rcfile", "hello.rc"),
	}
	p.start()

	go func() {
		fmt.Fprintf(p.stdin, "tty\n")
		fmt.Fprintf(p.stdin, "echo $PATH\n")
		fmt.Fprintf(p.stdin, "exit\n")
	}()
}

Everything here is the same as in your code, except for the way stdout is being handled. I mocked my own writer and using that to interpret stdout. When I do this with a regular process stdout it works fine, but when used with pty I get no output.
I'm a little confused because as far as I can tell this is not dissimilar from how your code above is handling it; you're just passing it a writer.
Any idea what's going wrong here?
Thank you

If the issue is with that exact piece of code, then it is just a problem of timing.
Add a time.Sleep(1 * time.Second) at the end of the main and you will see output. When main() returns, the program returns, without waiting on goroutines.
If you don't need a goroutine, you can also just call Wait() on the command.
If you do need it, you can use a channel.
Examples:
package main

import (
        "fmt"
        "io"
        "log"
        "os"
        "os/exec"

        "github.com/kr/pty"
)

type Process struct {
        cmd   *exec.Cmd
        pty   *os.File
        stdin io.Writer
}

func (p *Process) start() error {
        stdinR, stdinW := io.Pipe()

        outWriter := &stdWriter{}
        p.stdin = stdinW

        var err error
        if p.pty, err = pty.Start(p.cmd); err != nil {
                return err
        }

        go func() {
                _, err := io.Copy(outWriter, p.pty)
                if err != nil {
                        log.Printf("Error while copying pty to output pipe: %v", err)
                }
        }()
        go func() {
                defer stdinW.Close()
                _, err = io.Copy(p.pty, stdinR)
                if err != nil {
                        log.Printf("Error while copying input pipe to pty: %v", err)
                }
        }()

        return nil
}

type stdWriter struct {
}

func (w *stdWriter) Write(p []byte) (n int, err error) {
        fmt.Printf("Writing: %s", string(p))
        return len(p), nil
}

func main1() {
        p := &Process{
                cmd: exec.Command("bash", "--rcfile", "hello.rc"),
        }
        p.start()
        errChan := make(chan error, 1)
        go func() {
                errChan <- p.cmd.Wait()
                close(errChan)
        }()

        go func() {
                fmt.Fprintf(p.stdin, "tty\n")
                fmt.Fprintf(p.stdin, "echo $PATH\n")
                fmt.Fprintf(p.stdin, "exit\n")
        }()

        if err := <-errChan; err != nil {
                panic(err)
        }
}

func main() {
        p := &Process{
                cmd: exec.Command("bash", "--rcfile", "hello.rc"),
        }
        p.start()

        fmt.Fprintf(p.stdin, "tty\n")
        fmt.Fprintf(p.stdin, "echo $PATH\n")
        fmt.Fprintf(p.stdin, "exit\n")

        if err := p.cmd.Wait(); err != nil {
                panic(err)
        }
}

Thank you @creack, that was the missing link :)

authors: Naatan creack

repo: kr/pty


text:
Add ALLOW_SAME_WINDOW flag for content-script <-> page messaging

When CONFIG.ALLOW_SAME_WINDOW is set to true, allow messages to the the same window and ignore requests from this instance. Turned off by default for compatibility.
The idea is that you have another instance in another context/sandbox bound to the same window that wants to talk to us. This is common in WebExtensions.
This is similar to CONFIG.ALLOW_SAME_ORIGIN but also prevents post-robot from confusion when it sees its own requests by discarding them early.
I found this useful for my projects, thought I'd make a PR.
Question for maintainers: should I add a mention of conf/config.js in the README? I don't see any docs on the config and stumbled upon it by accident. Maybe I'm blind.
Thanks for the awesome package!

Hey, could you guys please take a look at this? I've fixed merge conflicts.
If this isn't something you'd like to merge, that's totally fine! I'd just prefer not to maintain this PR indefinitely, obviously.
Thanks!

Hey! Happy to have an option to allow requests from the same window -- but I'm a little confused about:

prevents post-robot from confusion when it sees its own requests by discarding them early.

Can you elaborate on this scenario?

If you send a message to the current window, the sender post-robot instance will get it as well, because it's subscribed to message event on this window.
When a post-robot instance receives its own outgoing message, the behavior is currently undefined. In concrete terms that means a bunch of errors in the console and getting undefined as response even if the intended receiver instance tries to send something back (can't reproduce and paste at the moment).
This PR adds an early return to all three listeners in src/drivers/receive/types.js so that when ALLOW_SAME_WINDOW is enabled, post-robot ignores/discards any message without a handler, i.e. before throwing No handler found for post message ack for message: ... or answering with undefined.
I've tested this in practice and it works great.

This is now allowed by default.

authors: bluepnume deltaidea

repo: krakenjs/post-robot


text:
HDF5 I/O Integration

Add HDF5 I/O integration, this is a widely used data format in the production of large image datasets.

After doing some reading around the subject, h5cpp (N.B. the lower case letters) seems like the best option (git available here: https://github.com/ess-dmsc/h5cpp).  This code is currently in use by DESY, ISIS and PSI, the git seems to be well maintained and it should unlock the HDF5 file format for OpenImpala. It's worth reading through the Design Overview page on the documentation: https://ess-dmsc.github.io/h5cpp/users_guide/overview.html.

Basic HDF5 read functionality is now available in OpenImpala: https://github.com/kramergroup/openImpala/commit/8fc7c6ec919b5cbbda8879f2634c288536437dd7 I'm going to continue working on it to get parallel I/O working but will create a separate issue for this.

repo: kramergroup/openImpala


text:
php-webdriver 设置超过30S超时无效

这个问题坑了一天的时间，按照SS的说明，只需要在user-rule.txt中加入地址就可以了，如：
|http://2017.ip138.com/ic.asp

这就代表以此开头的地址就走代理。但实际测试却行不通（除IE）。
PAC我不懂该如何调试，据说alert函数已经弃用。无奈只好靠感觉，pac.txt修改如下：
function FindProxyForURL(url, host) {
    if (url.match(/ip138.com\/$/)) { //匹配结尾
        return proxy;
    }
    return direct;
}

这样写在所有浏览器里ip138都走代理，可知url参数里不包含path部分。
接着搜索，找到MDN文档：

The URL being accessed. The path and query components of https:// URLs are stripped. In Chrome, you can disable this by setting PacHttpsUrlStrippingEnabled to false, in Firefox the preference is network.proxy.autoconfig_url.include_path.

设置好network.proxy.autoconfig_url.include_path，测试通过。
顺便记录selenium中设置firefox profile的方式：
$cap = DesiredCapabilities::firefox();
$profile = $cap->getCapability(FirefoxDriver::PROFILE);
$profile->setPreference('network.proxy.autoconfig_url.include_path', true);

浪费了一天时间，😭

github紊乱了。内容串掉了。


text:
Search path for JAR file is wrong

Plugin Version: 15.8.132.637.1
CLion is running on linux from a central installation in /opt/clion-2016.2 where the plugin is installed as well. Setup and using the plugin is possible, but when formatting, this error occurs:

Plugin jar file not found: /home/user/.CLion2016.2/config/plugins/EclipseFormatter/lib/adapter45.jar

Adding a link fixes the problem:

~/.CLion2016.2/config/plugins$ ln -s /opt/clion-2016.2/plugins/EclipseFormatter/ .

Seems that adding an additional search path pointing to the plugin dir of the running clion instance could possibly fix this issue.

Is that some custom preconfigured IDE installation in your company?
I think I could add some support for that.

No, nothing special. Simply untared to a central location on a shared development server used by all developers.

Fixed and released.

authors: kaldonia krasa

repo: krasa/EclipseCodeFormatter


text:
How can using it in cakePHP 2.6

I have issue when import with cakephp 2.6
can you can show me how import  this composer in cake php

Hey @tomnyson
If your CakePHP project has been installed with composer, you should have a composer.json in your project root directory and should be able to add the Firebase PHP Admin SDK as an additional dependency.
If your CakePHP project is not installed with composer, there is no easy way to use this (or any other 3rd party) library within your project.

can you can show me detail
I  have folder Vendor/ Firebase/src/Firebase.php and Firebase/src/Firebase
I decided import
`<?php
App::uses('AppController', 'Controller');
App::import('Vendor', 'Firebase', array('file' => 'Firebase'.DS.'src'.DS.'Firebase.php'));
class ChatController extends AppController
{
function index() {
// $firebase = new Firebase();
// $firebase->dosomething();
if (class_exists('Firebase')) {
echo '111';
} else {
echo '22222';
}
//$serviceAccount = ServiceAccount::discover();
//die;
}

}`
but It error 503. can you can suggest me right way

When I said "there is no easy way", I should have said "this is virtually impossible". You would have to import every file of the SDK and every file of its dependencies. In the end, you would have import statements for a couple thousand files. Don't do this, it's not worth it.
If you can't upgrade your project to a current CakePHP release, you could write your own methods/plugin based on the Firebase REST APIs
https://firebase.google.com/docs/reference/rest

authors: jeromegamez tomnyson

repo: kreait/firebase-php


text:
build(ansible-operator-ci): bump kustomize version

Checklist:

[ ] Have you added an explanation of what your changes do and why you'd like them to be included?
[ ] Have you updated or added documentation for the change, as applicable?
[ ] Have you tested your changes on all related environments with successful results, as applicable?

Type of Changes:

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

What is the current behavior? (link to any open issues here)
What is the new behavior (if this is a feature change)?
Other information:

/lgtm


text:
minMatchCharLength doesn't work properly

Hello,
As I said in the title, this minMatchCharLength doesn't work properly.
Here is my Fuse config :
new Fuse(this.props.data, {
      shouldSort: true,
      tokenize: true,
      includeScore: true,
      includeMatches: true,
      threshold: 0.3,
      location: 0,
      distance: 100,
      maxPatternLength: 32,
      minMatchCharLength: 4,
      keys: [
        "label",
        "children.label"
      ]
    });

if I search for a string with a length lower than my minMatchCharLength, fuse still return some results with an empty indices array ...

From http://fusejs.io/

Minimum character length
When set to include matches, only the matches whose length exceeds this value will be returned. >(For instance, if you want to ignore single character index returns, set to 2)

So it shouldn't affect the results, only the matches

@zecaptus looks like this wasn't closed with the merged pr. should this still be open?

I think it still doesn't work. Search for "abc" returns the same number of results without any dependency on minMatchCharLength being 1 or 3.
Setting findAllMatches=true/false doesn't impact neither.

perhaps because some parameters hardcoded, and some lowercased?
{{- $options := dict "ignoreLocation" true "includeMatches" true "includeScore" true "keys" $keys -}}
{{- $optionWhitelist := slice "ignoreLocation" "isCaseSensitive" "minMatchCharLength" "threshold" "distance" "useExtendedSearch" -}}
{{- with .Site.Params.search.fuse -}}
  {{- range $key, $value := . -}}
    {{- range $optionWhitelist -}}
      {{- if eq $key (lower .) -}}

authors: FuadEfendi Hypnosphi jhabdas zecaptus

repo: krisk/Fuse


text:
problem with Q.all(promises)

Probably not a bug.. but I've encountered an issue using defered with Q.all(). It has to do with the Q.all() call being at the end of a synchronous loop in which defers are being generated and passed to an array. psuedocode (not tested) would look something like this:
var promises = [];
var urls = [//an array of urls
];
for (url in urls) {
(function(url) {
promises.push(Q.try( function() {
var defer = Q.defer();
$.ajax(url, function(body) {

  //do something
  defer.resolve(true)
}
return defer.promise;
})// Q.try()
)// push
})(url); // context funtion
}// foreach urls
Q.all(promises).done(function() { console.log('done...') } )

Since the ajax call is defered, all() is called before the ajax callback, all the of the promises in the array get wrapped into another when() which calls Q() which basically just returns the promise. the counter in the wrapped promise is increased then decreased but maybe never reaches 0?? The only way I've been able to do this is to have .done() called at the end of the chain:
var promises = [];
var urls = [//an array of urls
];
for (url in urls) {
(function(url) {
promises.push(Q.try( function() {
var defer = Q.defer();
$.ajax(url, function(body) {

  //do something
  defer.resolve(true)
}
return defer.promise;
})// Q.try()
. done(); //this will make Q.all() work..
)// push - not a promise this time.
})(url); // context funtion
}// foreach urls
Q.all(promises).done(function() { console.log('done...') } )

The Odd part about this is .. that if I insert a then which returns a value.. it still doesn't work..
var promises = [];
var urls = [//an array of urls
];
for (url in urls) {
(function(url) {
promises.push(Q.try( function() {
var defer = Q.defer();
$.ajax(url, function(body) {

  //do something
  defer.resolve(true)
}
return defer.promise;
})// Q.try()
. then( function() {return true;}); //this will make Q.all() stall..
)// push
})(url); // context funtion
}// foreach urls
Q.all(promises).done(function() { console.log('done...') } )

The call to all never gets resolved and the done() never gets called when the true value should be the value that gets passed along.
Let me know of any questions you may have about what's going on in this code. I hope I've made it clear as to what I'm trying to do. Is there a better way to approach something like this?

Hey thanks for outlining this so well. I've run into this issue as well.
Similarly, I've created an array of promises, each promise consisting of a long promise chain itself.
Q.all gets through 80% of the promises and then stalls...

I’ve actually figured it out. It really was a promise that was not resolving or the function was  returning a value instead of a promise and thus the process was “crashing".. I forget which..
Carl Furst
From: miketeix <notifications@github.commailto:notifications@github.com>
Reply-To: kriskowal/q <reply@reply.github.commailto:reply@reply.github.com>
Date: Tuesday, November 3, 2015 at 1:29 PM
To: kriskowal/q <q@noreply.github.commailto:q@noreply.github.com>
Cc: Carl Furst <carl.furst@mlb.commailto:carl.furst@mlb.com>
Subject: Re: [q] problem with Q.all(promises) (#635)
Hey thanks for outlining this so well. I've run into this issue as well.
Similarly, I've created an array of promises, each promise consisting of a long promise chain itself.
Q.all gets through 80% of the promises and then stalls...
—
Reply to this email directly or view it on GitHubhttps://github.com/kriskowal/q/issues/635#issuecomment-153446394.

MLB.com: Where Baseball is Always On

@cfurst thanks for circling back, it moved me to really comb through each step in the promise chain. Turns out there was a boolean check that was preventing the callback from being called, and so those promises that were failing the check were never being resolved.
I'll close the issue, cheers!

Apologies for not posting that sooner.. You’re welcome!
Carl Furst
From: miketeix <notifications@github.commailto:notifications@github.com>
Reply-To: kriskowal/q <reply@reply.github.commailto:reply@reply.github.com>
Date: Wednesday, November 4, 2015 at 3:54 PM
To: kriskowal/q <q@noreply.github.commailto:q@noreply.github.com>
Cc: Carl Furst <carl.furst@mlb.commailto:carl.furst@mlb.com>
Subject: Re: [q] problem with Q.all(promises) (#635)
@cfursthttps://github.com/cfurst thanks for circling back, it moved me to really comb through each step in the promise chain. Turns out there was a boolean check that was preventing the callback from being called, and so those promises that were failing the check were never being resolved.
I'll close the issue, cheers!
—
Reply to this email directly or view it on GitHubhttps://github.com/kriskowal/q/issues/635#issuecomment-153862302.

authors: cfurst miketeix

repo: kriskowal/q


text:
xAxis on multiChart

I can't seem to be able to configure my xAxis on a multiChart.
I try to specify
ticks: 9

or
xDomain: [0, 9]

in several different placer (chart, chart.xAxis, chart.lines, chart.lines1, chart.lines1.xAxis...), but none of them work.
Even by using the live multiChart exemple on the website, I can't seem to be able to manage it.
Most of the time, I end up with no xAxis ticks at all! I have no idea what's going on anymore.
Anybody got a working example of such a thing?
Are there restrictions on the multiChart type when setting scales?
If there are, I suppose I shouldn't use multiChart, but, in that case, is there a way to have two yAxis on a cumulativeLineChart (that's why I'm using the multiChart)?

this is example of using ticks. note, the number of ticks may be differ from specified value, since d3 always recalculates this value.
also, cumulativeLineChart doesn't support the second yAxis.

How to set x axis range in multiChart?

authors: krispo livingstonedell singhvivekanand


text:
Allow support for absolute url clip-path.

When disabling the # url convention in an angular app with:
$locationProvider.html5Mode({enabled: true, requireBase: false})

the clipEdge property was not working in my environment. Essentially by adding the full url before the anchor tag on the g element calling clip path, I was able to successfully clip the bars area.
<!-- given the url http://localhost:9000/demo -->

<!-- this is what is provided by the directive, which does not work. -->
<g clip-path="url(#nv-chart-clip-path-6907)">...</g>

<!-- providing absolute url works -->
<g clip-path="url(http://localhost:9000/demo#nv-chart-clip-path-6907)">...</g>

https://github.com/angular/angular.js/issues/8934


text:
CSS parser

This PR introduces a CSS parser, as discussed in #4
State
The current state of the parser is the following:

[x] Core CSS grammar
[x] Formatter
[x] Simple selectors (class, id, etc.)
[x] Pseudo-classes and pseudo-elements
[x] Multi-expression declarations (e.g. padding: 4px 2px;)
[x] Functions (e.g. rgb(105,12,52))
[x] @media
[ ] @import, @font-face, @keyframes, etc.
[ ] Selector combinators (>, +, etc.)
[ ] Attribute selectors (e.g. a[href="..."])
[ ] Full parse error coverage
[ ] Crash stability (still has many @panic("TODO"))

TLDR: It can handle a decent amount of real-world stylesheets.
Overall, I would say it's advanced enough to have it in the main repo (although not wired in yet). Also, the fact that I'm opening a PR doesn't mean that it has to be merged right away, it means that from my side it's ready. Feel free to wait a bit before merging if you feel like doing so. I'll continue to work on my own fork until then.
Note
I'm not sure about what branch to target. GitHub lets me change it after opening the PR, so I've left it as the default (main) for now.

I've invited you to the repo, when you accept the invite please merge your PR as your first official act :^) I would recommend creating a merge commit in this case.

repo: kristoff-it/superhtml


text:
Every admin token param but uid can be null

Hi @krizzu
I saw every admin token param can be null but uid.
#6
Thanks!

Can you point me to your sources? Seems like just email could be null

Yes, I saw that too, but here I can see other params can be null. CreateRequest is also a class with builder pattern, so permits to create a user with no attributes.
I got getName() NullPointerException error and that makes me search about this.
Thanks!

I think it'd be safe to assume that at least UID is non-nullable. Looking at source code for the class, does not tell much either, unfortunately.
From the other hand, looking at constructor of the class, it seems that claims is also required property, so we could un-null this one too. WDYT?

@krizzu Yes, you are right, claims would be an empty list but non-null.
FIXED at #6

Thanks, fixed in #6

authors: ArnauKokoro krizzu

repo: krizzu/firebase-auth-provider


text:
verified installation

Can I somehow use "./rploader.sh serialgen" to obtain a verified installation in order to sign in to Synology.me?
Best regards.

repo: kroese/virtual-dsm


text:
#60 / #63 Resolving package cycle and setting up Deptective

Fixes #60.
Fixes #63.

Note this also reduces the dependencies from frame to netty, but doesn't fully gte rid of them.

@tombentley, any more concerns about this one?

repo: kroxylicious/kproxy


text:
RequiredKeys generates never

interface Test {
  opt?: string,
  req1: string,
  req2: string,
}

const key: RequiredKeys<Test> = 'req1';

Should have no errors.
But generates the error:
Type 'string' is not assignable to type 'never'.ts(2322)
The type RequiredKeys<Test> should return "req1" | "req2". But instead generates never.

@fterradev it works for me, what are your typescript & ts-essential versions? Are you able to reproduce the issue on a clean directory?

TS@4.3.4 with latest ts-essentials doesn't have the problem
Playground – https://tsplay.dev/WKkGgW

It seems like ts-essentials requires Typescript's stricNullChecks.
So disabling strictNullChecks in TS Config (or having no tsconfig.json at all) is the condition for reproducing this error.
Playgroung: https://tsplay.dev/WGnKMm

I guess now it's a matter of defining if it should either work even without strictNullChecks, or just have it documented in the README that this library requires strictNullChecks enabled.
If the latter is preferred, than maybe it is also possible to make the library generate a custom, more helpful error whenever it is imported/required saying something like:
ERROR: ts-essentials requires strictNullChecks enabled on tsconfig.
I really don't know if that's possible.

@krzkaczor what do you think if we mention that we prefer strict in tsconfig.json, or something less strict?

@Beraliv yes i think adding a readme note that project should be used in strict mode is a good idea 👍

authors: Beraliv fterradev krzkaczor quezak

repo: krzkaczor/ts-essentials


text:
mod to display cmdline options to sam header

Hi.
I am in the process of evaluating strobealign. I think it is very nice software.
By the way, the @PG tag in the SAM header, the spec says that the CL tag should show the command line options when run the analysis.
So I thought it was correct to modify it this way.
I would be happy if you could merge them.

Thanks again! We may need to add an option to disable adding the @PG header because this could lead to non-reproducible output, but that is something for later.

authors: marcelm telmin

repo: ksahlin/strobealign


text:
Update python/kserve dependency and art example

What this PR does / why we need it:

Update python requirement to 3.7.
Do not pin kserve version
Update adversarial example: delete the sklearnserver code living in the example which should directly use the sklearnserver image and load the model from cloud storage with StorageUri field.
Update art e2e test case.

Release note:

/lgtm

repo: kserve/kserve