Type literal assertion as const to prevent type widening

Search Terms
String literal type and number literal type in an object literal. Type assertion to make the string literal or number literal also a type literal. Cast string or number to type literal. Make a property definition in object literal behave like constant for the type inference. Define a property as string literal or number literal in an object. Narow the type of a literal to its exact value.
Background
When I declare a constant and assign a string literal or a number literal to it, type inference works differently than when I declare a variable in the same way. While the variable assumes a wide type, the constant settles for a much narrower type literal.
let   a = 'foo'; // type of a is string
const b = 'foo'; // type of b is 'foo'

This behavior comes in handy in many scenarios when exact values are needed. The problem is that the compiler cannot be forced to the "type literal inference mode" outside of the const declaration. For example the only way of defining an object literal with type-literal properties is this:
const o = {
  a: 42 as 42,
  b: 'foo' as 'foo',
  c: 'someReallyLongPropertyValue' as 'someReallyLongPropertyValue',
  d: Symbol('a') as... ahem, what?
};
// type, as well as value, of o is { a: 42, b: 'foo', c: 'some…' }

That is not only incredibly annoying, but also violates the principles of DRY code. In adition it's really annoying.
Suggestion
Since const is already a reserved keyword and can't be used as a name for a type, adding a type assertion expresion as const would cause no harm. This expression would switch the compiler to the "constant inference mode" where it prefers type literals over wide types.
// In objects
const o = {
  a: 42 as const, // type: 42
  b: 'foo' as const, // type: 'foo'
  c: 'someReallyLongPropertyValue' as const
  d: Symbol('a') as const // type: typeof o.d
}

// In generic function
let f = <T>(a: T) => ({ boxed: a });
let x = f(42 as const) // T is 42, typeof x is { boxed: 42 }

Non-simple types
There are currently three competing proposals for the way as const would work with non-simple types.
Shallow literal assertion
The first one would stay true to its name and would treat the type as if it were assigned to a constant.
// Type of a is exactly the same as the type of b, regardless of X
const a = X;
let b = X as const;

However, this would mean that all non-trivial expressions would stay the same as they were without the as const. Therefore I would argue it's less useful than the other two proposals.
Tuple-friendly literal assertion
The second proposal differs in the way it treats array literals. While the shallow assertion treats all array literals as arrays, the tuple-friendly assertion treats them as tuples. Then it recursively propagates deeper untill it stops at a type that is neither a string, number, boolean, symbol, nor Array.
let a = [1, 2] as const; // type: [1, 2]
let b = [ [1, 2], 'foo' ] as const; // type: [ [1, 2], 'foo' ]
let c = [ 1, { a: 1 } ] as const; // type: [ 1, { a: number } ]

// Furthermore new syntax could be invented for arrays of const
// but that is outside the scope of this proposal right now
let d = [ [1,2] as const, [3,4] as const, [5,6] as const ]; // type: Array< [1,2] | [3,4] | [5,6] >
let e = [ [1,2], [3,4], [5,6] ] as const[]; // type: Array< [1,2] | [3,4] | [5,6] >

This is probably the most useful proposal, as it solves both the problem described in Use Cases and the problems described in #11152.
Deep literal assertion
The third proposal would recursively iterate even through object literals. I included it just for sake of completeness, but I don't think it could be any more useful than the tuple-friendly variant.
let c = [ 1, { a: 1, b: [1, 2] } ] as const; // type: [ 1, { a: 1, b: [1, 2] } ]

Use Cases
Say I'm using a library which takes a very long object of type LibraryParams of various parameters and input data. I don't know some of the data right away, I need to compute them in my program, so I'd like to create my object myParams which I would fill and then pass to the library.
Since some of the properties of LibraryParams are optional and I don't want to check for them or assert them every time I use them – I know I've set them, right? – I wouldn't set the type of myParams to LibraryParams. Rather I'd use a narrower type by simply declaring an object literal with the things I need.
However some of the properties need to be selected from a set of exact values and when I add them to myParams, they turn into a string or a number and render my object incompatible with LibraryParams.
There are some ways around it using the existing code, none of which are particularly good. I'll give some examples in the next section.
Examples
Imagine that all of these examples contain much longer programs.
// Type is too wide because of LibraryParams

const myParams: LibraryParams = {
  name: "Foobar",
  favouritePrime: 7,
  sports: [ 'chess' ]
}

if (myFunctions.lovesFootball()) {
  myParams.sports.push('football'); //sports is possibly undefined 🤷
}

Library.doThings(myParams);

// Type is too wide because of literal type widening

const myParams = {
  name: "Foobar",
  favouritePrime: 7,
  sports: [ 'chess' ]
}

if (myFunctions.lovesFootball()) {
  myParams.sports.push('football');
}

Library.doThings(myParams); //number is not assignable to prime 🤷

// Too many type assertions

const myParams = {
  name: "Foobar",
  favouritePrime: 7,
  sports: [ 'chess' ]
}

if (myFunctions.lovesFootball()) {
   // this looks even weirder when you do it for the 10th time 🤮
  (myParams.sports as string[]).push('football');
}

Library.doThings(myParams);

// Too much searching for the correct types

const myParams = {
  name: "Foobar",
  favouritePrime: Library.ParamTypes.Primes.Seven, // 🤮
  sports: [ 'chess' ]
}

if (myFunctions.lovesFootball()) {
  myParams.sports.push('football');
}

Library.doThings(myParams);

// Probably the best solution but definitely not very dry

const myParams = {
  name: "Foobar",
  favouritePrime: 7 as 7 // 😕
  sports: [ 'chess' ]
}

if (myFunctions.lovesFootball()) {
  myParams.sports.push('football');
}

Library.doThings(myParams);

// Top tier 👌😉

const myParams = {
  name: "Foobar",
  favouritePrime: 7 as const // 🤩
  sports: [ 'chess' ]
}

if (myFunctions.lovesFootball()) {
  myParams.sports.push('football');
}

Library.doThings(myParams);

Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript / JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. new expression-level syntax)

Related
#14745 Bug that allows number literal types to be incremented
#20195 A different approach to the problem of type literals in objects, excluding generic functions
#11152 Use cases for as const in generic functions

I think this is a duplicate of #10195.

@mattmccutchen You're right, #10195 proposes a different solution for the same problem. However I think this one could be implemented much more easily as it doesn't have any breaking changes and doesn't colide with something as basic as... parentheses.

"solution" that works today:
const data = new class {
  readonly name = "Foobar";
  readonly favouritePrime = 7;
  readonly sports = [ 'chess' ];
};

I suggested pretty much the same thing in https://github.com/Microsoft/TypeScript/issues/10195#issuecomment-238133905, but with as unit instead of as const. @DanielRosenwasser responded with some feedback in https://github.com/Microsoft/TypeScript/issues/10195#issuecomment-238587404.

One example of how this comes up in common code - React CSS styles.
const style = {
  textAlign: 'center' as 'center'
}

return

The React CSS styles can be handled with a type annotation on the constant:
const style: React.CSSProperties = {
  textAlign: 'center'
}

return

@yortus That's great!  It seems the trick is the "extends" and one of the literal types with the notable exceptions you mentioned.
Booleans, Tuples, numbers, and strings all work when given the specific type using as which makes the literal function a shorter option when you don't want to re-type the literal.  So other than Symbol, it's possible today to achieve the desired behavior.... just not ideal.
Full example:
function literal<T extends string|number>(v: T): T {
    return v;
};

// In objects
const o = {
  a: 42 as 42, // or literal(42)
  b: "foo" as "foo", // or literal("foo")
  c: literal("someReallyLongPropertyValue"),
  d: Symbol("a"), // no solution yet
  e: false as false,
  f: ["abc", false] as ["abc", false]
};

o.a = 43; // error
o.b = "bar"; // error
o.c = "shorter"; // error
o.d = Symbol("d"); // no error
o.e = true; // error
o.f = ["def", true]; // error

// In generic function
let f = <T>(a: T) => ({ boxed: a });
let x = f(literal(42));

x.boxed = 43; // error

Playground link
IMO it would be great if something as simple as this would prevent widening in all cases:
// PROPOSAL: does not work
function literal<T extends string | number | boolean | symbol>(v: T): T | never {
    return v; // as T | never
}

@gwicksted @yortus This is a cool walkaround, but it affects the compiled JavaScript. However I guess the interpreter will quickly realize it's an identity function and optimize the heck out of it.

Here's a slightly more refined literal helper function that works for strings, numbers, booleans (as of the 3.2.0-dev.20180916 nightly build) and simple tuples:
// Overloaded function - supports strings, numbers, booleans, and tuples of length 0-4. Rejects others.
function literal<T extends string | number | boolean>(t: T): T;
function literal(t: []): [];
function literal<T>(t: [T]): [T];
function literal<T, U>(t: [T, U]): [T, U];
function literal<T, U, V>(t: [T, U, V]): [T, U, V];
function literal<T, U, V, W>(t: [T, U, V, W]): [T, U, V, W];
function literal(t: any) { return t; }

let v1 = literal(42);                           // 42
let v2 = literal('foo');                        // 'foo'
let v3 = literal(true);                         // true
let v4 = literal([10, 20]);                     // [number, number]
let v5 = literal([literal(1), false, 'foo']);   // [1, boolean, string]
let v6 = literal(Symbol('sym'));                // ERROR

For boolean literals, this depends on #27042 which arrived in the 3.2.0-dev.20180916 nightly.
For tuples, I couldn't find any general way to prevent them widening. But as a simple workaround, we can just overload the literal helper function for as many tuple elements as deemed practical.

@yortus That's really cool! And when Variadic Generics #5453 land (which is probably still far in the future), this approach could simplify and support even symbols.

@yortus nice! It's succinct and hits the 99% with a single function.  I think it solves #10195 without compiler changes (just lib).  Not sure if it helps with #26841
On that note: should literal(x) remain a copy-and-paste helper until a language feature is added to suppress widening?
It's unfortunate things become verbose with a complex Tuple structure (but those are rare in my experience):
const o: {
  f: ["abc", false, [123, true]] as ["abc", false, [123, true]] // this works
  g: literal([literal("abc"), literal(false), literal([literal(123), literal(true)])])
};

o.f = ["abc", false, [567, false]]; // error on both [567, false]
o.g= ["abc", false, [567, false]]; // (untested, as I do not have dev nightly at the moment)

Can it be written like the following and still work?  Then any is never present as an argument type.
type Tuple<T> = T extends [any?, ...any[]] ? T : never;
function literal<T extends string | number | boolean | Tuple<T>>(t: T): T { return t; }


Seems like the latest change has broken the demo project.

Hi!

The registration js file still relies on "ok" status, thus demo project is broken.

Probably changing to this should fix the issue, at least quick local change seems to work for me.

Error details

Agreed, demo is currently a bit out of sync with the API.

I just tried to run this and found that there is no 'Status' field in the data. Looking at the js, status refers to the status code from the API and only the data is taken from the response.

@andrew-armitage Yes, a fix is incoming.


Broken link: "I smell a parameter!"

🛑 IMPORTANT: You can get your feedback addressed faster if you use the comment section for the article in which you encountered a problem.
Link to article:
Tell us where exactly a problem occurs.
ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)
Problem:
What's wrong with the article?
Broken link: "I smell a parameter!"

Fixed.
#please-close


[Feature] Alternate proofing templates

Feature Description
Add more proofing templates. (e.g. article, web page, research paper...)
Reason for Change
Allows comparison of fonts in different contexts.
Where are the changes needed?
FontPreview and App files.
Code Snippets
No response
Anything Else?
For release 3

In order to allow multiple people to work on this project, the first person could set up the interface to allow users to access the different templates, and other people can make each template.


add ci test for trl rewarding and ppo, fix backward failure in ppo ca…

…used by rmsfusion
What does this PR do?

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

Traceback (most recent call last):
File "/workspace/wangyi/optimum-habana/examples/trl/ppo.py", line 311, in
stats = ppo_trainer.step(question_tensors, response_tensors, rewards)
File "/usr/lib/python3.10/contextlib.py", line 79, in inner
return func(*args, **kwds)
File "/workspace/wangyi/optimum-habana/optimum/habana/trl/trainer/ppo_trainer.py", line 612, in step
train_stats = self.train_minibatch(
File "/usr/lib/python3.10/contextlib.py", line 79, in inner
return func(*args, **kwds)
File "/workspace/wangyi/optimum-habana/optimum/habana/trl/trainer/ppo_trainer.py", line 844, in train_minibatch
self.accelerator.backward(loss)
File "/usr/local/lib/python3.10/dist-packages/accelerate/accelerator.py", line 1966, in backward
loss.backward(**kwargs)
File "/usr/local/lib/python3.10/dist-packages/torch/_tensor.py", line 532, in backward
torch.autograd.backward(
File "/usr/local/lib/python3.10/dist-packages/torch/autograd/init.py", line 266, in backward
Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
File "/usr/local/lib/python3.10/dist-packages/torch/autograd/function.py", line 289, in apply
return user_fn(self, *args)
File "/usr/local/lib/python3.10/dist-packages/habana_frameworks/torch/hpex/normalization/FusedRMSNorm.py", line 49, in backward
inverse_root_mean_square, data_in, gamma = ctx.saved_tensors
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [HPUBFloat16Type [1, 256, 4096]], which is output 0 of AddBackward0, is at version 64; expected version 63 instead. Hint: enable anomaly detection to find the operation that failed to compute its gradient, with torch.autograd.set_detect_anomaly(True).

hope it could be merged soon to avoid regression in trl.

I ran ci testing locally.
GAUDI2_CI=1 RUN_SLOW=1 python -m pytest tests/test_examples.py -s -v -k "ppo" 2>&1 | tee log_ppo.txt
GAUDI2_CI=1 RUN_SLOW=1 python -m pytest tests/test_examples.py -s -v -k "reward_modeling" 2>&1 | tee log_reward.txt
In both case, there's a failure.
For PPO,

tests/test_examples.py:619: in assert_no_regression
assert_function(
E   AssertionError: 61.934252977371216 not less than or equal to 57.75 : for metric train_runtime.
E   ===== Assessed metrics (measured vs thresholded baseline) =====
E   train_runtime: 61.934252977371216 vs 57.75
E   train_samples_per_second: 0.5166769350022155 vs 0.475
=========================== short test summary info ============================
FAILED tests/test_examples.py::MultiCardPPOExampleTester::test_ppo_llama-7b_multi_card
================= 1 failed, 48 deselected in 151.33s (0:02:31) =================
For REWARD,

tests/test_examples.py:619: in assert_no_regression
assert_function(
E   AssertionError: 244.543 not less than or equal to 210.0 : for metric train_runtime.
E   ===== Assessed metrics (measured vs thresholded baseline) =====
E   train_runtime: 244.543 vs 210.0
E   train_samples_per_second: 1.673 vs 1.9
=========================== short test summary info ============================
FAILED tests/test_examples.py::MultiCardRewardExampleTester::test_reward_modeling_llama-7b_multi_card
================= 1 failed, 48 deselected in 320.63s (0:05:20) =================

I test in my env. This two tests have both passed using your command, my SynapseAI is 1.16.2.

I test in my env. This two tests have both passed using your command, my SynapseAI is 1.16.2.

Can you try it from 1.16.0-526? to see whether it's due to SyanpseAI version or any variation between systems.

also pass in 1.16.0-526

also pass in 1.16.0-526

thank you for the confirmation.
can you recommend any safe numbers with considering minimum variations based on my data?

see if it works for you

see if it works for you

thank you, it works.


clicking export with no file

Information

Qiskit Metal version: all
Python version: all
Operating system: all

What is the current behavior?
In GDS renderer window, clicking export with no file selected closes the dialog rather than saying please select a file
Steps to reproduce the problem
Click the export button with no file selected
What is the expected behavior?
Present the user with a dialog saying "Please select a file"
Suggested solutions
add popup

Resolved already, but the issue was never closed.


remove src/environment.F90

Remove the file src/environment.F90. It is not needed for tuvx.

It appears this has been done. @mattldawson

agreed


🎨 [Design] : Start a proposal from the discovery space (DESCOPE?)

// Simplify this ticket. Turning lurkers into proposers needs a separate ticket.
Summary
Start a proposal from the discovery space
Description
Summary
Initial proposal creation via a CTA in the discovery space as users learn about campaigns and categories.
Description
A modal that users can access by clicking 'start proposal'. If no proposer registration exists, then proceed to role registration workflow. If registration exists, allow users to start with or without an initial category selection. Let users preview the proposal template before making a selection.
User Value
As a proposer, I want to start a proposal from the discovery space, so I can capitalize on inspiration.
UX Story
When viewing a campaign, I click the "Start Proposal" button. The system checks my account to see if I'm eligible to start a proposal. If not, launch role registration and return to proposal creation after completion. If yes, let me preview the base proposal template. I can also read some copy about the base proposal template and needing to select a category later in order to submit.
When I click, 'create proposal' the workspace launches and I can start editing the base proposal template. The option to initial "pre flight check for submission" is not enabled until I select a category and answer conditional questions.
/
When viewing a category, I click the "start proposal" button. The system checks eligibility and helps me register if needed. I can preview the category questions for my selected category. I can choose to start my proposal with the base template only, or with the selected category applied. When I click "create", then the workspace launches with the questions loaded based on my selection.

@nielskijf open to descoping. let's discus. we should definitely invest less in the discovery space given new F14 priorities


exact synonyms that match preferred terms for other records

Should having a synonym match a  label be prevented?
Case:  I was trying to identify the distinction between

MONDO_0011962,  "label" : "endometrial cancer", and

MONDO_0002447, "label" : "endometrial carcinoma (disease)",  "synonyms" : [ "carcinoma, endometrial, malignant", "carcinoma of endometrium", "carcinoma of the endometrium", "endometrial cancer", "endometrial carcinoma", "endometrium carcinoma" ],

Should endometrial carcinoma be a child of endometrial cancer, assuming there are histological types of endometrial cancer other than carcinomas?

If they not equivalent, please remove  "endometrial cancer",  from "endometrial carcinoma (disease)"

If there is no distinction to be made, please merge.

Thank you @maglott This makes great sense.
I will do all the synonym related tickets in one big go in the next weeks!

Thanks.  This will help NCBI a lot in completing the integration of MONDO XRefs.  From the October release (yes, we are a bit behind), I found 367 such cases.  I expect the corrections will take some time, given that some content expert will have to make the decision about whether to merge or to remove the exact synonym.

I know this ticket was originally about exact synonyms with preferred terms, but we also see the same exact synonym for more than 1 Mondo ID.  Will these be included in the cleanup?  Example: 5-oxoprolinuria


Clean up compiler warnings

During compilation I'm getting a lot of warnings and most of them aren't relevant. We should at some point clean them up so its easier to read.
Another idea was to add a linter, but I'm undecided on which one, so I will leave that open and let us start by cleaning the noise instead.

Waiting on #174

I feel like this should be the standard:
-Wall -Wextra -Wno-implicit-fallthrough -Wno-unused-parameter
Right now, that much works on the post-merged code.


does not work in conjunction with acts_as_list

acts_as_list does not respect default_scope and fires queries that it manually constructs and registers in callbacks:
https://github.com/brendon/acts_as_list/blob/905dd30aacfcb245045643f1da577ea17e1ace27/lib/acts_as_list/active_record/acts/list.rb#L173

i don't think it's the responsibility of hoardable to come up with a workaround for this problem so i'll close this


[5.9 🍒][Dynamic Casting] Use old boxing semantics for pre-Fall-2023 apps

For Apple platforms, enable the new stricter boxing semantics only for apps built against the Fall 2023 or later SDK.  This avoids breaking apps that relied on the old behavior and have not been updated since then.
Resolves rdar://109941470

@swift-ci Please test Linux

This was a cherry-pick from #66350


Fix regression introduced by #11008

Fixes #11012 .
This PR has:

[X ] been self-reviewed.

[X ] using the concurrency checklist (Remove this item if the PR doesn't have any relation to concurrency.)

[X] been tested in a test Druid cluster.

LGTM


improve error display

Implement BO part of #97 issue

Current coverage is 85.25% (diff: 78.46%)

Merging #117 into develop will decrease coverage by 0.43%

@@            develop       #117   diff @@
==========================================
  Files           113        113
  Lines          1887       1919    +32
  Methods          57         58     +1
  Messages          0          0
  Branches        147        148     +1
==========================================
+ Hits           1617       1636    +19
- Misses          214        226    +12
- Partials         56         57     +1

Powered by Codecov. Last update 56813d0...cae854e

/ping @stafyniaksacha I let you decide if you want to merge this PR right away or if you want to upgrade the SDK version first


python310Packages.pykka: 3.1.1 -> 4.0.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.pykka is: A Python implementation of the actor model
meta.homepage for python310Packages.pykka is: https://www.pykka.org/
meta.changelog for python310Packages.pykka is: https://github.com/jodal/pykka/blob/v4.0.0/docs/changes.rst
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.0.0 with grep in /nix/store/xm4aqqsfrl8d5n4ww7c3l85m5hjs9dj5-python3.10-pykka-4.0.0
found 4.0.0 in filename of file in /nix/store/xm4aqqsfrl8d5n4ww7c3l85m5hjs9dj5-python3.10-pykka-4.0.0

Rebuild report (if merged into master) (click to expand)

22 total rebuild path(s)

22 package rebuild(s)

First fifty rebuilds by attrpath
mopidy-bandcamp
mopidy-iris
mopidy-jellyfin
mopidy-local
mopidy-mopify
mopidy-mpd
mopidy-mpris
mopidy-muse
mopidy-musicbox-webclient
mopidy-notify
mopidy-podcast
mopidy-scrobbler
mopidy-somafm
mopidy-soundcloud
mopidy-spotify
mopidy-subidy
mopidy-tidal
mopidy-tunein
mopidy-youtube
mopidy-ytmusic
python310Packages.pykka
python311Packages.pykka

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/xm4aqqsfrl8d5n4ww7c3l85m5hjs9dj5-python3.10-pykka-4.0.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.pykka https://github.com/r-ryantm/nixpkgs/archive/3f9db1f27171b23aff41dd9a0f0ef6a0da1235b8.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/3f9db1f27171b23aff41dd9a0f0ef6a0da1235b8#python310Packages.pykka

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/xm4aqqsfrl8d5n4ww7c3l85m5hjs9dj5-python3.10-pykka-4.0.0
ls -la /nix/store/xm4aqqsfrl8d5n4ww7c3l85m5hjs9dj5-python3.10-pykka-4.0.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

24 packages built:

mopidy
mopidy-bandcamp
mopidy-iris
mopidy-jellyfin
mopidy-local
mopidy-moped
mopidy-mopify
mopidy-mpd
mopidy-mpris
mopidy-muse
mopidy-musicbox-webclient
mopidy-notify
mopidy-podcast
mopidy-scrobbler
mopidy-somafm
mopidy-soundcloud
mopidy-spotify
mopidy-subidy
mopidy-tidal
mopidy-tunein
mopidy-youtube
mopidy-ytmusic
python310Packages.pykka
python311Packages.pykka

Maintainer pings
cc @marsam for testing.

Result of nixpkgs-review pr 256587 run on x86_64-linux 1

48 packages built:

mopidy
mopidy-bandcamp
mopidy-bandcamp.dist
mopidy-iris
mopidy-iris.dist
mopidy-jellyfin
mopidy-jellyfin.dist
mopidy-local
mopidy-local.dist
mopidy-moped
mopidy-moped.dist
mopidy-mopify
mopidy-mopify.dist
mopidy-mpd
mopidy-mpd.dist
mopidy-mpris
mopidy-mpris.dist
mopidy-muse
mopidy-muse.dist
mopidy-musicbox-webclient
mopidy-musicbox-webclient.dist
mopidy-notify
mopidy-notify.dist
mopidy-podcast
mopidy-podcast.dist
mopidy-scrobbler
mopidy-scrobbler.dist
mopidy-somafm
mopidy-somafm.dist
mopidy-soundcloud
mopidy-soundcloud.dist
mopidy-spotify
mopidy-spotify.dist
mopidy-subidy
mopidy-subidy.dist
mopidy-tidal
mopidy-tidal.dist
mopidy-tunein
mopidy-tunein.dist
mopidy-youtube
mopidy-youtube.dist
mopidy-ytmusic
mopidy-ytmusic.dist
mopidy.dist
python310Packages.pykka
python310Packages.pykka.dist
python311Packages.pykka
python311Packages.pykka.dist


Typo in api/refetchRouteData Doc

Link: https://start.solidjs.com/api/refetchRouteData
Section: Reference
Title: refetchRouteData(keys)
Error: Call retchRouteData() to refetch either all the route data on the page, or specific ones based on the key.
Solution: Call refetchRouteData() to refetch either all the route data on the page, or specific ones based on the key.

Made a PR for this


Change default branch name to main

As mentioned by multiple sources, including the Software Freedom Concervancy, master is an outdated term with unnecessary links to politically loaded topics. This is an easy fix and we have no excuse to not change the default branch name to main.
In addition, it will make GeoUtils more consistent with xdem, as mentioned by @adehecq.
There is not a single place in the code that I know of which refers to the branch name, so this is as simple as just cloning the master branch and setting the main branch as default. In xdem, the GeoUtils download calls have to be changed accordingly, and ReadTheDocs might need to have its default branch updated.

https://github.com/github/renaming I think renaming is less intrusive

Oops, turns out I don't have the privileges to change the branch name! Could you do it for example, @adehecq, or provide me the right rights?
We have explicit or implicit approval from @fmaussion, @adehecq, @iamdonovan and @atedstone from the slack channel, so I suggest we pull the bandage or whatever it's called in English and do it as soon as possible.

I just changed the name to main


Admonition styling should be different for info, caution, warning

File: test.md, CC @johndmulhausen
I'm not sure how to do this, maybe some JS that looks for the words inside the first <strong> tag and adds a class to the blockquote based on it? Right now there is no programmatic way to know that they are not just plain notes.

No JS 🙏
We can add classes to the block quotes like
> This is going to make your life miserable
{: .warning}

And then create css like
blockquote.warning {
  border-left-color: #ce4844;
}

Easy peasy. I would also prefer to stick to just 2 types:

Info: the default so that you don't need to even apply the class
Warning: this is really bad

This will force us to be careful when using notes so that we don't end up creating a crappy experience like this (not wanting to offend the authors)

Everything Joao said, basically; I'll have a looksee.

I don't like us having to specify a class as well as the admonition type text itself. Maybe we should have the admonition title automatically added based on the class. I think we should default to Note since that is what we have always done and we have tons and tons of notes.

If we standardize on specific colors (info/note is always blue, warning is always red) we'll have some consistency so we won't need to start the block quote with **note** or **warning**. We can do something like the bootstrap docs (see screenshot in my first comment), where they start the note with a title.
Here's a PR to get the ball rolling #2710. Check the staged demo.

Closing as obsolete; I think @londoncalling's latest pass has us in a good place and we should start a new discussion if we want to evolve from here.


fix output stream of scheduler

Overview
This PR splits the output stream for error and stdout in different files. This is necessary on some parallel filesystems.
Related Issue / Discussion
Additional Information
Contribution Agreement
(as per https://github.com/geopython/pywps/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

[ ] I'd like to contribute [feature X|bugfix Y|docs|something else] to PyWPS. I confirm that my contributions to PyWPS will be compatible with the PyWPS license guidelines at the time of contribution.
[x ] I have already previously agreed to the PyWPS Contributions and Licensing Guidelines

@tomkralidis merging it has a quick-fix.


How To $sheet->with(collect($array)); start from row 8

Please prefix your issue with one of the following: [QUESTION].
Package version, Laravel version
"maatwebsite/excel": "~2.1.0" ,"Laravel 5.3"
Expected behaviour

Actual behaviour
Exception stack trace
Screenshot of Excel file

The red colour is wrong .  $sheet->with(collect($array)); start from row 1.
Steps to reproduce the behaviour

You have to use fromArray for that: $sheet->fromArray($array, null, 'A8')


(PartitionMasterFree) - EaseUS Partition Master (Free) - quit program when it auto-runs

RE: This package is not completely silent.
The application will launch after installation.
Expected Behavior

The program to not run after install, or at least be stopped when it runs.
No additional unwanted software

Current Behavior

EaseUS Partition Master Free Edition runs and stays open after install of partitionmasterfree package
The EaseUS Partition Master Free Edition installer also installs EaseUS Todo Backup.

Possible Solution

Stop the EaseUS Partition Master Free Edition task if found running at end of install script.
Don't install EaseUS Todo Backup if there's an EaseUS Partition Master Free Edition installer switch to do so, or uninstall EaseUS Todo Backup after the EaseUS Partition Master Free Edition installer finishes, or if deemed better -  add a package parameter to the package install to give the installer user a choice of having EaseUS Todo Backup uninstalled after the EaseUS Partition Master Free Edition installer finishes.

Steps to Reproduce (for bugs)
install partitionmasterfree package
Context
I have a reasonable default expectation that installing a package will NOT result in a GUI program running and staying on my screen after the package has finished installing.
Your Environment

Package Version used: PartitionMasterFree v13.0 [Approved]
Operating System and version: Microsoft Windows [Version 10.0.17763.134]
Chocolatey version: Chocolatey v0.10.11
Install/uninstall gist: n/a

Kim - please take a look again. Maybe you did an upgrade?
Below three screenshots on my mostly virgin Win10 testing VM.
cinst partitionmasterfree and then screenshots with no further computer interaction.
Looks like maybe the EaseUS Todo Backup was removed from v13 of EPMF.
This behavior has been present going back multiple versions of the package:

CORRECTION: EaseUS Todo Backup still installs:

Sorry for such a delay in my part of the conversation.
Got bombarded with a long emergency job and then bombarded by package validator kickbacks, and my own pet projects.
Hopefully I'll find some time to test this out soon and respond to you appropriately.


Change &mut self to &self for File::write_ methods

@George-Miao would you like to explain about that?

what about this
#[compio::main]
async fn main(){
    let file = compio::fs::File::open("file.txt").await.unwrap();
    let test = Rc::new(file);

    test.write_at(b"hello world", 0).await;
}

this is what you can do in monoio

Why do you want to wrap File with Rc? The file itself is already clonable.

I would also like to mention that AsyncWriteAt is already implemented for &File. So I don't think you need us to change &mut self to &self.

I used version 0.10.0 in the latest version clone was added for File so I wrapped it in Rc


fix: resolve font conflicts + improve performance

Checklist

[x] Resolve issue/feat. n° #28
[x] tests are included
[x] documentation is changed or added
[x] existing message properties have been updated with new phrases
[ ] new (i18n) language set have been added
[ ] improvement to make view conforms with WCAG 2.1 AA

Description of change
To solve multiple versions of fontawesome conflicts in uPortal (see: #28), the component use only fontawesome svg directly (it don't use fontawesome css/js libs)

add fontawesome dependancies
change Readme
performance improvements : x2.5 faster in rendering

@ChristianMurphy 👋  I had conflicts with rollup-plugin-copy ( 🤷♂ impossible do copy the font inside dist/svgs) so for the moment I have change directly package.json postbuild.

Thanks @ChristianMurphy


No onPress property?

I'm quite surprised there's no onPress property here.
Any reason for that or are PR welcome?

A pull request would definitely be welcome!

@alanshaw coming up with one!


yarn to pnpm

Tests pass locally so merging this anyway even though CI is broken. The problem appears to ESM / CJS incompatibility in algoliasearch:
[WebServer] module is not defined
[WebServer] ReferenceError: module is not defined
    at /node_modules/.pnpm/algoliasearch@4.14.2/node_modules/algoliasearch/lite.js:2:1
    at instantiateModule


Polynomials Codes

The polynomial codes page should include some information about the constructor of the Bernoulli and BurstChannel so that every user knows what the parameters mean.

the document has been updated to include some description about the classes defined in this document.


[feature-request] deactivate color globally and color bracket based on if nested

It would be a nice feature, to use this plugin just for its powerful features to show the brackets in the gutter or the scope lines, without the need to use the actual coloring feature and also to be able to deactivate coloring if the bracket has nothing nested into it, preventing some e.g. color disco if you are only assigning multi dimensional array items

For your first request you can override the colors with 'none'.
	"bracketPairColorizer.consecutivePairColors": [
		"()",
		"[]",
		"{}",
		[
			"None"
		],
		"None"
	]

@CoenraadS with your proposed setting, however, the brackets in the gutter don't show. Is there a way to show brackets in the gutter while showing the theme default brackets color?

I can confirm this, the brackets are not shown in the gutter if their colour's set to "None".


Allow users to book mark emails

Users should be able to bookmark their emails by simply forwarding the email to a specific email address

This feature has been implemented using lambda/sns/s3/ses. It works!

This feature has been implemented using lambda/sns/s3/ses. It works!


Update Readme to include docs on how to setup extension for development / debugging

What are you wanting to see improved / introduced?
It would be a good and fairly easy addition to create a simple how-to on debugging this extension. Refer to Microsoft's official docs for some reference (https://code.visualstudio.com/docs/extensions/developing-extensions), but I think what should be written is the minimal amount of content to be able to download the repo, install the dependencies, and then use the vscode debugger to get an instance of the extension up and running.

This seems to be done in the CONTRIBUTING file. Closing


Update golint url

DC/OS Diagnostics tests for Windows are showing errors
go get -u github.com/golang/lint  fails to retrieve the golint package
updated the URL to point to the correct address

Can one of the admins verify this patch?

Can one of the admins verify this patch?

@mesosphere-ci test this please

@mesosphere-ci test this please

@mesosphere-ci retest this please

@mesosphere-ci retest this please

@mesosphere-ci retest this please


ACM-3043 Remove ingress fix

Revert changes for:
https://issues.redhat.com/browse/ACM-3043

/cc @Randy424


Make it possible to follow the book offline

Hello Luca and thank you for such an amazing book!
Currently if I'd decide to follow the book offline (let's say during the flight) I'd quite soon will be blocked by the fact, that I can't install some dependency or cargo extension. Of course I would be able to continue reading, but coding would be out of scope.
I was wondering if the book would benefit from 1 additional step which would combine all the downloads you need, which can be ran before following along and thus stored in cache?

The easiest way to achieve an offline reading experience is to git clone the code repository and then run:

cargo check;
cargo build
initialise the DB using the provided script (this gets you to install sqlx-cli + the Docker image for Postgres).
Then you should be able to run everything offline using the --offline flag.
The majority of the cargo extensions we end up using (e.g. cargo-edit / cargo-expand) are optional and do not block you from moving forward.

Unfortunately other parts of the book are less suited to offline reading - e.g. everything related to deployments/CI/usage of Digital Ocean.

I see, thanks!


Obtain Resource Models for diffing when syncing

There are two ways to get the resource model to diff. The first is to just store the normalized form in the DB itself, in a table. The other would be to write an algorithm to generate a resource model from the table definition.
Both should be possible. The latter is more flexible, as it allows for users to make modifications to the DB outside of this system. So I should start there.
This is part of #43

I could only partially recover a Resource Model for diffing from the DB, because some of the Model is only used in the API. This is OK. If those items change, then we can simply take them as-is without any adjustments to the DB.

This is a dupe of #43, so gonna close and continue the convo there.


[BEAM-23836] Updating documentation for cross-language Java pipelines…

… using Python external transforms
#23836

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @pcoet @chamikaramj

@pcoet Thanks!


Test directory structure for models doesn't match corresponding implementation files

Right now we have e.g. tests/torchtune/models/test_llama3.py and tests/torchtune/models/test_lora_llama2.py test files for our models. This is not in line with our implementation files, which have directories torchtune/models/llama2, torchtune/models/mistral, etc. We should refactor the tests/torchtune/models directory to better line up with the directory structure of torchtune/models to improve discoverability of our test files.

Already done


Dega Server is restarting on Fatal Errors which are not really Fatal

I am working on setting integration with Meili on Dega Server and currently, the server is restarting every time I perform a reindex on a space with the following error:
2022/05/02 21:14:13 /home/runner/work/dega/dega/server/service/reindex/space.go:36
[0.672ms] [rows:1] [request_id:-] SELECT * FROM "spaces" WHERE "spaces"."deleted_at" IS NULL AND "spaces"."id" = 8 ORDER BY "spaces"."id" LIMIT 1
2022/05/02 21:14:13 unaccepted status code found: 400 expected: [200], message from api: 'error parsing filter;  --> 1:1
  |
1 | space_id=8
  | ^------^
  |
  = attribute `space_id` not found, available attributes are: name, tag_line, site_title, description, kind, review_tag_line, slug, claim, title, site_address, fact, excerpt, object_id, review, subtitle', request: {"filters":"space_id=8","q":""} (path "POST /indexes/dega/search" with method "Search.Search")

The service is restarting everytime it hits an error which is termed as fatal in the code. https://github.com/factly/dega/blob/develop/server/service/reindex/space.go#L55
Searching through the code for log.Fatal gives me the following results. Go through all of these and change to log.Error(err) for the ones that are not supposed to be fatal.

@shreeharsha-factly this has been address already . closing the issue .


(BOLT-318) Add support for targeting nodes by group

Adds support for targeting nodes by group. A group name can be used in-place of a target URI on the CLI
bolt command run 'hostname' --nodes ssh://host1,group_name

or in commands that accept a list of targets
run_command('hostname', ['ssh://host1', 'group_name'])

Note that the top-level group in inventory is named all unless otherwise specified.
Bolt plan run functions will now also split comma-separated list of target URIs, allowing the following to work via a CLI argument similar to --nodes
plan targets(String $targets) { run_command('hostname', $targets) }

A new function has been added to help resolve target input to a list of Targets, get_targets. It backs the Bolt plan run functions, so it will split on comma/space and translate groups to targets in that group.

CLA signed by all contributors.

Updated.


Open permissions to avoid hanging demonstrations

Yesterday a customer, zhg, ran a docker-compose demonstration, but the postgres docker container failed to start.  Reason: file permissions on an AWS EC2 instance.
To avoid this situation in the demonstration, make the file permissions less restrictive.  Also, add a "tip" about tightening the permissions once the user see that the stack does run.

Pull requests:

https://github.com/Senzing/docker-compose-demo/pull/295


[Bug]:

What happened?
A bug happened! when i go to settings it brings me to a 404 error screen or other apps does the same thing
To reproduce the behavior?
reproduce!
What browser are you seeing the problem on?
Microsoft Edge

just wondering does the website get updates

just wondering does the website get updates

Yes the website gets updates from this repository automatically.

Fixed


Add PyPy

Codecov Report

Merging #4 (b047ac3) into main (e73bbc0) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main       #4   +/-   ##
=======================================
  Coverage   91.33%   91.33%
=======================================
  Files           7        7
  Lines         612      612
=======================================
  Hits          559      559
  Misses         53       53

Flag
Coverage Δ

unittests
91.33% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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


Feed page bouncing every when loading more comments

Sometimes when the user is scrolling the feeds page, you will notice that as it is loading more posts, there is some bouncing.
Ideally, we would want the feed page to stay stable and only show or not show that more posts are being loaded.
I have attached the gif below, displaying the issue. Just part of the gif shows the problem.
Tagging @doheekim93 as she pointed out this issue, feel free to edit this and add any comments or thoughts about this

The infinite scroller is still jumping. This could be an option: https://github.com/danbovey/react-infinite-scroller

This seems like it was fixed when we merged this massive PR including the new Loader graphic - #661


chore(snownet): assert that we can send ICMP packets through the tunnel

This is extracted out of #4568 to make that PR smaller. Plus, I'd like to use these new assertions in #4615.

lgtm

Can you approve or is something blocking?


Add MMG Validation to check for OBX-4 Required if field is flagged under a repeating block

Started work on this today, should finish by EOB Monday


Signing requests for BEP20(BSC) network fails as invalid

Whenever I try to sign request for BEP20(BSC) network using Base.signRequest, request fails with invalid signature error. If I try different network like TRC20 for exactly same request, it passes.
{"code":700002,"msg":"Signature for this request is not valid."}

I suspect this is caused by parenthesis in the network name, but I was not able to figure out which format server expects.
I have tried to encode them as URL before passing the whole URL to Base.signRequest, but still no success.

Having same issue...

I having same issue,help me

Any update on this issue?


Update data to CLDR v45

This simple PR updates the data to the latest version of CLDR v45 (@2024-04-17) here:
Versions
Data
I did check the changes and ran the example, but nothing extensive...

Sorry, with language_data in place, this is not straightforward like this. I had problems updating language_data (in submodule updates), so, for now, I'm closing this.


SQL-111, 112, 115, 116, 123

Visual cleanup and spacing around inputs on account and credentials
Header cleanups in browser
Filters separated and displayed
better URL view

There needs to be more vertical space between the filter table and the "Clear Filter" button.


Is it safe to use vac bypass?

I have logged in an account that I have never cheated, with a vac bypass open way, as a result, will something happen to my account after a few months and years?

 I will get a vac ban if I do not even cheat because of the program itself.

its safe but never use CSGhost . i got banned using CSGhost after 1 match. it says it have vac bypass but u will get ban. but this vac bypass is safe 100%.

it is safe

depends on how they gonna handle bans after patching it, just use on non prime accs

this one is safe, been using it for 4 months.
still not banned yet

its safe but never use CSGhost . i got banned using CSGhost after 1 match. it says it have vac bypass but u will get ban. but this vac bypass is safe 100%.

seems like a you issue. ive been using csghost w vac bypass for months no ban

I tried yesterday and it works fine.


v0.12.0_07: Y axis value is truncated

SEVERITY: Minor
MODULE: Stage
Platform:  Windows 7 / Chrome 47.0
STEPS TO REPRODUCE:

Navigate to URL: http://stage-tools.gapminderdev.org/tools/
Tools page is loaded.
Click Options
Click X and Y
Click check box of Follow bubble with zoom
Note that the Y axis value is truncated

ACTUAL RESULTS:
Y axis value is truncated by clicking check box of Follow bubble with zoom
EXPECTED RESULTS:
Y axis value should not be truncated by clicking check box of Follow bubble with zoom
SCREENSHOT:

It's expected. But we should make the zoom-in action more visible, so that one can see why


NuGet packages should be preferred over the implicit built-in dlls

Please provide a succinct description of the issue.
Repro steps
Provide the steps required to reproduce the problem

Create a Webhook/HTTP request function from C# template
Add a project.json with the following content

{
  "frameworks": {
    "net46":{
      "dependencies": {
        "System.Reflection.Metadata": "1.3.0"
      }
    }
   }
}

Add the following code in the function

    log.Info(typeof(System.Reflection.Metadata.AssemblyDefinition).Assembly.FullName);
    log.Info(typeof(System.Reflection.Metadata.AssemblyDefinition).Assembly.CodeBase);

Expected behavior
System.Reflection.Metadata.dll from the NuGet package is loaded at runtime.
Actual behavior
The built-in System.Reflection.Metadata.dll is loaded.  The log shows
2016-09-13T22:22:00.375 System.Reflection.Metadata, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2016-09-13T22:22:00.375 file:///D:/Program%20Files%20(x86)/SiteExtensions/Functions/0.5.10398/bin/System.Reflection.Metadata.DLL

Known workarounds
None
Related information
Provide any related information

Programming language used C#

I don't this is possible with the current architecture. you can't load 2 different DLL versions in the same process. (ignoring AppDomains since we will eventually move to .NET Core, which doesn't have app domains)

We do support multiple side-by-side versions but as @ahmelsayed mentions above, because of the nature of the hosting environment/runtime, there are some limitations.
We'll triage and update this issue when we have more information.

@fabiocav - if we change this, will it result in a breaking change? (Placing in rc until you tell me it won't be)

No. This should already be the default behavior. Just haven't had the bandwidth to look at this yet, but will aim to have an update this week.

@fabiocav Please prioritize the investigation of this issue as rc:must-have

A lot of work has happened, issued identified and closed since this was last updated. I'm closing this issue as the behavior has been validated. The assembly binding should behave as described above, except for assemblies currently redirected by the runtime.


I just checked your result and I get a different result for precint 1101

pct16	pres_clinton	pres_trump	pres_johnson	pres_stein	pres_lariva	pres_other
007-1101	              185	            236	                 12	              8	               3	              0
I have:
precinct registered ballots_cast turnout clinton johnson lariva stein trump undervote overvote blank
1101                1125               655    58.22     258          24        9    16      318               0             2       4

The above is rendered badly, but here again the difference between my numbers and yours.
Clinton: 258 (you have 185)
Trump:  318 (you have 236)
Did you use the official results?
Best
Roger from Datamap


performance module

Hello there, I'm sorry for the trivial question, I have an issue when I'm importing the module the performance function wouldn't load, it throws an error "cannot import name performance".
I'm sorry I really couldn't find the answer on stack.
I'm using Anaconda environment, do you think it can be python compatibility issue ?

Can you post some code to reproduce?

Can you post some code that reproduces the error?

I had the problem here. I have anaconda2 installed and just installed pybacktest and pandas-datareader with 'pip' (as specified on the main page) and 'conda' respectively.
I received the same message  when I ran import pybacktest on spyder right after installing:
import pybacktest
Traceback (most recent call last):

  File "<ipython-input-2-94728f624981>", line 1, in <module>
    import pybacktest

  File "/home/guarita/anaconda2/lib/python2.7/site-packages/pybacktest/__init__.py", line 3, in <module>
    from . import performance

ImportError: cannot import name performance

When I did reset spyder everything was fine, the command ran without any problem.
I'm on a Ubuntu 16.04.1 platform, 64 bit edition with Anaconda 2.

Yeah, relative imports I used back then are kind of antipattern and might lead to problems in different environments. Fixed it, thanks for the report!


[Windows ]Can't resolve '.home.html'

Running angular2-seed I ran into the issue noted at  https://github.com/AngularClass/angular2-seed/issues/6
I had to change the require lines generated to the following
line 147:  metadata = 'template: require("./' + lastFileName + htmlExtension + '"),\n' + metadata;
line 163:  metadata = 'styles: [require("./' + lastFileName + cssExtension + '")],\n' + metadata;
as before it was simply appending . to the start of all file names causing an issue, I'm not sure if this is windows specific as I have no other environments to test on

Sorry, what file did you update this in? I'm searching in the seed repo, can't find it.


Updated staticcheck's URL

This is the new home of the tool.

Coverage increased (+0.1%) to 89.721% when pulling 89c08f3d494197b3440223e69162c60fd4a6805e on update_staticcheck_url into 0d45f49d90f929be7a168fc88d1c378461f2421a on master.

Will submit new one with gosimple and move build/checks in a before_script section in .travis.yml so that in case of failure, the build process ends early.


Update sweet-rice.md

Added the title missing and also the tags.

ah, I did the edits manually, thanks


Release 0.5.1-SNAPSHOT

I'll be committing the changes so far to the master branch and releasing a SNAPSHOT version of it to the Sonar repo. Please log any issues found separately.

Do you want me to hold off on new features / merge the current pull requests? Some existing ones require a little clean up but are probably good enough to release.

I'm inclined to include them with the exception of
Added rule to check for repeated hard coded values #94.
I would like to discuss that one further.
The others are tested and working.  We can handle cleanup as enhancements.
On Sun, Oct 11, 2015 at 9:44 PM, Justin Mclean<EMAIL_ADDRESS>wrote:

Do you want me to hold off on new features / merge the current pull
requests? Some existing ones require a little clean up but are probably
good enough to release.
—
Reply to this email directly or view it on GitHub
https://github.com/cflint/CFLint/issues/97#issuecomment-147272541.

Already committed to master. If something should be pulled out, please feel free to do so.

I'll wait on releasing the build.

Thanks @jjames967
Give me a few minutes.
On Sun, Oct 11, 2015 at 10:17 PM, jjames967<EMAIL_ADDRESS>wrote:

I'll wait on releasing the build.
—
Reply to this email directly or view it on GitHub
https://github.com/cflint/CFLint/issues/97#issuecomment-147274213.

I'm good with the (minor) clean up after the release for the next release.

Merged justin's contribs except for #94.
release is ready for now. IMO.
On Sun, Oct 11, 2015 at 11:00 PM, Justin Mclean<EMAIL_ADDRESS>wrote:

I'm good with the (minor) clean up after the release for the next release.
—
Reply to this email directly or view it on GitHub
https://github.com/cflint/CFLint/issues/97#issuecomment-147280184.

Fixed a few cfparser issues as well.  Want to do a release there as well?

Snapshot is finally deployed. There were some issues as my gpg signing specs were deleted from my computer, but I'm hoping the cfparser and cflint changes play okay together. They're both released as snapshots.

forgive the obvious question, but where are the snapshots deployed?

 SonaType holds releases inside a separate repo. It doesn't release them to children sites like Maven Central. If pulling from a pom file, you need to specify it's okay to pull from the SNAPSHOT repo.
<profiles>
	<profile>
		<id>allow-snapshots</id>
		<activation><activeByDefault>true</activeByDefault></activation>
		<repositories>
			<repository>
				<id>snapshots-repo</id>
				<url>https://oss.sonatype.org/content/repositories/snapshots</url>
				<releases><enabled>false</enabled></releases>
				<snapshots><enabled>true</enabled></snapshots>
			</repository>
		</repositories>
	</profile>
</profiles>

I made a comment in the wiki

Thanks!
On Mon, Oct 19, 2015 at 9:32 PM, jjames967<EMAIL_ADDRESS>wrote:

I made a comment in the wiki
—
Reply to this email directly or view it on GitHub
https://github.com/cflint/CFLint/issues/97#issuecomment-149394248.

@jjames967  Sorry, there is a bug fix that is a bit glaring under the right cirumstances.
#105
this commit:
https://github.com/cflint/CFLint/commit/d2f86bf376d6ca01e4722682af9447889aa87bdd
This should probable be included in the release.

Hi,

@jjames967 https://github.com/jjames967 Sorry, there is a bug fix that is a bit glaring under the right cirumstances.

Except that it should return 1 not return 0. (Test will fail if it returns 0).
Thanks,
Justin

@justinmclean .  Ah right.  Thanks!


Adding atsam4s4b and atsam4s8b

Adds atsam4s_a (48-pin), atsam4s_b (64-pin), atsam4s_c (100-pin) features
Adds atsam4sd (dual bank flash) feature

This commit needs crates pushed to crates.io for atsam4s4b-pac and atsam4s8b-pac before merging.


Now optimizing currents, using diffrax, optimizing with least_squares and adding current penalty

This optimization with least-squares appears to be able to optimize particles from a cold start, starting from a tokamak to a stellarator.
The loss function includes a current penalty so that now that currents are optimized, they do not become too big.

The following changes were made:

There is an overall factor of 7e6 in the magnetic field. This allows us to change the current dofs using order 1 numbers instead of order 7e6
Currents are now being optimized. However, not the first coil current as these can increase together, leading to a larger magnetic field overall and better confinement that way
The tracing is done mainly on trapped particles, as the range of v_parallel was restricted only between -0.2 and 0.2 times v_thermal.
Least squares optimization appears to be stable, yielding better results than Adam. However, for now, both are being used in each optimization
Coils start to get increasingly bigger with optimization, regularization penalties may be needed.


normal_cdf typo in manual?

Summary:
In section 49.7 of the manual (cumulative distribution functions) should the lower limit on the integral for the normal CDF be negative infinity rather than 0? (See the sentences that begin "For instance, normal_cdf(y, mu, sigma) is defined by...").
Current Version:
v2.17.1

Thanks for reporting.
An easier place to record easy-to-fix typos like these is "next manual" issue.  Somebody already caught this one, so it'll be fixed i for the 2.18 release.


It work fine when I run the docker run without the PORTUS_BACKGROUND env.

Hi, I found the same issue, and it seems related to commit a6f6035d40b9d668352ec4c9c2274b9baa54a748, see https://github.com/SUSE/Portus/commit/a6f6035d40b9d668352ec4c9c2274b9baa54a748#diff-68a7cad80c8fd6efe1c4b9dc0d2934cdL106
The "portus" account is apparently no longer considered special, and if it doesn't exist in the LDAP backend (as is our case, and I guess most people's), it fails, so the backend job can't proceed.
We have reverted to 2.3.2, and so far it seems to work.

The "portus" account is apparently no longer considered special, and if it doesn't exist in the LDAP backend (as is our case, and I guess most people's), it fails, so the backend job can't proceed.

This is not exactly the case, since we simply moved this check into another part of the code, but it looks like it's related to what you're saying. Thanks for the hint! :yum:
I'll investigate this issue as a bug. Thanks for reporting :+1:

Can this be fixed in the 2.3 docker image?


Can't add change_reason field to the admin form

I don't know how to add the change reason field in the admin form.
I have followed the instructions adding SIMPLE_HISTORY_HISTORY_CHANGE_REASON_USE_TEXT_FIELD=True to the settings.py file.
I also tried defining a model like this.
from django import forms
from .models import Identity

class IdentityForm(forms.ModelForm):
  class Meta:
    model = Identity
    fields = ['type', 'country', '_change_reason'] #Also tried with 'history_change_reason'

But I got an error saying that the field _change_reason couldn't be found. Unknown field(s) (change_reason) specified for Identity

I think that this feature would be awesome! Did you guys figured out a way to do this?


Automatically test and bump flux library versions when new flux releases are published

We might want to match our version to the flux library versions or find some other semver-compatible way of expressing that when we do this.


Improve autogen for reference docs including jsdoc support

As part of improving the API and Component reference docs #8154 this pull request adds the following:

jsdoc support for API docs. See the AlertIOS changes as an example.
type definitions support and added to both API and Component docs. This is supported via react-docgen and jsdoc. This depends on this react-docgen PR for exposing the type name alias.
better formatting of method properties (now shown in a table).

FYI, API and Component docs were previously generated in two different ways. Components were using react-docgen and that basically remains as-is. APIs were using custom parsing code and that's been switched to use a jsdoc parser + react-docgen as an option for typedefs (it could also use the jsdoc parser).
Two docs have been updated to showcase how we'd like the new docs to look:

AlertIOS (API): showing method parameters, examples, typedefs, more details overall.
Statusbar (Component): showing method parameters, typedefs, more details overall.

Note: To convert new API docs to use the new format, add @jsdoc to the initial file comment. Component docs will show new details as they're added.
Test plan (required)
cd react-native
npm install
cd website
npm install
cd node_modules
rm -rf react-docgen
# Copied over code react-codegen PR changes
cd ..
npm start

Checked: http://localhost:8079/react-native/docs/alertios.html

Checked: http://localhost:8079/react-native/docs/statusbar.html

By analyzing the blame information on this pull request, we identified @janicduplessis and @corbt to be potential reviewers.

This looks awesome @caabernathy!
One thing wasn't clear to me when reading the docs - why are some param names [in_brackets]? Are these optional? See below title vs [message]:

@caabernathy Excellent! I am generally good with this modulo a few questions I had inline.
@mkonicek @bestander -- Any issues? If you are good with this, I say we shipit asap to unblock the rest of the lockdown.

All the comments above are just JS nits, otherwise LGTM

@janicduplessis sounds good. Let me look into this change. It would only be a change for the API docs.

@caabernathy Just marking this as requesting changes for bookkeeping -- just so I don't keep getting to antsy to push it :D

The react-docgen dependency changes were pushed to v2.9.0, so updated testing comments.

@facebook-github-bot shipit

Thanks for importing. If you are an FB employee go to Phabricator to review.

@facebook-github-bot shipit

Thanks for importing. If you are an FB employee go to Phabricator to review.


Support for $apply to perform groupBy in the queries

Is your feature request related to a problem? Please describe.
I want to group some data based on a Gender, City etc and get count of the result
Describe the solution you'd like
A support for $apply through which we can apply groupBy with aggregate function like count,sum,avg etc.
Additional context
Similar to the aggregation extension that odata provides.
http://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/odata-data-aggregation-ext-v4.0.html

sure, let me check this

plan in next major release<EMAIL_ADDRESS>

after<EMAIL_ADDRESS>maybe you can try to use partial $apply feature.
see more https://github.com/Soontao/light-odata/blob/main/docs/API.SystemQueryOptions.md#transformations


Cool library, but i like jpg (smaller). Any ideas on what library to use, or can i take some cool parts from this one

I'm working on a project where i store live tv frames and run some vision processing on them and stored as jpg because of space concerns (we are talking millions to billions of daily tv frames).
I saw the demo of this library and it was relatively smooth. I was thinking of adapting this library to play jpg instead of mpeg, which would involve stripping all the mpeg decoding stuff and just leaving the buffer and some gl stuff (i'm assuming). Does anyone have any idea of an existing library that just handles jpg websocket streaming.
Thanks

There's a format that stores individual jpeg frames as a video: mjpeg. You'll also find a few solution to decode/display these in browsers. Afaik Firefox even supports mjpeg natively.
More: https://www.google.com/search?q=javascript+mjpeg
Btw.: an mjpeg will be much bigger than an mpeg. In fact, intra frames in mpeg are stored in a format very similar to jpeg, but the inter frames in between just store the difference.

I actually did research this and found out your solution is the best way to go. Thanks for the feedback


soroban-rpc: Add writethrough cache for Config ledger entries

After https://github.com/stellar/soroban-tools/pull/692 I noticed that the DB access to config ledger entries is a big part of the preflight computation.
This PR adds a writethrough cache for config ledger entries.
Before the cache:
goos: darwin
goarch: arm64
pkg: github.com/stellar/soroban-tools/cmd/soroban-rpc/internal/preflight
BenchmarkGetPreflight
BenchmarkGetPreflight/In-memory_storage
BenchmarkGetPreflight/In-memory_storage-12         	    6112	    193728 ns/op
BenchmarkGetPreflight/DB_storage
BenchmarkGetPreflight/DB_storage-12                	    2766	    430002 ns/op
PASS

After adding the cache:
goos: darwin
goarch: arm64
pkg: github.com/stellar/soroban-tools/cmd/soroban-rpc/internal/preflight
BenchmarkGetPreflight
BenchmarkGetPreflight/In-memory_storage
BenchmarkGetPreflight/In-memory_storage-12         	    6169	    192616 ns/op
BenchmarkGetPreflight/DB_storage
BenchmarkGetPreflight/DB_storage-12                	    3717	    324078 ns/op
PASS

I am not sure it's worth the extra complexity though, considering it brings us down from  0.43 ms to 0.32 ms per (simple) preflight.

doesn't the cache keep growing indefinitely?

It doesn't, because we only store the config ledger entries

@tamirms I feel that I didn't supply enough context. We only cache config ledger entries. The preflight computation needs config parameters from the network and it fetches them (around 10 ledger entries) every time it runs.
The number of config ledger entries is limited (around 15 of them, see https://github.com/stellar/stellar-xdr/blob/next/Stellar-contract-config-setting.x#L200-L217 ) so we don't have to worry about eviction.

@tamirms  PTAL


index out of range

Hello there,
I'm experiencing the following error while executing:
dep ensure -update
Output:
panic: runtime error: index out of range

goroutine 1 [running]:
github.com/golang/dep/vendor/github.com/sdboyer/gps.(*unselected).remove(0xc420198c60, 0xc4204cd020,0x1e, 0x0, 0x0, 0xc4204c5790, 0x1, 0x1, 0x0, 0x0, ...)
        /Users/robertot/Devel/cuddles/src/github.com/golang/dep/vendor/github.com/sdboyer/gps/selection.go:190 +0x3e1
github.com/golang/dep/vendor/github.com/sdboyer/gps.(*solver).unselectLast(0xc4201a4000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
        /Users/robertot/Devel/cuddles/src/github.com/golang/dep/vendor/github.com/sdboyer/gps/solver.go:1159 +0x6c9
github.com/golang/dep/vendor/github.com/sdboyer/gps.(*solver).backtrack(0xc4201a4000, 0xc4201578a0)
        /Users/robertot/Devel/cuddles/src/github.com/golang/dep/vendor/github.com/sdboyer/gps/solver.go:904 +0x166
github.com/golang/dep/vendor/github.com/sdboyer/gps.(*solver).solve(0xc4201a4000, 0x0, 0x0, 0xc4201a0390)
        /Users/robertot/Devel/cuddles/src/github.com/golang/dep/vendor/github.com/sdboyer/gps/solver.go:371 +0x787
github.com/golang/dep/vendor/github.com/sdboyer/gps.(*solver).Solve(0xc4201a4000, 0x29, 0xc4200100b6, 0x7, 0xc420141830)
        /Users/robertot/Devel/cuddles/src/github.com/golang/dep/vendor/github.com/sdboyer/gps/solver.go:317 +0x8e
main.(*ensureCommand).Run(0xc42013d880, 0xc420157730, 0xc420010410, 0x0, 0x0, 0x0, 0x0)
        /Users/robertot/Devel/cuddles/src/github.com/golang/dep/cmd/dep/ensure.go:144 +0x31b
main.main()
        /Users/robertot/Devel/cuddles/src/github.com/golang/dep/cmd/dep/main.go:96 +0x64f

I have a pretty simple manifest:
{
    "dependencies": {
        "github.com/ganglio/goes": {
            "branch": "develop"
        },
        "go get gopkg.in/kataras/iris.v6": {
            "branch": "master"
        },
        "github.com/streadway/amqp": {
            "branch": "master"
        },
        "k8s.io/apimachinery": {
            "revision": "7080e31e90e981181435294bca96c80a37db8941"
        },
        "k8s.io/client-go": {
            "branch": "master"
        }
    }
}

and no lock file.
Any idea?
The version I'm on is  9a24cac
Thanks!

Seems to be an issue with the downstream dep gps: https://github.com/sdboyer/gps/blob/master/selection.go#L190
While I don't know much about that package it seems like there needs to be a check on the bimodalIdentifier to check the size of the projectList

I'm getting the same issue. It prevents me from using dep ensure

hi folks, thanks for the issue report. yep, this is def a bug in gps (the solver engine that powers basically everything dep does). this one does actually look pretty straightforward - if the lengths differ on those slices, then we don't even need to make it into the loop to know they're not a match.
side note -
go get gopkg.in/kataras/iris.v6

This isn't a valid project name - dep really shouldn't even let you run with it in the list. Did you hand-write it in, or run a command and dep wrote it for you?

I wrote it by hand after the error and before the issue report. Sorry about that. It's unrelated to the issue, tho.

For sure, definitely unrelated to the issue. It just confirms to me that we need some validation there. It's part of a bigger set of feedback we need to provide to the user, probably (generally, constraints that aren't going to be used b/c there are no corresponding imports)

#280

This should now be fixed - if someone could confirm, that'd be great.

Thanks for fixing it! I confirm that it doesn't panic with runtime error: index out of range anymore.
I can't make it work with kubernetes/client-go yet, but I'm sure must be the package issue.

Unless @ganglio reports that they still experience the problem, I think it's safe to close the issue.

I'll close it then, and @ganglio can reopen if need be :)
@kirs is there an issue open for the problem you're experiencing there? maybe #170 or #171?

also...makes me think it'd be useful if we had a fully separate integration test, perhaps even protected by a build tag, that we use to assess the init/ensure-ability of certain larger projects.

@ganglio , what is the version of you git? I was having this problem with git 1.9 (yeah, that old) and I just updated to 2.11 and the problems disappeared. Maybe that can help :)

@sdboyer thanks for fixing it. It does seem to work now.
@jfcorsini I'm using 1.9.1 bit it didn't seem to be that the problem.


kafka-jvm example fails with exit code 11

Hello,
I'm trying to get the kafka-jvm example working, but I've hit a bit of a roadblock.  A couple of things have left me confused ...

The kafka-jvm example under the master branch claims that the example depends on an unmerged branch, the jvm-example branch seems to have been merged into master.  Is the readme out of date?
Setting up the vagrant/virtualbox VM seems to work well and I'm able to ssh into <IP_ADDRESS>, but sparse run --debug -t 120 still fails with a cryptic exit code 11.

To be sure, I uninstalled the streamparse version that was installed through pip install -r requirements.txt, cloned the streamparse repo, checked out the jvm-example branch and then installed via python setup.py develop before retrying the sparse run command.
Below is the output generated by sparse run --debug -t 120 | grep "Emitting: pixel-count-bolt default" using the version of streamparse installed via pip install -r requirements.txt.  As far as I can tell, the problem is identical when using the jvm-example branch.
log4j:WARN No appenders could be found for logger (backtype.storm.utils.ShellProcess).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Traceback (most recent call last):
  File "/Users/louist/Desktop/kafka-jvm-dev/env/bin/sparse", line 11, in <module>
    sys.exit(main())
  File "/Users/louist/Desktop/kafka-jvm-dev/env/lib/python2.7/site-packages/streamparse/cmdln.py", line 83, in main
    run_local_topology(args["--name"], time, par, options, args["--debug"])
  File "/Users/louist/Desktop/kafka-jvm-dev/env/lib/python2.7/site-packages/invoke/tasks.py", line 111, in __call__
    result = self.body(*args, **kwargs)
  File "/Users/louist/Desktop/kafka-jvm-dev/env/lib/python2.7/site-packages/streamparse/ext/invoke.py", line 182, in run_local_topology
    run(full_cmd)
  File "/Users/louist/Desktop/kafka-jvm-dev/env/lib/python2.7/site-packages/invoke/runner.py", line 349, in run
    return runner.run(command, **kwargs)
  File "/Users/louist/Desktop/kafka-jvm-dev/env/lib/python2.7/site-packages/invoke/runner.py", line 153, in run
    raise Failure(result)
invoke.exceptions.Failure: Command execution failure!

Exit code: 11

Stderr:

log4j:WARN No appenders could be found for logger (backtype.storm.utils.ShellProcess).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

The problem appears to be (at least partly) related to invoke.  What gives?

getting the same error myself. Will let you know if I resolve

does any solution for it ?

Did you follow all the instructions in the README? It sounds to me like it's probably an issue with your SSH settings, or possibly the /etc/hosts change you need to make.

The kafka-jvm example under the master branch claims that the example depends on an unmerged branch, the jvm-example branch seems to have been merged into master. Is the readme out of date?

I must have updated it since you saw that, because I don't see that anymore.

I think this was just a matter of outdated instructions, so I'm closing this.


Why entities, list, and singles?

I'm new to Vuex. What's the reasoning behind having entities, list, and singles in the state and how do they differ? Why not a single list?

entities is an object with all resources that have been fetched. Each key in the entities object represents the ID of certain resource. I prefer to have flatten object like this, because it will allow me to cache resources better and to handle nested resources in nicer way
list is list of IDs of resources that are currently shown in the list. Imagine that you have a blog with 7 articles and you would like to show 5 articles per page. So if user goes to the first page then list object will contain IDs of first 5 articles, but when she goes to the second page, then list will contain only remaining two IDs. If you have endless scrolling then you can override fetchListSuccess mutation or change onFetchListSuccess callback to append the articles to your custom array.
singles is array of IDs of resources that user accessed directly. For example if user goes to /articles/1 then article will appear in the entities object, but it will not affect the current list of articles.

entities is an object with all resources that have been fetched. Each key in the entities object represents the ID of certain resource. I prefer to have flatten object like this, because it will allow me to cache resources better and to handle nested resources in nicer way

Sounds good, I've read similar things elsewhere.

list is list of IDs of resources that are currently shown in the list. Imagine that you have a blog with 7 articles and you would like to show 5 articles per page. So if user goes to the first page then list object will contain IDs of first 5 articles, but when she goes to the second page, then list will contain only remaining two IDs. If you have endless scrolling then you can override fetchListSuccess mutation or change onFetchListSuccess callback to append the articles to your custom array.

OK good to know. I'll only have infinite scrolling.

singles is array of IDs of resources that user accessed directly. For example if user goes to /articles/1 then article will appear in the entities object, but it will not affect the current list of articles.

So are you saying that singles will be empty until byId is called, then one ID will be added to singles? Why is this useful? Why isn't entities enough?

Hey @adam-lynch,
sorry for late reply!
singles array will be empty until you call fetchSingle action - which goes then to fetchSingleSuccess mutation and add the add to the array. It can be useful when you want to display 2 articles on one page and fetch them one-by-one and also it's better to use arrays in Vue.js, because of it's reactivity system.
findById is a getter method that is using singles object internally. I have experienced some reactivity issues when I have used entities object directly.

Thanks btw 👍


Array params are always sent as formData on GET requests

Hello, and thank you for such an amazing piece of software.
I'm not sure how it was planned to be, but I've noticed that array params are always been sent as formData, even on GET requests. However, any other than query params are not usually accepted when sending the GET requests.
Yep, it's possible to set param_type through documentation: {}, but that's not always comfortable to do.
Here's my little fix: https://github.com/newstler/grape-swagger/pull/1/commits/f66655462ba7140a113338c0021076bbb330e810

maybe open an PR and adding a spec for your fix …

please add a spec to your fix and open a PR


Set exit_code correctly as output

Fixes #244

Thanks! Can you also add a test which checks that the exit code works to https://github.com/lycheeverse/lychee-action/blob/master/.github/workflows/test.yml?
Something like that:
      - name: Test exit code output (expecting failure)
        id: lychee_exit_test
        uses: ./
        with:
          args: -- inputdoesnotexist
        continue-on-error: true

      - name: Check exit code
        run: |
          echo "Lychee exit code: ${{ steps.lychee_exit_test.outputs.exit_code }}"
          if [[ "${{ steps.lychee_exit_test.outputs.exit_code }}" == "1" ]]; then
            echo "Lychee correctly failed with exit code 1"
          else
            echo "Unexpected exit code: ${{ steps.lychee_exit_test.outputs.exit_code }}"
            echo "Expected exit code 1 for failed check"
            exit 1
          fi

I think we need to test if lychee failed with an exit code other than 0 in case of error. Right now you're testing for 0, which is the default and should always work because otherwise the GitHub workflow stops. Did you try the code snippet I posted? 🤔


Fix zoom after export to PDF is done

This should fix #9235

If you format your code like in the snippet I provided, the CI will be happy. You can also test locally by running npm run lint.

If you format your code like in the snippet I provided, the CI will be happy. You can also test locally by running npm run lint.

Just did it, thanks for making me discover lint!

Thanks @umbe1987.

With pleasure ;)


changes to example files anticipating the json will change on java side

java/json changed with: https://github.com/USGS-CIDA/AQCU/pull/491

Coverage remained the same at 87.66% when pulling af14ea49725d8ff04e55e41098abeb2d85da98bd on mhines-usgs:master into 3927e4695aedde36819ad266594b201814e6db1f on USGS-R:master.


HTTPRequest: TLS handshake error

Tested versions
Reproducible in Godot Engine v4.2.stable.official.46dc27791
System information
Godot v4.2.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated Quadro P620 () - Intel(R) Core(TM) i7-10875H CPU @ 2.30GHz (16 Threads)
Issue description
I created a web server with https support
Issued self signed ssl certificate (OpenSSL 3.2)
Added crt to Certificate bundle override in Godot
When trying to execute HttpRequest in gdscript got error:
E 0:00:14:0222   _do_handshake: TLS handshake error: -9984
<C++ Source>   modules/mbedtls/stream_peer_mbedtls.cpp:89 @ _do_handshake()
Without https all works as intended
In browser and in postman all endpoints works with https with no issues
Steps to reproduce

create simple web server with 1 endpoint
issue self signed certificate with openssl 3.2
secure web server with ssl
add certificate to godot project settings
try to execute HttpRequest to web server

Minimal reproduction project (MRP)
HttpRequest.request() will be enough

In this MRP project #84559 , using Godot's HttpRequest node in c# to access https://www.example.com sometimes gives similar errors.
godot   : USER ERROR: TLS handshake error: -27648
godot   :    at: _do_handshake (modules/mbedtls/stream_peer_mbedtls.cpp:89)

I am also experiencing the same issue with self signed certificates (which does not include website address obviously). I have https server set up on my machine. I am using this certificate for testing purposes on localhost/LAN networks/VPNs. Adding this certificate in project settings does not change anything.
System:
6.6.10-arch1-1, ryzen 5 3600
The problem is apparent in godot 4.1.3 and godot 4.2.1, both without mono.
I have tested my backend with curl and found out that my server required --insecure option for curl to perform a request, because it didn't work with --cacert option.

Happening in v4.3.beta2.official [b75f0485b]

Can confirm still happens on 3978628c6cc1227250fc6ed45c8d854d24c30c30

also seems to happen on rc3

something related to compiling is my best guess.

im only trying to use asset lib and this happens

@IGN-Styly Please edit your comment with more information instead of posting 4 updates in a row, this generates a lot of notification spam.

I have the same issue in my project.
In Godot 4.2.2, to resolve it, I added set_tls_options(TLSOptions.client_unsafe()) in my HTTPRequest node.
In Godot 4.3, the problem reappeared. The project is exactly the same.
In Godot 4.3, it seems that set_tls_options(TLSOptions.client_unsafe()) is not being taken into account.

If the client certificate does not have the correct common name associated
with it, you need to use TLSOption.client_unsafe and specify the
certificate you want to pin (see
https://docs.godotengine.org/en/stable/classes/class_tlsoptions.html#class-tlsoptions-method-client-unsafe
)
Alternatively, you should give the proper common name (DNS name) to the
certificate.
If client_unsafe is not working in 4.3, it might be a regression.
I'll be AFK for another week, I'll try to investigate when I'm back.
On Fri, Aug 16, 2024, 21:10 Styly @.***> wrote:

Seems to be an mbedtls issue.
—
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/85953#issuecomment-2294164604,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAM4C3THHXBZGSDVAIPQUBLZRZMFFAVCNFSM6AAAAABANSNY5GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJUGE3DINRQGQ
.
You are receiving this because you were assigned.Message ID:
@.***>

Godot it self trying to access the asset lib gets tls handshake error. no code written make a project go to the asset lib and you get the error. tried mutiple compile options and prebuilt bin.

If your issue is with asset lib please open a new issue with the proper
information (Godot version, OS, etc).
This issue is about self signed certificates.
On Sun, Aug 18, 2024, 01:26 Styly @.***> wrote:

Godot it self trying to access the asset lib gets tls handshake error. no
code written make a project go to the asset lib and you get the error.
tried mutiple compile options and prebuilt bin.
—
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/85953#issuecomment-2295041146,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAM4C3XYMWFU4HIEMLUQJA3ZR7S3XAVCNFSM6AAAAABANSNY5GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJVGA2DCMJUGY
.
You are receiving this because you were assigned.Message ID:
@.***>

The issues are related, or the same one. can't make an issue as currently my mouse is broken.

I'm pretty confident they are not related (and definitely not the same).
One is about self signed certificates (which needs special handling).
Your issue is about the asset library, which has a valid (i.e. not self
signed certificate), and which we didn't get any other report about, so
it's probably something specific about your configuration.
On Sun, Aug 18, 2024, 17:48 Styly @.***> wrote:

The issues are related, or the same one. can't make an issue as currently
my mouse is broken.
—
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/85953#issuecomment-2295323696,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAM4C3SFXMLMR7OI7K6TREDZSDF7VAVCNFSM6AAAAABANSNY5GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJVGMZDGNRZGY
.
You are receiving this because you were assigned.Message ID:
@.***>

我的项目里也存在同样的问题。
在 Godot 4.2.2 中，为了解决这个问题，我添加了set_tls_options(TLSOptions.client_unsafe())HTTPRequest 节点。
在 Godot 4.3 中，问题再次出现。项目完全一样。 在 Godot 4.3 中，似乎set_tls_options(TLSOptions.client_unsafe())没有考虑到这一点。

Same problem, same project just upgraded to godot 4.3, then RESULT_TLS_HANDSHAKE_ERROR error

Opened https://github.com/godotengine/godot/issues/96170 to track the 4.3 regression regarding TLSOptions.client_unsafe reported by @Fifut .
Updated the title of this PR to reflect the OP issue and opened https://github.com/godotengine/godot-docs/pull/9847 to update and clarify the documentation around TLS certificates in project settings.
We should track Asset Library related issue in https://github.com/godotengine/godot/issues/96103

Opened #96170 to track the 4.3 regression regarding TLSOptions.client_unsafe reported by @Fifut .
Updated the title of this PR to reflect the OP issue and opened godotengine/godot-docs#9847 to update and clarify the documentation around TLS certificates in project settings.
We should track the issue reported around the Asset Library in #96103

I wonder if that works for Websockets served in wss


Problems in dpf

(1)	In yacl/crypto/primitives/dpf/dpf.h,
// Assume we have a function F(*), where F(alpha)=beta, F(*!=alpha)=0.
// DPF splits the finction into two parts F1 and F2, and ensures F1(alpha)=r,
// F2(alpha)=r+beta, and F1(*!=alpha)=r, F2(*!=alpha)=-r

Neither F2 - F1 = F nor F2 + F1 = F.
(2)	In dpf.cc,
YACL_ENFORCE(this->in_bitnum_ > log(alpha));
YACL_ENFORCE(this->in_bitnum_ < 64);

The restrictions should be  this->in_bitnum_ > log2(alpha) and  this->in_bitnum_ <= 64.
(3)	 In dpf.cc, // namespace flcrypto seems strange.
In // if enable_evalall, we have only one last_cw_vec, enable_evalall  should be ! enable_evalall .
(4)	The recursive way of Traverse function is different from the original paper. I think the implementation of Yacl is right and there is something wrong in the original paper.

Neither F2 - F1 = F nor F2 + F1 = F.

Can you show use your test case?

YACL_ENFORCE(this->in_bitnum_ > log(alpha));
YACL_ENFORCE(this->in_bitnum_ < 64);

Good Catch for (2) and (3), would you like to propose PR to fix those?

The recursive way of Traverse function is different from the original paper. I think the implementation of Yacl is right and there is something wrong in the original paper.

Yes, there are indeed some typos in the original paper, but the logics are the same.

For (1), the implementation is right. I mean the code annotation is wrong.
In the code annotation, F2(alpha) + F1(alpha) = 2r + beta.


ci(github): workflow to ensure PR description & commit message parity

Description
As a maintanier/reviewer I want to have automation that makes sure that people don't just fill out the PR description on GH and leave their commit message basically empty so that the real explanation for the changes are contained in the git history and not in a database that we don't control.
Acceptance Criteria

Implement the solution via a GitHub check like the PR title linting that we have in place right now.
Make sure to have a manual override built-in (available only to the reviewers on a case-by-case basis) so that in special cases the check can be marked as passing (but the default is to fail the check and not let the PR get merged without the commit message being legible)
Set it up in a way so that it's part of the checks executed for every pull request and it gets executed when the PR gets updated as well (e.g. if I force push something and change the commit message to something non-legible it should start failing again)

Further context:
You can use this GitHub Action from the marketplace to make API calls directly from the workflow YAML: https://github.com/octokit/request-action
The above then enables you to retrieve the PR description and the PR commit's message through the GitHub API.
Finally with this information being available you can run a comparison and issue a warning state on a check you wrote so that people who are the authors of a pull request where the commit message and the pull request description are mismatched can get to know about this problem.

@zondervancalvez Some test to demonstrate what it should do on a high level:
Test case 1:
PR Description: "asdf"
Commit 1 message in the PR: "asdf"
^^ The check should pass here because everything from the PR description is present.
Test case 2:
PR Description: "asdf - some other information as well"
Commit 1 message in the PR: "asdf"
^^ The check should FAIL here because the person updated the PR description with new information that is missing from the git commit message.
Test case 3:
PR Description: "asdf"
Commit 1 message in the PR: "abcdefg"
Commit 2 message in the PR: "asdf"
^^ The check should PASS here because there was a commit in the pull request that contained the information from the PR description. It's OK if commit 1 didn't have it because at least commit 2 did so the information won't be lost.


Install dependabot

looks useful to keep updating dependencies
https://docs.github.com/en/github/administering-a-repository/about-github-dependabot-version-updates

@syucream Unlike Dependabot, GitHub's native Dependabot doesn't have the auto-merge feature. Are you sure that we will merge updating PRs manually every week?

@naoty hmm, the frequency is a bit high so how about schedule.interval=monthly with open-pull-requests-limit=1 ?

@syucream It's OK with me.

Codecov Report

Merging #53 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #53   +/-   ##
=======================================
  Coverage   70.05%   70.05%
=======================================
  Files          19       19
  Lines         875      875
=======================================
  Hits          613      613
  Misses        203      203
  Partials       59       59

Flag
Coverage Δ

#unittests
70.05% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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

@naoty Fixed! can you check it?


Leeroy/refactor

Update UI images (Fixes #230)
Add more validations for phone and datetime (Fixes #265)
Update sample data (Fixes #259)
Update Userguide (Fixes #191, #178, #262, #268)
Add more explanations and visuals to UserGuide.md

Codecov Report

Merging #271 (f713062) into master (d90ff6c) will decrease coverage by 0.00%.
The diff coverage is 75.00%.

@@             Coverage Diff              @@
##             master     #271      +/-   ##
============================================
- Coverage     50.72%   50.72%   -0.01%
+ Complexity      566      565       -1
============================================
  Files           124      124
  Lines          2555     2563       +8
  Branches        355      356       +1
============================================
+ Hits           1296     1300       +4
- Misses         1180     1182       +2
- Partials         79       81       +2

Impacted Files
Coverage Δ

.../java/seedu/address/model/module/member/Phone.java
90.00% <ø> (ø)

...va/seedu/address/model/module/event/EventDate.java
79.16% <66.66%> (-5.84%)
:arrow_down:

.../seedu/address/model/module/task/TaskDeadline.java
79.31% <66.66%> (-4.69%)
:arrow_down:

.../java/seedu/address/model/util/SampleDataUtil.java
92.59% <100.00%> (ø)

Continue to review full report at Codecov.

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

Fixes #217


Start the notebook server in the user's home directory

Right now the server is started in the electron app directory, should probably start in the user's home directory.

Agreed. A couple other things,

I think we should implement command line arguments so users can start the electron app on a particular directory, just like vscode.
We should store the last directory the user had open so we can reopen to that directory the next time the app starts. I assume we would just add a file to the ~.jupyter directory.
Taking that even further, vscode stores the user's window size, tabs open, etc. We should talk about implementing those as well.


ReadTheDocs and Sphinx Documentation

Documentation in README doesn't match expectations for Python packages. It would be easier to follow if it were deployed on ReadTheDocs with Sphinx

Documentation will use ReadTheDocs theme when v2.0.0 is released (soon).  Will still be hosted on home.ndexbio.org


Bot gets created in the wrong folder

When creating a new bot and not changing the location folder (as it was ok from last time), the bot gets created in the folder C:\Users<username>\Documents\Composer

Version

SHA displays test
Browser

[ ] Chrome
[ ] Safari
[ ] Firefox
[ X] Edge

OS

[ ] macOS
[X ] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:

Create new bot
Select Create from template, Echo Bot and click next
Leave location as is and click next
Check location of bot in file explorer

Expected behavior
Storing in correct folder

@cxbuilders Can you provide the version of Composer that you are using? The specific git commit is most helpful.

@liweitian we see some odd behavior here when creating a new bot in another directory. We're seeing validation errors that shouldn't exist.

git describe --always -> ac1e959b
Teh application SHA on teh ABout page always just displays test. Guess that's a bug, or am I missing something?

@liweitian we see some odd behavior here when creating a new bot in another directory. We're seeing validation errors that shouldn't exist.

@cwhitten fixed in the above PR

addressed via https://github.com/microsoft/BotFramework-Composer/pull/2826


Codepipeline xc3 - Module

Link: https://github.com/XgridInc/xc3/issues/77
[PS-2]
- Feedback addressed.
- Added some new features.
[PS-1]
- Crating PR of codepipeline.

Issues:

This code pipeline is used to automate the deployment of xc3 infrastructure through codepipeline.

[ ] Added tests that cover your change (if possible)
[ ] Added/modified documentation as required (such as the README.md, or the docs directory)
[x] Manually tested
[x] Every function, interface, class has a comment describing what it does and input/output parameters

Signed-off-by: Kashan Ali [<EMAIL_ADDRESS>]

@muhammad-irfan-xgrid & @shehroz-khan-xgrid please resolve all conversations in this PR if those changes have been addressed.


fix: use channel id with new slack api for file uploads

SUMMARY

Fixing changes from https://github.com/apache/superset/pull/28783 where we needed to update the slack sdk call to the new files_upload_v2 method. The api changes a few things that were missed in the original PR: the channels arg is now the channel id instead of name. Also it is recommended to use channel instead of channels. I also found that the slack util file wasn't being used and cleaned up a few other affected parts.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

I'll address @betodealmeida's comments in a fast-follow.