Errors while opening Reason files after a bs build

Hi!
Thanks for your great Vim config, everything works fine but I've been having issues with Reason recently.
Step to reproduce:
git clone git clone https://github.com/chenglou/reason-react-example.git
cd reason-react-example
npm install
npm run build
mvim .

Now open mvim src/simple/page.re from NERDTree.
In my case I get this error:

There are a lot more errors as I type and every time I save a Reason file.
I have installed reason-cli and everything seems to be installed correctly, for example I have no problems with the VS Code plugin, only with VimBox.
Note: If I delete the .merlin file, the file is opened without any errors.
Here is the content of my .merlin file if it helps:
####{BSB GENERATED: NO EDIT
FLG -ppx '/Users/adrien/Projects/reason-react-example/node_modules/bs-platform/bin/reactjs_jsx_ppx_2.exe'
FLG -ppx /Users/adrien/Projects/reason-react-example/node_modules/bs-platform/bin/bsppx.exe
S /Users/adrien/Projects/reason-react-example/node_modules/bs-platform/lib/ocaml
B /Users/adrien/Projects/reason-react-example/node_modules/bs-platform/lib/ocaml
FLG -nostdlib -no-alias-deps -color always -w -40+6+7+27+32..39+44+45
S /Users/adrien/Projects/reason-react-example/node_modules/reason-react/lib/ocaml
B /Users/adrien/Projects/reason-react-example/node_modules/reason-react/lib/ocaml
S /Users/adrien/Projects/reason-react-example/node_modules/bs-director/lib/ocaml
B /Users/adrien/Projects/reason-react-example/node_modules/bs-director/lib/ocaml
S src
B lib/bs/src
S src/retainedProps
B lib/bs/src/retainedProps
S src/todomvc
B lib/bs/src/todomvc
S src/simple
B lib/bs/src/simple
S src/logo
B lib/bs/src/logo
S src/interop
B lib/bs/src/interop
S src/async
B lib/bs/src/async
####BSB GENERATED: NO EDIT}

Thanks!

Sorry for the delay. I notice you have an opam 4.03 installed and I think that BS uses a 4.02.3 so that's probably the source of the conflict. You could install reason-cli instead which might help because it's pinned to ocaml 4.02.3.


Proposal: const_xml_node etc.

I'm using a lot of const in my code. In consequence I find the const/non-const behavior of xml_nodes peculiar.
xml_nodes conceptually are similar to pointers (and iterators). A pointer supports two different kinds of constness, the pointer can be const (as in int * const ptr) or the pointee can be const (as in int const * ptr). The same idea is true for iterators which might be const (iterator const iter) or the iterator might be a const_iterator.
Because a xml_node const actually is similar to a int const * const ptr (one  cannot change the pointee (node data) nor the pointer (node instance)) it has weird behavior in my opinion.
Therefore I propose to introduce a const_xml_node which does not allow to change the data but which can be changed to point to a new node. Of course this involves adding a lot of overloads (similar to std::vector::begin() const and std::vector::begin()), also for other pointer-like structures which makes it more like a 2.0 feature, but I believe that it would increase usability.
Depending on the timing I would also offer to assist.

I forgot, not only does the current state feel peculiar, it also breaks const-correctness. I would need to pass my node to a function as xml_node const & to prohibit changeing my xml_document. But that is overload as sizeof(xml_node) == sizeof(void*). Passing the node by value leads to a copy which drops constness.

This has come up before; I can't find the correspondence :( but it has been suggested before by one or two people and I have thought about this several times.
My general feeling on this is that it's not worth the cost. I think that when I looked at this last time, it looked like a significant increase of the API surface for marginal wins. I don't agree with the "increase usability" moniker - I have never been asked about this with a pretext of not understanding how the API works or why the code doesn't compile. I agree that it would make certain uses of the API safer of course - particularly if you are writing a multithreaded application, it might be nice to get a xml_const_node object from the document and then the type system would ensure you'd never get back to xml_node, making the code provably safe in this regard.
OTOH it also seemed to me like this could be done as an external layer/helper class - say, xml_node is kept as is (which still means that you can't call append_child on a const xml_node object which might seem slightly weird but I'm not sure it actually gets in the way), and xml_const_node just wraps xml_node and provides read-only methods and an implicit ctor from xml_node.
So, obviously feel free to experiment with this idea etc but I'm not sold on it as mentioned above. If this ever does happen it would likely be an ABI-breaking change since mutation methods on xml_node would need to become const, so that won't really happen until 2.0 anyway.

Closing as wontfix for now since this extension seems to add a large amount of API surface and the gains are not clear. Any further thoughts on the matter are welcome in comments.


Mounting a host folder inside a container fails deployment

I'm trying to mount a host folder to a containerized application deployed on Service Fabric. In the "ApplicationManifest.xml" I have something like this:
<ServiceManifestImport>
    <ServiceManifestRef ServiceManifestName="MyAppPkg" ServiceManifestVersion="1.0.0" />
    <ConfigOverrides />
    <Policies>
      <ContainerHostPolicies CodePackageRef="Code">
        <Volume Source="d:\hostfolder" Destination="c:\container" IsReadOnly="false" />
      </ContainerHostPolicies>
    </Policies>
  </ServiceManifestImport>

I'm testing this with a local cluster on my dev machine.
 If do, the deployment fails with 'System.RAP' reported Warning for property 'IStatelessServiceInstance.OpenDuration'. The api IStatelessServiceInstance.Open on node _Node_0 is stuck.
Running docker ps -a I can see the container is created, but never activated.
And looking at the cluster's logs, I see the following entries:
Finish IStatelessServiceInstance.Open() on node bf865279ba277deb864a976fbf4c200e:132176268775856915(_Node_0) on partition {0aefe61a-635b-4541-816e-5634bbc94972} replica<PHONE_NUMBER>92839885. ServiceType = MyAppType. Elapsed =<PHONE_NUMBER>ms. Error = FABRIC_E_TIMEOUT. Message =

AND
Failed to start Container. ContainerName=sf-0-340cf41f-8966-4f5f-9c32-0229f8296466_2a8b0780-f616-47c0-a00d-7e8aa871239d, ApplicationId=MyApp_SFCType_App0, ApplicationName=fabric:/myapp.System.Fabric.FabricException: Docker operation timed out. RequestUri=http://docker_engine/containers/sf-0-340cf41f-8966-4f5f-9c32-0229f8296466_2a8b0780-f616-47c0-a00d-7e8aa871239d/start
   at Microsoft.ServiceFabric.ContainerServiceClient.ContainerServiceClient.<MakeRequestPrivateAsync>d__42.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.ServiceFabric.ContainerServiceClient.ContainerServiceClient.<MakeRequestAsync>d__39.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.ServiceFabric.ContainerServiceClient.ContainerOperation.<StartContainerAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Hosting.ContainerActivatorService.Utility.<>c__DisplayClass14_0.<<ExecuteWithRetryOnTimeoutAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Hosting.ContainerActivatorService.Utility.<ExecuteWithRetryOnTimeoutAsync>d__15`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Hosting.ContainerActivatorService.ActivateContainerOperation.<StartContainerAsync>d__20.MoveNext()

I've restarted docker followed by removing and recreating the cluster. I'm not sure why docker times out activating the container. To be sure, I tested creating the container directly through docker with a new mount using docker run -d -p 80:80 --isolation process --name myapp -v d:/hostfolder:c:/container myAppImage:local.

This no longer happens. I suspect either a docker upgrade or a cluster upgrade resolved the issue.


Docker compose separator conflict

I'm trying the quickstart and it seems they is a issue with docker separator, the code seems to be made to use "-" but my docker compose version use "_".

my docker containers

.
I also have issue with the name proprety in the docker compose that didnt seems to work so I removed it

I saw a stack overflow post about it: https://stackoverflow.com/a/69519102

hmm maybe my version is too old? will try to update

it seems to work now after updating docker compose:


Save zoom factor

It would be nice if, when users click "save" in the haploweb editor, the current zoom factor would also be saved (so that when they reopen their window they find it exactly like they left it).

This remains to be done.


How to only download subtitles in a specific format？

Checklist

[X] I'm asking a question and not reporting a bug/feature request
[X] I've looked through the README
[X] I've read the guidelines for opening an issue
[X] I've searched the bugtracker for similar questions including closed ones

Question
I only want subtitles in a specific format in all languages, if there is no specific format then don't download any subtitles.
yt-dlp -s -vU --sub-format "ass/srt" --proxy http://<IP_ADDRESS>:7890 --all-subs -- https://www.youtube.com/watch?v=YjtC7kw0SRI

But it will download vtt format.
Verbose log
[debug] Command-line config: ['-s', '-vU', '--sub-format', 'ass/srt', '--proxy', 'http://<IP_ADDRESS>:7890', '--all-subs', '--', 'https://www.youtube.com/watch?v=YjtC7kw0SRI']
[debug] Encodings: locale cp936, fs utf-8, out utf-8, err utf-8, pref cp936
[debug] yt-dlp version 2<IP_ADDRESS>044 [29003cf] (win_exe)
[debug] ** This build is unofficial daily builds, provided for ease of use.
[debug] ** Please do not ask for any support.
[debug] Python version 3.8.10 (CPython 64bit) - Windows-10-10.0.19044-SP0
[debug] exe versions: ffmpeg git-2022-02-22-570fda56 (setts), ffprobe 2022-02-21-git-b8e58f0858-essentials_build-www.gyan.dev
[debug] Optional libraries: brotli, Cryptodome, mutagen, sqlite, websockets
[debug] Proxy map: {'http': 'http://<IP_ADDRESS>:7890', 'https': 'http://<IP_ADDRESS>:7890'}
Latest version: 2<IP_ADDRESS>044, Current version: 2<IP_ADDRESS>044
yt-dlp is up to date (2<IP_ADDRESS>044)
[debug] [youtube] Extracting URL: https://www.youtube.com/watch?v=YjtC7kw0SRI
[youtube] YjtC7kw0SRI: Downloading webpage
[youtube] YjtC7kw0SRI: Downloading android player API JSON
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, codec:vp9.2, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), acodec, lang, proto, filesize, fs_approx, tbr, vbr, abr, asr, vext, aext, hasaud, id
[debug] Downloading subtitles: zh-Hans, zh-Hant, en, id
WARNING: No subtitle format found matching "ass/srt" for language zh-Hans, using vtt
WARNING: No subtitle format found matching "ass/srt" for language zh-Hant, using vtt
WARNING: No subtitle format found matching "ass/srt" for language en, using vtt
WARNING: No subtitle format found matching "ass/srt" for language id, using vtt
[debug] Default format spec: bestvideo*+bestaudio/best
[info] YjtC7kw0SRI: Downloading 1 format(s): 248+251

I read the code and found that yt-dlp is designed that way.
   So what are you trying to achieve?

I'll give a more complicated example, most of the videos on www.bilibili.com have only one subtitle (a special xml file), but this subtitle will stop mpv from running, so I don't want yt-dlp to download This xml subtitle.
So I plan to use the --sub-format option to restrict the format of the subtitles, such as ass/srt, so that the xml subtitles will not be downloaded if there are only xml subtitles.

youtube will only give you VTT (pretty much srt).
notes
if you want to get subtitles with a specific format, for processing them later (for example) with your favorite subtitle editor (mine is subtitle workshop), you can always use ffmpeg to convert them back and forth to whatever format you wish.
note 1: youtube gives Unicode (UTF-16 Without BOM) encoded VTT. some editor won't like it, you can always use Notepad++ to convert it to UTF-8 Without BOM, or just plain ANSII (ASCII). you can convert them back to Unicode afterwards (some FFMPEG filters for burning subtitles will require it).
note 2 (regarding note1): VTT and srt are basically just timed text (although VTT theoretically can hold much more - YT does not make use of those features and just includes text and timing), formats such as .ass also include color and relative position on screen (mostly used in anime), so converting them to other formats will cause you to loose that information.
also,
and this is not strictly related,
if you can't find subtitles for a video, try using --write-auto-subs and --sub-langs "all",
whatever you got from that you can "pipe through" https://www.syedgakbar.com/projects/dst
for a 'machine translation' (of your choice of service), and you can continue fixing it manually.

VTT and srt are basically just timed text (although VTT theoretically can hold much more - YT does not make use of those features and just includes text and timing)

Here's a video with colored subtitles and karaoke: https://www.youtube.com/watch?v=_VIeV_LZXHM

@Yay295 thank you
that's an awesome example for the VTT format, which I will keep for reference.
【Original Animation MV】Unison【hololive_宝鐘マリン】 [_VIeV_LZXHM].en.vtt.txt
【Original Animation MV】Unison【hololive_宝鐘マリン】 [_VIeV_LZXHM].ja.vtt.txt
it isn't as feature-rich as SubStation Alpha with all the function,
so they add the characters one by one,
that's an interesting workaround, I wonder how the YT conversion works..

—-convert-subs ass

May we can check here

May we can check here

Not exactly the same functionality as what is being requested for this issue. But maybe I should make a feature request

This is the feature request


Mark some clusters use only service discovery

Describe the feature request
We have built a multi-region, multi-cluster system. Each region has one istiod to manage the clusters in that region. The istiod in each region need discovers clusters in all regions. (ensure that cross-region network disconnects can run independently for each region)
However, I found that if multiple istiods discover the same cluster,  each istiod injects a certificate into the cluster. This makes it infeasible if we want each region to issue a separate certificate via the root certificate.
Can we add an annotation in the cluster's secret that mark this cluster for service discovery only, without cluster management operations such as certificate injection.
Describe alternatives you've considered
We can add an annotation like this:
apiVersion: v1
kind: Secret
metadata:
  annotations:
    istio.io/clusterContext: {{cluster_name}}
  name: istio-cluster-context
  namespace: istio-system
  labels:
    istio/multiCluster: "true"
    istio/discoveryOnly: "true"

If a cluster is marked as istio/discoveryOnly: "true", operations such as certificate injection are not performed.
if it is make sense, I can work on it.
Affected product area (please put an X in all that apply)
[ ] Docs
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[X] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

cc @stevenctl


[KS] Long $route.params causes overflow problems

The long strings ($route.params) causes overflow problems in the Page Loaders examples (Template7 Page and Component Page) on devices that have a small screen

Thanks!


Update automerge.yml

Which Issue(s) This PR Fixes(Closes)

Fixes #issue_id
Brief Description

How Did You Test This Change?

🚀Thanks for your contribution🎉. CodeRabbit will review your code first🔥


strategy for shard describes (vs specs/files)  to allow adaptative test / generalizations

Hi team, thanks for your work, i know this is not an issue per se, but is related to sharding configuration strategy, and test efficiency.
our requirement is executing multiple times same spec but using variants of input parameters. The most simple example is to execute with sharding login spec using different users / roles.
currently i have something similar to this
users.map((key) => {
    describe(key + ' - authentication ', () => {
.....
..... adaptative tests upon users (or other context inputs)
.....
      })
})

issue here is that we need to run all those sequentially, others issues like retry and sharding by suites i can workaround some how, but i am not seeing other solution here but
A to wrap protractor flake to run same file with different parameters, but that's kind of braking this clean sharding solution.
B create a spec per entity and call a helper, but that's is not a long term viable solution if when we have flexible test for like dozen+ workflows.
any thoughts or doc reference will be much appreciated.
Thank you.

Hi @gustavomick
As you also mention it's not an issue per se, but this issue log on git is for issues.
Your question is better suited for StackOverflow or Gitter. Please ask a question there with the 'protractor' tag or post in the Gitter Channel to get help.
From the the getting help section of the README:

Please ask usage and debugging questions on StackOverflow
(use the "protractor" tag) or in the Angular discussion group. (Please do not ask support questions here on Github.)

I'm going to close this issue now, but it's still open for discussion.
If I look at your question and your example of the login spec I wonder why you need to test a login with different roles? Are you connected to real services and can you only test is then, or can you mock it making this less depending on each other?

@wswebcreation thanks, i gonna ask on stack thou i think i need a feature that may be is no there yet.
our system allows to customize / design entities, so,  to allow to test different customizations i created those tests with a very basic adaptability logic, they consider inputs parameters like json configs (that describes those tests) and create simple execution steps to cover all of them.
specific for the users scenario mentioned above, bc each role has a customized dashboard, i check which "dashboard/settings" are rendered for each main role on each main scenario.

@gustavomick
Does that mean that the output of the services define the "dashboard / settings" ?

yes

Ok, do you really need to use the services or can you mock them? For example, I'm using ng-apimock and an example implementation can be found here http://www.wswebcreation.nl/mocking-angular-and-angularjs-applications/
It's really easy to use and it will isolate my frontend so I can test it how it should be tested ;-)

Hey sorry to say but, I m not seeing how this resolves/breaks secuenciality on sharding scenarios restricted currently per file (vs per describe). Could you elaborate a little, thanks!

With mocking your services you are not depending on (test)data and you can run in paralel to make your tests more efficient and faster

Ahh well we really use these not only for ui test, but primary for end 2 end test.. i cant use mocking only on units. Thanks


ScrollIntoView not working on PullToRefreshListView

My listview is set an ObservableCollection
If I make the call:
this.lstvDocuments.ScrollIntoView(NewDocumentItem);"
it does not scroll to the item.  If I update the xaml control to be a regular listview, the code will scroll to the item.
I was able to duplicate the issue in the test app using your source code.
Thanks!
Jeffrey

Ok I got it working using an extension class on the scroller(found on the internet) and added a new call in PullToRefreshListView.cs
public void MyScrollerCode(object item)
{
var container = ((ListViewItem)(this.ContainerFromItem(item)));
this.Scroller.ScrollToElement(container);
}
And the extension method is:
public static void ScrollToElement(this Windows.UI.Xaml.Controls.ScrollViewer scrollViewer, UIElement element,
bool isVerticalScrolling = true, bool smoothScrolling = true, float? zoomFactor = null)
{
var transform = element.TransformToVisual((UIElement)scrollViewer.Content);
var position = transform.TransformPoint(new Windows.Foundation.Point(0, 0));
        if (isVerticalScrolling)
        {
            scrollViewer.ChangeView(null, position.Y, zoomFactor, !smoothScrolling);
        }
        else
        {
            scrollViewer.ChangeView(position.X, null, zoomFactor, !smoothScrolling);
        }
    }

So there may be a better way to do it but this seems to work for me.  Any input on this will be greatly appreciated.  Thanks for a great project like this one!  It has been working great!


Inserting an image into a sheet/cell

Is there a way or syntax to convert and insert an image somewhere into a sheet? I tried to do this as follows but am getting the following error with converting the JPEG to a readable format to Excel:
ValueError: Cannot convert <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=129x120 at 0x124B1CDD0> to Excel
Sample code
img = Image.open("path/to/file")

def main() -> Vstack:

return Vstack(
Cell(img)
)

Sorry @bicachu there currently isn't support for images.
This feature could be added though. Excelbird uses openpyxl for the lower level implementation of writing data to xlsx files. So if we introduced a simple Image type that just stores a file path or bytes, we could accept this as an argument (similar to your example) and handle it under the hood using openpyxl.drawing.image.Image to write the data.

Thanks @ryayoung - is there a way to add inside an Excelbird Sheet or Cell container? Looking at the documentation for openpyxl - working with images, it requires a worksheet instance to be set first such that
wb =. Workbook()
ws = wb.active
ws.add_image(img, 'A1')

Is there a way to easily do this within an existing excelbird Sheet declaration or does the Sheet class needed to be changed to add such an attribute such an add image function


Cannot run npm run build with node v17 & npm v8

Description
Running npm run build encounters an error when it executes npm i
Instead, I get this error
➜  alpaca git:(main) npm run build

><EMAIL_ADDRESS>build
> npm run clean && npm i && npm run build:mjs && npm run build:cjs && npm run build:esm  && npm run build:browser && npm run build:esm_bundle

><EMAIL_ADDRESS>clean
> rimraf dist @types

npm notice Beginning October 4, 2021, all connections to the npm registry - including for package installation - must use TLS 1.2 or higher. You are currently using plaintext http to connect. Please visit the GitHub blog for more information: https://github.blog/2021-08-23-npm-registry-deprecating-tls-1-0-tls-1-1/
npm notice Beginning October 4, 2021, all connections to the npm registry - including for package installation - must use TLS 1.2 or higher. You are currently using plaintext http to connect. Please visit the GitHub blog for more information: https://github.blog/2021-08-23-npm-registry-deprecating-tls-1-0-tls-1-1/
npm WARN deprecated<EMAIL_ADDRESS>standard-version is deprecated. If you're a GitHub user, I recommend https://github.com/googleapis/release-please as an alternative.
npm ERR! Cannot read properties of null (reading 'pickAlgorithm')

npm ERR!
Reproduction
Use node v17.6.0 & npm v8.11.0.

git clone
npm i

Switching to node v14.20.1 lets the application build normally. This is definitely lower priority because alpaca client is still usable in latest version of node once installed. This is only important for contributors who wish to build the client.

v7 is on the way, you can track it here  #113


undocument curl (Mai 2018 removal date)

undocument mai 2016
deprecation mai 2017
removal mai 2018

"remove" still needs to be changed to "removed" - otherwise LGTM

also done

Hold the phone, when was this decided? The curl binding's poor quality was talked about during the panel today but don't you think removal deserves at least a news group post?

btw, what can be used without vibe.d instead? Do we plan to add something instead of net.curl?

BTW, after deprecation (if not sooner) curl and friends should be moved to unDead or somewhere else on code.dlang.org, to lessen the breakage.

the deprecation path by now seams to be.

remove doc
mark as deprecated
delete in phobos and move to undead

@DmitryOlshansky there will be now replacement for curl in phobos.

<EMAIL_ADDRESS>

wasn't it decided that entire etc.c must go? So zlib and sqlite3 too?

@wilzbach yes, I will create these PRs next!

2 recommendations:

Do not remove curl docs. If you are deprecating the module, but we are including it, I think we should document that it's there and deprecated.
No reason to put "This isn't up to Phobos standards". Just put that it's deprecated and when this will happen.

@DmitryOlshansky there will be now replacement for curl in phobos.

What is "now"? "no"? "new"?
Currently, curl is the only reasonable way to do a HTTP request with D without third-party libraries.

@DmitryOlshansky there will be now replacement for curl in phobos.
What is "now"? "no"? "new"?
Currently, curl is the only reasonable way to do a HTTP request with D without third-party libraries.
Show all checks

So, I suppose "@DmitryOlshansky" is "@9il" and "now" is "new" =)

IMO it is not reasonable, it is blocking

So, I suppose "@DmitryOlshansky" is "@9il" and "now" is "new" =)

What's the new replacement?

IMO it is not reasonable, it is blocking

It's OK for many scripts and small programs...

@CyberShadow curl will still be there, the bindings will exist in undead.
Curl is already a 3rd party library (not always installed), this is just a binding. It's definitely good work, and should remain, but adds external dependencies that simply shouldn't be part of the core language.

I think that until we get a native HTTP library in Phobos, this goes against the "first 5 minutes" idea. Downloading a web page or doing a REST request is one of the things people would want to do in small D programs without any dependencies. Telling people that they have to get another library or write a dub.sdl file for such a simple thing would not be so great.

curl, sqlite and everything binding directly to not OS C stuff is just a pain to maintain. It should just go.

this goes against the "first 5 minutes" idea.

Seriously, if the first 5 minutes is "learn how to use curl", then we aren't doing much better.

We need a replacement before we deprecate curl.

Seriously, if the first 5 minutes is "learn how to use curl", then we aren't doing much better.

It's not that bad. std.net.curl does a very nice job of wrapping everything in a curl-agnostic manner. Really, just from looking at its public API, it's actually not easy to tell that it's a curl wrapper.
Speaking of which, that creates a deprecation path - it might be possible to create an API implementation for std.net.curl which underneath uses native D code in the future.

@CyberShadow that is properly the way to go.

We need a replacement before we deprecate curl.

Just a thought from my (newcomer) view - we should document that this on our agenda!
Maybe we can have a (high-level) community roadmap?
I updated our wish list recently, but it still feels a bit out of date.
https://wiki.dlang.org/Wish_list
https://wiki.dlang.org/How_You_Can_Help
Better ideas? Maybe we can find a better place or format?

@CyberShadow apologies, I was mistakenly looking at etc.c.curl as the only module we had for curl in D, which didn't look that user-friendly.
I agree if we can replace std.net.curl with something that uses D underneath is likely useful. I'm just a bit skeptical that someone will produce an equivalent to curl for D any time soon.
In any case, I obviously am not qualified to comment further, as I'm not a user of this feature.

@burner OK I have made a start on the replacement library for std.net.curl, I am having some difficulties though perhaps you can help me out.
extern(C) int tcp_connect(void* socket);

void main()
{
  static immutable string paula = "Brillant";
  tcp_connect(cast(void*)&paula);
}

I am completely kidding of course!

static immutable string paula = "Brillant";

@burner That probably wasn't funny unless you were familiar with this reference: http://thedailywtf.com/articles/The_Brillant_Paula_Bean

That probably wasn't funny unless you were familiar with this reference: http://thedailywtf.com/articles/The_Brillant_Paula_Bean

I'd say it's too funny.


Sync tox.ini configuration with supported Python versions

Per Travis CI configuration and trove classifiers, Python 3.2 is not supported. Remove it from tox.ini.

Rebased to resolve merge conflicts.

thanks for putting this together.


Add ConnectionPoolListener.andThen(ConnectionPoolListener)

We could add ConnectionPoolListener.andThen() to chain more than one listener:
ClientFactory
  .builder()
  .connectionPoolListener(
    ConnectionPoolListener.logging().andThen(
      ConnectionPoolListener.metricCollecting(...)
    )
  )
  .build()

.. just like we have andThen() method in LogWriter and MeterIdPrefixFunction.

@trustin Can I work on this issue? Moreover, I am pretty new to the world of contributing to open source, I might need some guidance to work on it, is it okay?
Thank you

@trustin Can I work on this issue? Moreover, I am pretty new to the world of contributing to open source, I might need some guidance to work on it, is it okay?
Thank you


Include tutorial article directive in generated documentation

Bug/issue #, if applicable: rdar://106652019
Summary
This adds the tutorial article directive to the generated documentation and updates generate-symbol-graph to warn about missing directives.
It also adds basic documentation for the tutorial article directive that's based on the documentation for the tutorial directive.

Dependencies
None.
Testing

Preview the documentation withswift run docc preview Sources/docc/DocCDocumentation.docc

Verify that there is a Article directive page
Checklist
Make sure you check off the following items. If they cannot be completed, provide a reason.

~ [ ] Added tests~
[x] Ran the ./bin/test script and it succeeded
[x] Updated documentation if necessary

@swift-ci please test


New terms relating to circulating lipid level

If this is a request for a new term, please provide us with the following information.

Preferred term label

1. Hypolipidemia
2. Decreased circulating phytosterol level

Synonyms

1. hypolipidaemia | hypolipaemia | hypolipemia
2. decreased circulating phytosterol concentration | decreased circulating plant sterol concentration | decreased circulating plant sterol level

Textual definition (the definition should be understandable even for non-specialists.

1. abnormally low concentration of lipids in the circulating blood
2. decrease in the amount of phytosterols in the blood; commonly ingested phytosterols include beta-sitosterol, campesterol, and stigmasterol

Any additional notes to clarify the meaning or use of the term.

1. PMID:30991053 only mentions "reduced blood lipid levels" without specifying which ones. Also, hyperlipidemia exists as standalone term, so why not hypolipidemia?
2. I have no input on the phytosterol level, other than that I noticed that was the only term in this branch that does not have an increased-decreased pair!

Suggested parent term

1. MP:0003949 abnormal circulating lipid level
2. MP:0010075 abnormal circulating phytosterol level

Added new terms:
hypolipidemia MP:0031206 [Annotations from PMID:30991053 (J:277247)]
decreased circulating phytosterol level MP:0031205


why not support .NET Framework 4.5

just a suggestion

Just because I needed wanted .net 4.6.1 at the time for a project of mine. I haven't kept this repo up to date due to lack of adoption, so I've just been concentrating on dotnet core. PRs welcome though.


Cannot play audio when passing an object as src

Not working: Version 1.0 (tried NEXT too)
Working:  0.6.2
When registering a sound like this:  window.createjs.Sound.registerSound({mp3: src}, id, data); , I cannot play the the instance. No errors, no audio.
I think that the sound is being registered with src as a string, but when calling play, src is sent as an object. So, I think that in beginPlaying ,  when calling SoundChannel.add , var channel = SoundChannel.get(instance.src); returns null, as instance.src is an Object.

I believe I've tracked this down, inside registerSound you've got
if (src instanceof Object && src.src) {
    basePath = id;
    loadItem = src;
}

but you should be doing
basePath = basePath;

This means that the audio path gets mangled with a nonsense prefix.


[bug/ECP-1192] - Start page - 'check your eligibility today' link directs to wrong page

@martikat Can we check this as this is now inconsistent with what we do for M+P and TSLR. I am happy to jump on a call with Laura if its required. But I don't believe this is correct from a consistency standpoint. Not what you have done, rather what the business have asked


Add non-persisted state to resource

@mlefebvre As requested!
See the example files for how to use.

Very nice! Thanks 😁


Run ruff check --fix

I ran ruff check and got this output:
$ ruff check
xcodetocmake.py:35:26: F541 [*] f-string without any placeholders
   |
33 |     with open('CMakeLists.txt', 'w') as cmake_file:
34 |         # Write the minimum required CMake version
35 |         cmake_file.write(f"cmake_minimum_required(VERSION 3.10)\n")
   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ F541
36 |         # Write the project name
37 |         cmake_file.write(f"project({project_name})\n\n")
   |
   = help: Remove extraneous `f` prefix

xcodetocmake_deps.py:51:30: F541 [*] f-string without any placeholders
   |
49 |     try:
50 |         with open('CMakeLists.txt', 'w') as cmake_file:
51 |             cmake_file.write(f"cmake_minimum_required(VERSION 3.10)\n")
   |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ F541
52 |             cmake_file.write(f"project({project_name})\n\n")
   |
   = help: Remove extraneous `f` prefix

xcodetocmake_deps.py:70:64: F821 Undefined name `PROJECT_NAME`
   |
68 |                 for framework in files['frameworks']:
69 |                     framework_name = os.path.basename(framework).replace(".framework", "")
70 |                     cmake_file.write(f"target_link_libraries(${PROJECT_NAME} {framework_name})\n")
   |                                                                ^^^^^^^^^^^^ F821
71 |
72 |             # /* Link additional user-specified dependencies */
   |

xcodetocmake_deps.py:74:60: F821 Undefined name `PROJECT_NAME`
   |
72 |             # /* Link additional user-specified dependencies */
73 |             for dep in dependencies:
74 |                 cmake_file.write(f"target_link_libraries(${PROJECT_NAME} {dep})\n")
   |                                                            ^^^^^^^^^^^^ F821
75 |
76 |             # /* Conditionally handle resources */
   |

xcodetocmake_deps.py:79:34: F541 [*] f-string without any placeholders
   |
77 |             if include_resources and files['resources']:
78 |                 cmake_file.write("\n# Resources\n")
79 |                 cmake_file.write(f"set(RESOURCE_DIR ${{CMAKE_BINARY_DIR}}/Resources)\n")
   |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ F541
80 |                 cmake_file.write(f"file(MAKE_DIRECTORY ${{RESOURCE_DIR}})\n")
81 |                 for resource in files['resources']:
   |
   = help: Remove extraneous `f` prefix

xcodetocmake_deps.py:80:34: F541 [*] f-string without any placeholders
   |
78 |                 cmake_file.write("\n# Resources\n")
79 |                 cmake_file.write(f"set(RESOURCE_DIR ${{CMAKE_BINARY_DIR}}/Resources)\n")
80 |                 cmake_file.write(f"file(MAKE_DIRECTORY ${{RESOURCE_DIR}})\n")
   |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ F541
81 |                 for resource in files['resources']:
82 |                     cmake_file.write(f"file(COPY {resource} DESTINATION ${{RESOURCE_DIR}})\n")
   |
   = help: Remove extraneous `f` prefix

Found 6 errors.
[*] 4 fixable with the `--fix` option.

So, I applied its suggestions. Note: I'm not sure if these changes are correct or not; please review...

I will review them later today, thanks for taking the time to check the script.


v3.0.3

Bumps the version number for v3.0.3

Coverage remained the same at 100.0% when pulling f2e9ceb40e9a93cda6aeeec4d0ed43d519228a56 on isaacbrodsky:version-3.0.3 into e545cf3b4c2807d97581ae070d1bb4c02f61728e on uber:master.


Image in footer section is displaying beyond the page boundaries

Complete information of this issue is present here - https://stackoverflow.com/questions/56056793/tppdf-ios-image-in-footer-section-is-displaying-beyond-the-page-boundaries
I have attached my sample project too.
My code snippet:

var layout = PDFPageLayout()
layout.margin = UIEdgeInsets(top: 30, left: 30, bottom: 30, right: 30)
layout.size = PDFPageFormat.a4.size
layout.space.header = 30
let document = PDFDocument(layout: layout)
let headerImage = UIImage(named: "header")!
let headerImageElement = PDFImage(image: headerImage)
headerImageElement.quality = 1.0
headerImageElement.options = [.none]
document.addImage(.headerCenter, image: headerImageElement)
for i in 1...100 {
document.addText(.contentCenter, text: "Content goes here. (i)")
}
let footerImage = UIImage(named: "footer")!
let footerImageElement = PDFImage(image: footerImage)
footerImageElement.quality = 1.0
footerImageElement.options = [.none]
document.addImage(.footerCenter, image: footerImageElement)
do {
var docURL = try PDFGenerator.generateURL(document: document, filename: "Example.pdf")
let request = NSURLRequest(url: docURL);
webView.load(request as URLRequest);
}
catch {
print("error loading PDF")
}
Sample App.zip

I took a look at it, and it seems there has been a calculation error for footer elements.
As i just refactored calculation portions, I think I might have fixed this too. Can you please take a look at the develop branch, test it using that branch and give me feedback if you can still reproduce the issue.
This is an example how you can use the develop branch in your Podfile:
pod 'TPPDF', :git => 'https://github.com/techprimate/TPPDF.git', :branch => 'develop'


Allow enum variants to be used as label values

Closes #17.

Hmm, in the integration test the correct traits aren't being called, so I'll have to shuffle things around some more.


Posted codeforces question of A_paranomix's_prediction

Great work @Rohitsuper69 please give this repo a star if it really helped you to complete your PR.
Also follow me for follow back if you want to get connected with me for any such open source contribution program. Thank you 😊


Refactored ProgramLibrary to use the DeviceCache

removed an instance of ProgramLibrary from GraphicsDevice, removing a circular references, and breaking dependency of Graphics on what should be a higher level library

deprecated function on the GraphicsDevice:
getProgramLibrary();
setProgramLibrary(programLib);
removeShaderFromCache(shader);

removed circular dependencies:
src/graphics/program-lib/utils.js -> src/graphics/program-library.js -> src/scene/materials/standard-material.js
 -> src/graphics/env-lighting.js -> src/graphics/reproject-texture.js -> src/graphics/program-lib/utils.js

src/graphics/program-library.js -> src/scene/materials/standard-material.js -> src/graphics/env-lighting.js
 -> src/graphics/reproject-texture.js -> src/graphics/program-library.js

src/graphics/program-library.js -> src/scene/materials/standard-material.js -> src/scene/materials/material.js
 -> src/graphics/program-library.js

Shouldn't the new file be called 'program-library' instead of 'get-program-library'?

Yes, but we already have a file with that name. Maybe access-program-library?

Shouldn't the new file be called 'program-library' instead of 'get-program-library'?

Yes, but we already have a file with that name. Maybe access-program-library?

Any reason not to put the new code in existing program-library file?

Shouldn't the new file be called 'program-library' instead of 'get-program-library'?

Yes, but we already have a file with that name. Maybe access-program-library?

Any reason not to put the new code in existing program-library file?

Yes, I moved it out to remove dependency on program-library module, as that was creating those circular dependencies.
It's similar to existing default-material.


automatically enter download mode

support both two types of hardware.

nodemcu like hardware  #5 #7
chips with build-in USB Serial/JTAG, such as esp32s3 and esp32c3,  computer connect to chip directly via usb, no USB to serial bridge. #24

Thanks for this. I haven't merged yet because I would like to test this more thoroughly before merging it in.

@makermelissa btw using this fix and added C6, C2 and H2 in my fork

@makermelissa btw using this fix and added C6, C2 and H2 in my fork

Awesome. It sounds like you've done some testing. I'll go ahead and merge this. Want to submit a PR for the new boards?


Modal cannot be closed while loading

Having a ModalContainer without ModalDialog cannot be closed.
Example:
<ModalContainer onClose={onClose}>
    {loading
        ?

            Loading ...

        :
        <ModalDialog onClose={onClose}>
            {children}
        </ModalDialog>
    }
</ModalContainer>

In this example the modal cannot be closed as long as loading == true. Neither clicking the background nor pressing ESC works.

Workaround: if you include a hidden <ModalDialog> element in the container, then you can click to close.


Added: Support for Japanese locale

Related Issues

Short Description and Why It's Useful

Screenshots of Visual Changes before/after (If There Are Any)

Contribution and Currently Important Rules Acceptance

[x] I read and followed contribution rules

@Nishtha-Jain-1119 Resolve conflicts


Fix test to handle new init syntax

Interesting. When did that start failing?

fixed in https://github.com/jbangdev/jbang/commit/ce15aae7c526f2916cd11cd6bc33165f1b2aef0a as this repo is derived from those source files.


What happened to serve cli?

Hi,
I am not trying to sound alarming, but it seems A LOT as changed recently (since last time I opened an issue in February #330), and serve didn't have a changelog to reflect this at all.
It took me a while to figure out 7.0.0 basically wipe every existing conventions, and current readme doesn't mention you need to stick with 6.5.8.
IMO, 7.0.0 release makes a previous simple cli much more complex, even with serve --help. To illustrate my problem, here is my full attempts at 7.x after install (as a 6.x user):
dev@g3:~/www/test$ sudo serve -p 80 ~/www/test/
ERROR: Unknown or unexpected option: -p
dev@g3:~/www/test$ sudo serve -h

  serve - Static file serving and directory listing

  USAGE

      $ serve --help
      $ serve --version
      $ serve [-l listen_uri [-l ...]] [directory]

      By default, serve will listen on <IP_ADDRESS>:3000 and serve the
      current working directory on that address.

      Specifying a single --listen argument will overwrite the default, not supplement it.

  OPTIONS

      --help                              Shows this help message

      -v, --version                       Displays the current version of serve

      -l, --listen listen_uri             Specify a URI endpoint on which to listen (see below) -
                                          more than one may be specified to listen in multiple places

      -d, --debug                         Show debugging information

      -s, --single                        Rewrite all not-found requests to `index.html`

  ENDPOINTS

      Listen endpoints (specified by the --listen or -l options above) instruct serve
      to listen on one or more interfaces/ports, UNIX domain sockets, or Windows named pipes.

      For TCP ports on hostname "localhost":

          $ serve -l 1234

      For TCP (traditional host/port) endpoints:

          $ serve -l tcp://hostname:1234

      For UNIX domain socket endpoints:

          $ serve -l unix:/path/to/socket.sock

      For Windows named pipe endpoints:

          $ serve -l pipe:\\.\pipe\PipeName

dev@g3:~/www/test$ sudo serve -l 80 ~/www/test/
INFO: Accepting connections at http://localhost:80
^C
INFO: Gracefully shutting down. Please wait...
dev@g3:~/www/test$ serve -l 80 ~/www/test/
serve: Error: listen EACCES <IP_ADDRESS>:80
    at Object._errnoException (util.js:992:11)
    at _exceptionWithHostPort (util.js:1014:20)
    at Server.setupListenHandle [as _listen2] (net.js:1338:19)
    at listenInCluster (net.js:1396:12)
    at Server.listen (net.js:1480:7)
    at startEndpoint (/usr/lib/node_modules/serve/bin/serve.js:152:19)
    at /usr/lib/node_modules/serve/bin/serve.js:303:3
    at <anonymous>

INFO: Gracefully shutting down. Please wait...
dev@g3:~/www/test$ sudo serve -l 80 ~/www/test/
INFO: Accepting connections at http://localhost:80
^C
INFO: Gracefully shutting down. Please wait...
dev@g3:~/www/test$ sudo serve -l tcp://<IP_ADDRESS>:80 ~/www/test/
INFO: Accepting connections at http://<IP_ADDRESS>:80
^C
INFO: Gracefully shutting down. Please wait...

All I want was to do a simple sudo serve -p 80 ~/www/test/ (listen on <IP_ADDRESS>:80 or server_ip:80).
Yes, I could downgrade to 6.x, but I think there might be better ways to guide old users.
Love,
David

-p is no more a valid argument.
You have to use -l instead to mention the port number.

@wawhal You are missing the point, -l 80 doesn't work the same way as -p 80.

@bitinn I'm sorry for any inconvenience we've caused, but yes - we indeed released many breaking changes in the latest version, which is why it was a major release.
With this release, we've modeled serve after micro and made it much more accessible to proffesional use, while retaining almost the same simplicity as before and making the core much more slim.
We've concluded that we cannot maintain many of the options that were added over the years, as they simply aren't supposed to be part of the core of such a project. They're normally to be handled by a much higher layer, like a webserver (compression, SSL, auth, etc).
You can read more here. Also -l <port> DOES work. 😊


[9.0.1] Design blocks - Border line

Strange behavior of border parameters.

W:4px  R:4px
After save - Radius disappear.

Another scenario
W:4px  R:8px
After save - Radius disappear, Witdth:8px 😱

This has been fixed and will be released in 9.0.2.


Upgrade jackson-databind dependency

The current dependency on version 2.9.1 is not very secure and brings in at least 20+ critical vulns.
Latest version stance can be found here

Thanks for flagging this. We'll look at addressing this soon.

FYI, GitHub now provides security scanning capabilities, which you can enable via the Security tab in your repo.


comparison and xpath breakdown policy updates

This is a WIP, do not merge yet. cc @ablwr

done with WIP phase, please review

What is the status of this? +1's from me and @ablwr and then @JeromeMartinez changed the title back to include "WIP"

@dericed also used the hooray emoji 🎉 !

ha, some synchronization issue, I wanted to change "WIP]" to "[WIP]"!

@tribouille please review

I try with the first policy example (sample_policy_1.xml)... Not working
Same for the 4th... And did not try other...
resulting XML==

Issue is this change should be applied to other policies. https://github.com/dericed/MediaConch_SourceCode/commit/300655675b881dfb1866909155f0168cfa4aa1f0 However I thought I had already put that in another pr. Looking for that now.

@tribouille PR updated, please retest

@tribouille @JeromeMartinez I dropped some commits, rebase, and force pushed to remove the use of mediapolicy namespace. Please test.

Working with the basic policies.
Problem with the compare policies.
`
./mediaconch -fx -p ../../../Tools/Policies/sample_policy_2_comparison.xml -prf /tmp/test.mkv /tmp/test.mkv

Test to see if a file has a smaller frame size than another file but same aspect ratio.

`
Is it in 431 or 432?

@tribouille I don't understand, the output looks logical. The width of fileA is not "less than" width of fileB (since fileA=fileB).

Ok for me


Expand ~ into the home directory on Linux and MacOS

According to https://discuss.xgboost.ai/t/xgb-save-setting-a-file-path/2020/7?u=hcho3, XGBoost could not handle path containing ~, the shorthand for the home directory on Linux and MacOS platforms. This PR enables XGBoost to handle such paths, by expanding ~ in paths into the full path of the home directory.
Example:
xgb.save(bst, '~/Desktop/xgboost/test.model')

The fix uses os.path.expanduser (Python) and path.expand (R).

Codecov Report

Merging #6531 (5af10da) into master (380f6f4) will increase coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #6531      +/-   ##
==========================================
+ Coverage   80.24%   80.26%   +0.02%
==========================================
  Files          13       13
  Lines        3553     3558       +5
==========================================
+ Hits         2851     2856       +5
  Misses        702      702

Impacted Files
Coverage Δ

python-package/xgboost/core.py
81.09% <100.00%> (+0.09%)
:arrow_up:

python-package/xgboost/data.py
57.05% <100.00%> (+0.09%)
:arrow_up:

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 380f6f4...5af10da. Read the comment docs.

@trivialfis Thanks for the review. Should this be part of the patch release too?

I don't think that's necessary, let's keep the patch release for regression fixes.


chore: release 1.6.9

:robot: I have created a release *beep* *boop*
1.6.9 (2021-10-05)
Bug Fixes

chart annotations (2f67d3c)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/GluuFederation/cloud-native-edition/releases/tag/v1.6.9 :sunflower:


Add a bin-docker/runner file so I can stop making more files

Was using it as runner rubocop but presumably works just as well for e.g. runner wraith

Historical note wraith will get its own container and should not use runner. Derp. Runner works with other things though!


Use SQL:2008 compatible LIMIT

While this change seems irrelevant today (and even troublesome as increases size of queries) it allows for expanding features of the limit queries in the future with additional features like
FETCH NEXT n ROWS WITH TIES

Which will return at least n rows, but will include additional if there are ties on ORDER BY (current workaround is to use dense_rank() window function and then limiting using that).

Blogpost describing the WITH TIES feature.

For now we will avoid changing this and do so when WITH TIES support first lands in Ecto itself. In any case, thanks for the PR!


WIP: Refactor messages and reactions

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

Complexity increasing per file
==============================
- components/rocket/messagesUtils.js  2
- components/models/score.js  2

See the complete overview on Codacy

Os scripts deste PR foram parcialmente implementados no PR #645


Would be great if multiline strings were categorized differently

As it stands, the default classification looks horrible

I would be happy if there was just InMultiLineString (notice I don't say Literal) + it gets classified as  MultilineString
Current:
    const enum EndOfLineState {
        Start = 0,
        InMultiLineCommentTrivia = 1,
        InSingleQuoteStringLiteral = 2,
        InDoubleQuoteStringLiteral = 3,
    }
    enum TokenClass {
        Punctuation = 0,
        Keyword = 1,
        Operator = 2,
        Comment = 3,
        Whitespace = 4,
        Identifier = 5,
        NumberLiteral = 6,
        StringLiteral = 7,
        RegExpLiteral = 8,
    }

Note: feel free to call it something other than MultiLineString but give us something.

#1744 has a fix for this.

@DanielRosenwasser perhaps you can quickly tell me what classifyKeywordsInGenerics is supposed to do. Just a hint on if I should keep it true or false

@DanielRosenwasser also is there some public API endpoint to get the syntacticClassifier?

@basarat if you'll see my change, it's been renamed to syntacticClassifierAbsent.
Before the syntactic classifier was a thing, the lexical classifier had to do a bunch of hacky sort of tricks to try to emulate correct behavior.
Basically, you don't want to accidentally classify number as a keyword as a type parameter when it might just be a plain identifier after a less-than token. The syntactic classifier will overwrite this to be the correct thing (i.e. an identifier) and so you'll get flashing. However, if there is no syntactic classifier, the lexical classifier should use its awful tricks again.
Actually, you're using web workers for Atom right? Are you using the other classifiers?

you're using web workers for Atom right?

Nope. A child process : https://github.com/TypeStrong/atom-typescript/blob/master/CONTRIBUTING.md#architecture . Node-webworker's need C/C++ toolchain on the client to install so I just went with a child process to make it easier to install.

Are you using the other classifiers?

nope. Just a lexical classifier : https://github.com/TypeStrong/atom-typescript/blob/master/lib/main/atom/typescriptGrammar.ts#L47

Reason for not using webworkers : https://github.com/atom/atom-shell/issues/797

I just realized, you're asking for a multiline string classification. What if it's just a string literal classification but it's done correctly?

In a single line it gets identitified as an identifier :

In mutliple line it gets identified as code as there is no finalLexState for stuff with "`"

So for both of these I would like "just a string literal classification but it's done correctly".

@DanielRosenwasser fixed? Or wont-fix :heart:

If we do this I don't have to buy you chocolates for Valentine's Day. :heart:
(Will fix, but unfortunately just for 1.5: #2026)

The fix is in master.


Mount /Users afrer creation with --parallels-no-share

Hi!
I created VM using docker-machine create ... --parallels-no-share. I thought I won't use /Users inside. But then I realized what I need this.
And it seems to be impossible to enable it back via Desktop Control Center: Options/Sharing/Custom Folders /Users has no effect.

In this case, you should mount the shared folder manually (in the VM):
sudo mkdir /Users
sudo mount -t prl_fs Users /Users

parallels.go#L558-L569

Thanks, works great for me!


Hello, The title symbol ## is lost after copying the web page title and pasting it into a markdown file.

Hello, The title symbol ## is lost after copying the web page title and pasting it into a markdown file.
For example:
## markdown copy web page title
The title symbol ## is lost after copying the web page title and pasting it into a markdown file.
Version: Chrome 112~118
Version: Windows10
Version: 3.2.1

The title symbol ## is lost after copying the web page title and pasting it into a markdown file.


Checking License Seat Back in

I have not found a way to check a license seat back in. I can remove the "assigned_user" and make it $null, but it doesn't change that it is still "checkout out" from the API. It shows from the GUI that you can check it back out, but the count doesn't change of open seats. Any help on this would be amazing.

Licenseseat  PR code  is here https://github.com/snipe/snipe-it/pull/8058/files
I did just quick look at it.  it seems that to checkin license both values assigned_to and asset_id have to set to null (or empty)
Could you post you powershell codes with -Verbose output

Here is my code:
` do {
cls
$LicIDs =  (Get-SnipeITLicense -All)
If($LicIDs.Count -gt 1){
$IDB = 0
$result3 = $(foreach ($item3 in $LicIDs){
$item3 | select @{l='IDB';e={$IDB}},Name,seats,free_seats_count
$IDB++}) |
Out-GridView -Title 'Select the License You Want to Check In' -OutputMode Single |
foreach { $LicIDs[$_.IDB] }
$LicID = $result3.id
$LicCount = $result3.free_seats_count
$LicT = $result3.seats
}
 else {

$LicID = $LicIDs.id
$LicCount = $result3.free_seats_count
$LicT = $result3.seats
}
If($LicCount -eq $LicT) {
Write-host -ForegroundColor Red "All Licenses are already checked in"
Start-Sleep 2
}
}until ($LicCount -ne $LicT)
$LicSeatNames =  (Get-SnipeITLicenseSeat -id $LicID)
If($LicSeatNames.Count -gt 1){
$IDC = 0
$result4 = $(foreach ($item3 in $LicSeatNames){
$item3 | select @{l='IDC';e={$IDC}},ID,assigned_user
$IDC++}) |
Out-GridView -Title 'Select the License You Want to Check In' -OutputMode Single |
foreach { $LicSeatNames[$_.IDC] }
$seatID = $result4.id
}
Set-SnipeItLicenseSeat -id $LicID -seat_id $seatid -assigned_to $null -asset_id $null -verbose
Write-Host License for $result3.name has been removed for $userprofile.name`
Here is the output:
VERBOSE: Performing the operation "Set-SnipeitLicenseSeat" on target "ShouldProcess?". VERBOSE: [Invoke-SnipeitMethod] Invoking method Patch to URI http://snipe-it1.local/api/v1/licenses/6/seats/21 VERBOSE: PATCH http://snipe-it1.local/api/v1/licenses/6/seats/21 with -1-byte payload VERBOSE: [Invoke-SnipeitMethod] Failed to get an answer from the server VERBOSE: [Invoke-SnipeitMethod] Status code: InternalServerError VERBOSE: [Invoke-SnipeitMethod] No content was returned from. VERBOSE: [Invoke-SnipeitMethod] Function ended License for Adobe Acrobat 2017 Pro has been removed for User

Thanks. Looks fine. Please test this also -Debug switch.
When I tried this with -debug switch on my system and $null values were converted to zeros.
DEBUG: {
  "seat_id": 6,
  "assigned_to": 0,
  "asset_id": 0
}

So this is could be  get-parametervalue issue, it should translate $null values parameters to null, not  zeros.

It's parameter type issue instead.  have to use parameter type  [Nullable[System.Int32]] currently [int] for assigned_to and asset_id.

Fixed in v1.7.159

Hey thanks for this.  How can I get ahold of you without publicly announcing either of our personal contact info? @PetriAsi

Hey thanks for this.  How can I get ahold of you without publicly announcing either of our personal contact info? @PetriAsi

Are you talking about PetriAsi? or me? I imagine you are talking about him as he has done some amazing work.

Nice!
@stevenbaron86 Send me a email and  I'll send my contact info to you.

Ah hey where did that other comment go! hit my work email
@.*** with a shipping address :)
On Thu, Jun 17, 2021 at 12:01 PM Petri Asikainen @.***>
wrote:

Nice!
@stevenbaron86 https://github.com/stevenbaron86 Send me a email and
I'll send my contact info to you.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/snazy2000/SnipeitPS/issues/167#issuecomment-863490039,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHEZAJBUT4DWTVWXDWGXADDTTJA7ZANCNFSM46XR2TEA
.


Some systems are not well documented.

Some systems need to have documentation & examples added to https://docs.spacestation14.io/.
In particular, some utility systems that are likely to be used as by other systems are missing docs, including:

[ ] Actions
[ ] Verbs
[ ] Node networks

I found some old docs on HackMD and moved them over, but it still needs fleshing out.

[ ] ItemSlots
[ ] MachineLinking
[ ] TriggerSystem

Other systems that probably could use documentation include:

[ ] Explosions
[ ] Metabolism

The action system is STILL to this day undocumented and I can't figure out how to add one.

@nearlyNonexistent if you want to see how I did it for my space ferrets (so they can backflip etc) then check my wawa PR: #26168


[Feature Request] ttnn.add wants attribute __name__

We want to integrate ttnn into torch dynamo, but if want to replace aten.add by ttnn.add in the torch fx graph and run, then it needs the ttnn.add.__name__ attribute, but currently ttnn ops has no __name__ attribute
We try to add these code in ttnn/cpp/pybind11/decorators.hpp to edit the class ttnn._ttnn.operations.binary.add_t
    py_operation.def(
        "__name__",
        [](const registered_operation_t& self) -> const std::string { return self.name(); },
        "Shortened name of the api");

But the python interpreter says __name__ attribute only accept string.
Then we try to edit the ttnn._ttnn.operations.binary.add object directly to avoidabove limit, but this code not work
    module.attr(operation.name().c_str()) = operation;  // Bind an instance of the operation to the module
    module.attr(operation.name().c_str()).attr("__name__") = operation.name();

Is there has the solution to solve it?

c.c. @yocosky


feat: dynamodb lock reorganization

Description
This is the first PR for the work on providing a second locking provider such as PostgreSQL.  I wanted to get this one in early as it changes function signatures and touches the delta lake package.

renamed dynamodb_lock to distributed_lock
pulled dynamodb specific code out into its own module
pulled tests out into their own folders
made the LockItem and LockClient part of the root distributed_lock module in preparation for changing the s3 module

Thanks for doing this @DnOberon!
Just wondering out loud here. The current implementation of the S3 is a bit of a "zombie" as it is somewhere between our current way of configuring things and the way we used to do things before the object_store crate. In essence there is also nothing S3 specific about it, It already just takes a DynObjectStore as inner. So we can also use it for other ObjectStore implementations.
Would it therefore maybe make sense to just rip out the whole thing, rename it to LockedObjectStore, so the delta-rs crate needs no knowledge about the specific of how locking is handled?
Maybe we can eventually even go as far as moving the locked store upstream to the object store crate where it can take advantage of the various credentials.
Generally though I am a bit hesitant to rename the crate just yet, since we need to publish the crate for others to build delta-rs with s3 support enabled. So maybe we should just get it to work end to end under the current - albeit confusing - name, and then rename and publish it in one go?

I’m fine with that as long as you’re fine with the other parts of the
reorganization so far.
On Sat, May 27, 2023 at 1:21 PM Robert Pack @.***>
wrote:

Thanks for doing this @DnOberon https://github.com/DnOberon!
Just wondering out loud here. The current implementation of the S3 is a
bit of a "zombie" as it is somewhere between our current way of configuring
things and the way we used to do things before the object_store crate. In
essence there is also nothing S3 specific about it, It already just takes a
DynObjectStore as inner. So we can also use it for other ObjectStore
implementations.
Would it therefore maybe make sense to just rip out the whole thing,
rename it to LockedObjectStore, so the delta-rs crate needs no knowledge
about the specific of how locking is handled?
Maybe we can eventually even go as far as moving the locked store upstream
to the object store crate where it can take advantage of the various
credentials.
Generally though I am a bit hesitant to rename the crate just yet, since
we need to publish the crate for others to build delta-rs with s3 support
enabled. So maybe we should just get it to work end to end under the
current - albeit confusing - name, and then rename and publish it in one go?
—
Reply to this email directly, view it on GitHub
https://github.com/delta-io/delta-rs/pull/1395#issuecomment-1565656993,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFS4N4NNNFG35SPWBVCIGTXIJH2BANCNFSM6AAAAAAYRKUEXU
.
You are receiving this because you were mentioned.Message ID:
@.***>

Did not mean to scare you off - hope it was not perceived as such 😄.
In the end its not just my opinion that matters, if you have thoughts around this happy to hear! Also do @rtyler @wjones127 @fvaleye have opinions?

It wasn’t :) You made a valid point and I was closing the pr so it wouldn’t
clutter anything up if you’re going to keep the same name for right now.
On Sat, May 27, 2023 at 1:35 PM Robert Pack @.***>
wrote:

Did not mean to scare you off - hope it was not perceived as such 😄.
In the end its not just my opinion that matters, if you have thoughts
around this happy to hear! Also do @rtyler https://github.com/rtyler
@wjones127 https://github.com/wjones127 @fvaleye
https://github.com/fvaleye have opinions?
—
Reply to this email directly, view it on GitHub
https://github.com/delta-io/delta-rs/pull/1395#issuecomment-1565658808,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFS4N5JDTEAVNFDGNWRZ2LXIJJORANCNFSM6AAAAAAYRKUEXU
.
You are receiving this because you modified the open/close state.Message
ID: @.***>

I think what Robert said makes sense to me. I haven’t used the locking clients much so don’t have too strong opinions.


Question: Encryption / Data Protection?

In the good old web.config days, one could transparently encrypt sensible parts of the configuration file, such as connection strings.
Is there any such thing planned for ASP.NET 5? What is the recommended pattern?
I have read all the documentation about Data Protection API and Configuration User Secrets but I couldn't find an answer.
I got the impression that Data Protection API are not meant to protect long-term stores such as the app configuration and there is no tool or easy way to actually define the configuration values with those.
User Secrets seems to be done entirely for that purpose, but as the doc points out it seems designed for a Development environment, not production. In particular, the data is stored in plain text.
I like the idea of using Environment variables to store a connection string but it has to be encrypted. It is not acceptable that anyone who gets access to the production server (maybe just temporarily for troubleshooting purposes) could see the production credentials in clear text by simply doing SET on a command line. Another example of risk is that misconfiguration of the application could easily leak the environment variables, e.g. on the ASP.NET 5 error page or when using a tool like Glimpse.

CC @blowdart

Your concern about server access wasn't addressed the old system. Anyone with server access could decrypt the web.config easily, using the built in tools. Encryption there was to protect against web.config being leaked to the internet, not against attackers on the machine.
User secrets is for keeping secrets out of source control in a dev environment.
Data Protection is for protection data given to it by a developer. There's no automatic decryption in the same way you would have had for web.config. Whilst there's nothing stopping you defining a key store, sharing it among machines, and then using those keys to protect data that goes into environment variables you'd have to write of that, and the corresponding unprotect calls yourself.
As we disable error pages in production environments, and the default environment is production you'd have to do some serious misconfiguration to leak information into error pages.

@blowdart I partially agree.

Anyone with server access could decrypt the web.config easily, using the built in tools.

Note that I'm not necessarily thinking of attackers, who want to get DB credentials by any means. Maybe just the IT guy from the company who builds an app that runs on the server. He's here to do a bit of support and I don't think that it's a good practice that passwords are in plain sight, even if they would somehow be accessible. If I wanted to be (slightly) more serious about that I could remove (or restrict access to) the built-in ASP.NET tools, use custom keys, etc.
Using built-in ASP.NET tools presumes advanced familiarity with the ASP.NET ecosystem, which trust me is not necessarily the profile of any random guy having access to the server.
I might be wrong but I think that decrypting content requires some rights? If the account is limited I'm not even sure that it would actually work?

Encryption there was to protect against web.config being leaked to the internet, not against attackers on the machine.

Yes and defense in depth is important. Especially since web.config did leak to the internet after an ASP.NET exploit!

As we disable error pages in production environments, and the default environment is production you'd have to do some serious misconfiguration to leak information into error pages.

 See my reference to the Oracle Padding exploit that enabled leaking web.config.
While MS disables error pages, what about other 3rd party stuff such as tools that log "diagnostics" (starting with your server specs) into files or things like Glimpse, Miniprofiler and co?
Beyond misconfiguration, what about a new exploit that manages to dump some process info?
IT is complex and defense in depth is good.
From the rest of your answer I understand that ASP.NET 5 has no story yet for encrypting sensitive parts of config?

Data Protection is for protection data given to it by a developer. There's no automatic decryption in the same way you would have had for web.config. Whilst there's nothing stopping you defining a key store, sharing it among machines, and then using those keys to protect data that goes into environment variables you'd have to write of that, and the corresponding unprotect calls yourself.

Assume a single machine. Is Data Protection the right tool to build a utility that protects / unprotects config (no matter where: files, registry, env. variables...)? Reading the official documentation, I had the impression that it was not a good choice for long term encryption (key rotations, etc.)?

Correct, there is no story for encrypting configuration any more.
This has veered from an issue to a discussion, but I want to touch on a few things.
Key rotation is not a problem for encryption - it just means a key will never again to used to encrypt. It can still be used to decrypt. As long as the key is present in the key ring, decryption will work.
The old system didn't need many rights to decrypt. If you encrypted it with DPAPI it used machine wide DPAPI because it had to, and any user logged in could decrypt with that.
As for glimpse et al, if you're going to something in production that is meant to pull sensitive data from a machine then they're the ones that need to protect the data as it comes to you. We can't.

OK I'm closing this as I got my answer.
I guess I'll have to build a little tool to set encrypted config values on the server and use Data Protection APIs when reading them in the app.

@blowdart For reference may I ask guidance about decrypting config settings?
I wanted to create my own EncryptedEnvironmentVariablesConfigurationProvider. I thought it was easy enough: derive from built-in EnvironmentVariablesConfigurationProvider and then override Load to post-process the values that need to be decrypted.
But... this means that you need a IDataProtectionProvider (for the decryption part) inside your configuration provider. Building the configuration is typically the first thing that happens at Startup, long before you call ConfigureServices and add (and configure) data protection to DI. At this point you could try DI from the app host, but it doesn't include DP.
So I guess getting a IDPProvider inside ConfigurationSource is not really practical (kind of chicken and egg problem). But at the same time I don't want to have each consumer of IConfiguration to do its own decryption: it should be something generic like it was in old-school ASP.NET.
Any guidance?

We have done something similar to protect the sensitive data on the app settings file.
We have protected the data using a console app and defined parameters like (Application name, persists keys to a location)
Then on the application using the same provider with the same settings, unprotect during run time. So some one who is having access to the file or leaked the app settings, doesn't have to worry.
unless if the attached has access to machine and key location then that's a different story.


[AMSDK-6959] Identity - updated the event pages

Updated the Identity docs in the Build your own extension section. I provided more details about the event type, source, value types and samples for event data.
For more details about the structure followed please check EVENT_DESCRIPTION_TEMPLATE
Jira task AMSDK-6959

@kevinlind please review


use dynamic vh

for the browser that will auto show/hide address bar
Demo:
https://wikimedia.github.io/wiki-highlights/dynamic-highlight-card/#/highlights/Rwanda

this looks strange to me

browser in app
mobile browser safari


Update Broken Links on Policy definition.

Update Broken Links on Policy definition.
Deploy-Diag-ActivityLog
Deploy-Diag-LogAnalytics
Deploy-VM-Monitoring

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

#sign-off

@JanetCThomas: I'm sorry - only the author of this article, @BrianBlanchard, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

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


fix: Change default model setting DEFAULT_MODEL_REPO to be consistent

Change default setting DEFAULT_MODEL_REPO to correspond to the other default model settings like DEFAULT_MODEL_OLD, DEFAULT_MODEL and DEFAULT_MODEL_PATH. This means consistency across the settings and consistency across the CLI commands.
Issue resolved by this Pull Request:
Resolves #1607
Checklist:

[x] Commit Message Formatting: Commit titles and messages follow guidelines in the
conventional commits.
[ ] Changelog updated with breaking and/or notable changes for the next minor release.
[ ] Documentation has been updated, if necessary.
[ ] Unit tests have been added, if necessary.
[ ] Integration tests have been added, if necessary.

Added @cdoern since I'm guessing this came in via his training integration PR

Putting on hold while I add a test

Test added. Hold released. @russellb Do you mind reviewing again?

given this was recently added for the new training and eval, It would be great if we could preserve granite as a model repo to pass to those.
Can we maybe change DEFAULT_MODEL_REPO to merlinite but make GRANITE_MODEL_REPO? or something

Where would the GRANITE constant be used?

given this was recently added for the new training and eval, It would be great if we could preserve granite as a model repo to pass to those.
Can we maybe change DEFAULT_MODEL_REPO to merlinite but make GRANITE_MODEL_REPO? or something

Will Granite model run e2e on accessible hardware like Mac M1 32G? If so, then we could do that. However, would changing the default break users expectations or is that ok to do?

we can change it to merlinite for now, but I think this is a larger discussion we need to have about our defaults

that's fine -- the consistency here is what makes sense to me

we can change it to merlinite for now, but I think this is a larger discussion we need to have about our defaults

Sure, we need to align this better. FYI, Its always been merlinite by default, so that why I changed the one default from granite to merlinite, as it caused a bug.


Incorrect positioning of mdMenu content

I was faced with the problem of incorrect positioning of the menu content inside mdMenu component.
mdMenu renders mdMenuContent component at the bottom of the application root element and
calculates position from the position of the menu switcher button relative to the viewport. https://github.com/marcosmoura/vue-material/blob/master/src/components/mdMenu/mdMenu.vue#L91
All works as expected when application root element fits to the viewport or has position: static.
I'm working on the some injectable application that can be rendered somewhere on the page, then my root element have some width, height and has relative position inside page. Because of that method getPosition doesn't takes into account position of the app root element, when it has position: relative, mdMenuContent has incorrect top/left values.
Steps to reproduce
You can see an example that behaviour here. Try to open menu.
App root element has an offset from the viewport and relative position.
Which browser?

Latest
What is expected?
mdMenuContent position should be calculated relative to the root element.
What is actually happening?

Menu content opens in wrong place
Reproduction Link

https://jsfiddle.net/rdjjpc7a/1382/
Thank you for your great work!

You're right, sorry. I will fix that.

Ok! Thank you!


chore: update spec table

Use the latest spec libraries

💚 All backports created successfully

Status
Branch
Result

✅
k8s-22/main

✅
k8s-23/main

Questions ?
Please refer to the Backport tool documentation


uses namespace to prefix Helm release

For the record I also adapted the release deletion to use the namespaced name.


[Suggestion] only 2x2 dark oak trees

Add option to allow only 2x2 dark oak planting.

BTW, such suggestions are highly recommended to be pulled in "Pull Request" page.
I'd appreciate if you re-pull this suggestion on that page.

This feature was added in Saplanting 1.1.3 for 1.19.2 Fabric, thanks for giving this suggestion!


feat: Angular 14 support

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update iStumbler 100 → 101 (is now commercial & Yosemite only)

Weird case, here. @rolandwalker would there be any harmful consequence to have two license (one for each appropriate part of the if)?

Looks like this has already been merged in another PR. Thank you anyway.


[Sprint: 42] XD-2690 - Filter lib files other than .zip and .jar

Merged w/https://github.com/spring-projects/spring-xd/commit/97aa52a5a610572fa8179d9f6a4790122bc3a701


Fix console path in the comments

We moved console to the new directory, but forgot about changing it in the comments. This PR fixes it.

👍

I can't believe I forgot to update all this! @chapay thanks for fixing it.


Looking for TF 1.14 ScriptMode Py3 GPU image

It does not seem like this image is available. If it is, can you provide please?

Hi @ragavvenkatesan,
The TensorFlow 1.14 ScriptMode Py3 GPU image are now being hosted on a different account.
Please see: https://docs.aws.amazon.com/sagemaker/latest/dg/pre-built-containers-frameworks-deep-learning.html

closing due to inactivity. feel free to reopen if necessary.


Adding test case for ReadFeatureDescriptionHandler

https://issues.jboss.org/browse/WFCORE-3742

Nice. :)
I added some tests in https://github.com/wildfly/wildfly-core/pull/3226 because I wanted to be sure my code cleanup in the other commit in that PR didn't break something. But I think most of what's in those tests can be removed, as testing in the controller module like you do here is much better.
For integration testing it's probably ok to just do a recursive read of the full tree. Basically 1) test a real remote client, which in-vm tests in controller module don't do, and 2) read the whole tree as a kind of smoke test.  Actually doing that in full WildFly is probably a good idea too, as most of the features are in full not core.
If you already have stuff going to do that kind of integration test then I can just drop the commit in my PR.
@ehsavoie You should probably review this PR as you best understand what the details of the output are meant to be.

@TomasHofman thanks, the tests look good :)
We just need to avoid making public constants for things that are not meant to be used outside of the class.
Our typical usage is to put constants that could be used by management clients in ModelDescriptionConstants.

Core - Full Integration Build 7151 outcome was FAILURE using a merge of 37268db6eaf2351f61dd95b78c2258b2e3d89153
Summary: Tests failed: 1 (1 new), passed: 4328, ignored: 140 Build time: 01:34:53
Failed tests
org.jboss.as.test.clustering.cluster.jpa2lc.ClusteredJPA2LCTestCase.testEntityCacheReplication: java.lang.AssertionError
	at org.jboss.as.test.clustering.cluster.jpa2lc.ClusteredJPA2LCTestCase.testEntityCacheReplication(ClusteredJPA2LCTestCase.java:158)
------- Stdout: -------
 [0m08:31:08,399 INFO  [org.hibernate.hql.internal.QueryTranslatorFactoryInitiator] (default task-1) HHH000397: Using ASTQueryTranslatorFactory
 [0m

@bstansberry @jmesnil thank you for reviews! All issues should be fixed.
I moved couple of constants into ModelDescriptionConstants. I kept the original constant names, which however in some cases aren't verbatim reflections of the strings they represent, e.g.
public static final String REFERENCES = "refs";
public static final String PARAMETERS = "params";
public static final String ADDRESS_PARAMETERS = "addr-params";

I wonder if I should change the constant names to verbatim transcriptions of the strings to avoid future conflicts. Some are general enough that someone might need to add constants also for "references" or "parameters" in future...

@bstansberry I can definitely create the integration test in full. Will ping you when it's done.

Or maybe simply call them what they are, i.e. REFS, PARAMS and ADDR_PARAMS.

@aloubyansky yes, that's what I meant. I will change that once again then. :)


[BugFix] Revert "[Enhancement] protect from dict code out of range (#14798)"

This reverts commit d641a26ef8643a93618b66fa6ca982ab8eb963a6.
What type of PR is this：

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Check out of range of dictDecoder use too much cpu resource.
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 3.0
[ ] 2.5
[ ] 2.4
[ ] 2.3

@Mergifyio backport branch-3.0


bundled_pip_wheel_list[0]: unbound variable error if a broken Python install exists in app source

Spotted via Honeycomb metrics and then reproduced locally...
If an app's source contains a file at .heroku/python/bin/python, then the build currently fails with:
-----> Using Python 3.9.20 specified in .python-version
-----> Using cached install of Python 3.9.20
/tmp/buildpack/lib/utils.sh: line 33: bundled_pip_wheel_list[0]: unbound variable

Apps should not have any contents at .heroku/python/ (it's an internal location used by the buildpack), but I'm guessing perhaps some users may have downloaded an app's slug to rescue the source from an app years ago (from a Python version that doesn't have ensurepip?), and then extracted that directly into their Git repo without removing the Python binaries?
GUS-W-17386432.

The error message here has been improved in #1720 / #1724.


Move towards "if" keyword for guards on pattern match cases.

Motivation
Pattern match cases can accept guards to further refine the criteria for matching a case. Pattern guards appear after the pattern and consist of an expression following the when keyword. The grammar expresses this as | PATTERN => EXPRESSION when EXPRESSION. An example:
switch person1 {
| Teacher(_) => () // do nothing
| Student({reportCard: {gpa}}) when gpa < 0.5 =>
  Js.log("What's happening")
| Student(_) =>
  // fall-through, catch-all case
  Js.log("Heyo")
}

We inherited the when keyword from our ancestors Reason and Ocaml. This keyword is not ideal:

It is not a keyword in JavaScript; you need to escape it in interop scenarios.
when takes up a keyword and is only being used in one small part of the grammar. (Cost/benefit)
Some people have trouble remembering the exact word, is it when or where etc.

Given the above, we're planning to move towards a new syntax for guards on match cases by using the if keyword.
match-guard ::=
  IF expr

Applied to the example above, this would give:
- | Student({reportCard: {gpa}}) when gpa < 0.5 =>
+ | Student({reportCard: {gpa}}) if gpa < 0.5 =>

Migration path

Accept both when and if for case guards. Printer will output if. No breaking change.
Remove support for parsing case guards with the when keyword. Show a nice error when the user tries to use when instead of if

This PR implements 1)
Prior art

rust

reviewed, the diff is simple enough that lgtm

reviewed, the diff is simple enough that lgtm

Accept both when and if for case guards. Printer will output if. No breaking change.

@IwanKaramazow I've to mention it's a breaking change since it breaks ci formatting checks.

@amiralies yes, good point. Has been released in a new major version: 9.0


Please Help Stuck in this codelab, Score Is not Updating in the Unscramble app!

https://user-images.githubusercontent.com/79910450/149629723-511c1ce8-b590-4d64-8f47-b7dbfb5cca00.mp4
URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-livedata?continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-kotlin-unit-3-pathway-3%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-training-livedata#5
In which task and step of the codelab can this issue be found?
Running App and Viewing LiveData.
Describe the problem
Score is not updating in the app, but word count is updating no problem, I've attached a video to the issue please help!
Steps to reproduce?

Go to... Don't know
Click on...I've followed the code lab
See error...No live data for Score

Versions
Android Studio version: Arctic Fox | 2020.3.1 Patch 4
API version of the emulator: 31
Additional information
Include screenshots if they would be useful in clarifying the problem.
Here's the code:
GameFragment.kt
`/*

Copyright (C) 2020 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package com.example.android.unscramble.ui.game
import android.os.Bundle
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.fragment.app.viewModels
import com.example.android.unscramble.R
import com.example.android.unscramble.databinding.GameFragmentBinding
import com.google.android.material.dialog.MaterialAlertDialogBuilder
/**

Fragment where the game is played, contains the game logic.
*/
class GameFragment : Fragment() {
private val viewModel: GameViewModel by viewModels()
// Binding object instance with access to the views in the game_fragment.xml layout
private lateinit var binding: GameFragmentBinding
// Create a ViewModel the first time the fragment is created.
// If the fragment is re-created, it receives the same GameViewModel instance created by the
// first fragment
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View {
// Inflate the layout XML file and return a binding object instance
binding = GameFragmentBinding.inflate(inflater, container, false)
Log.d("Game Fragment", "GameFragment created/re-created!")
Log.d("GameFragment","Word:${viewModel.currentScrambledWord} " +
" Score: ${viewModel.score} WordCount: ${viewModel.currentWordCount}")
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
 // Setup a click listener for the Submit and Skip buttons.
 binding.submit.setOnClickListener { onSubmitWord() }
 binding.skip.setOnClickListener { onSkipWord() }
 // Update the UI
 viewModel.currentScrambledWord.observe(viewLifecycleOwner,
     {newWord ->
         binding.textViewUnscrambledWord.text = newWord
     })
 viewModel.score.observe(viewLifecycleOwner,
     {newScore ->
         binding.score.text = getString(R.string.score, newScore)
 })

 viewModel.currentWordCount.observe(viewLifecycleOwner,
     {newWordCount ->
         binding.wordCount.text =
              getString(R.string.word_count, newWordCount, MAX_NO_OF_WORDS)
     })

}
/*

Checks the user's word, and updates the score accordingly.

Displays the next scrambled word.
*/
private fun onSubmitWord() {
val playerWord = binding.textInputEditText.text.toString()
if(viewModel.isUserWordCorrect(playerWord)) {
setErrorTextField(false)
if (!viewModel.nextWord()) {
showFinalScoreDialog()
}
}else{
setErrorTextField(true)
}
}

/*

Skips the current word without changing the score.

Increases the word count.
*/
private fun onSkipWord() {
if(viewModel.nextWord()){
setErrorTextField(false)
}else{
showFinalScoreDialog()
}
}

/*

Gets a random word for the list of words and shuffles the letters in it.
*/
private fun getNextScrambledWord(): String {
val tempWord = allWordsList.random().toCharArray()
tempWord.shuffle()
return String(tempWord)
}

/*

Re-initializes the data in the ViewModel and updates the views with the new data, to
restart the game.
*/
private fun restartGame() {
viewModel.reinitializeData()
setErrorTextField(false)
}

/*

Exits the game.
*/
private fun exitGame() {
activity?.finish()
}

/*

Sets and resets the text field error status.
*/
private fun setErrorTextField(error: Boolean) {
if (error) {
binding.textField.isErrorEnabled = true
binding.textField.error = getString(R.string.try_again)
} else {
binding.textField.isErrorEnabled = false
binding.textInputEditText.text = null
}
}

/*

Displays the next scrambled word on screen.
*/

private fun showFinalScoreDialog(){
MaterialAlertDialogBuilder(requireContext())
.setTitle(getString(R.string.congratulations))
.setMessage(getString(R.string.you_scored, viewModel.score.value))
.setCancelable(false)
.setPositiveButton(getString(R.string.play_again)){ _, _ ->
restartGame()
}
.setNegativeButton(getString(R.string.exit)){ _, _ ->
exitGame()
}
.show()
}
override fun onDetach() {
super.onDetach()
Log.d("GameFragment", "GameFragment destroyed!")
}
}
`
GameViewModel.kt

`package com.example.android.unscramble.ui.game
import android.util.Log
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
class GameViewModel : ViewModel() {
private val _score = MutableLiveData(0)
val score: LiveData
get() = _score
private val _currentWordCount = MutableLiveData(0)
val currentWordCount: LiveData<Int>
   get() = _currentWordCount

private val _currentScrambledWord = MutableLiveData<String>()
val currentScrambledWord:  LiveData<String>
   get() = _currentScrambledWord

private var wordsList: MutableList<String> = mutableListOf()
private lateinit var currentWord: String

init {
    Log.d("Game Fragment" , "GameViewModel Created!")
    getNextWord()
}

override fun onCleared() {
    super.onCleared()
    Log.d("GameFragment", "GameViewModel Destroyed!")
}

private fun getNextWord(){
    currentWord = allWordsList.random()
    val tempWord = currentWord.toCharArray()
    tempWord.shuffle()

    while (String(tempWord).equals(currentWord, false)) {
        tempWord.shuffle()
    }
    if (wordsList.contains(currentWord)){
        getNextWord()
    } else {
        _currentScrambledWord.value = String(tempWord)
        _currentWordCount.value = (_currentWordCount.value)?.inc()
        wordsList.add(currentWord)
    }
}

fun nextWord():Boolean{
    return if(_currentWordCount.value!! < MAX_NO_OF_WORDS){
        getNextWord()
        true
    }else false

}

private fun increaseScore(){
    _score.value?.plus(SCORE_INCREASE)
}

fun isUserWordCorrect(playerWord: String): Boolean{
    if(playerWord.equals(currentWord,true)){
        increaseScore()
        return true
    }
    return false
}

fun reinitializeData(){
    _score.value=0
    _currentWordCount.value=0
    wordsList.clear()
    getNextWord()
}

}
`

As the tutorial of Codelab said, the score update was not included in it, we can implement it by ourselves.


[5.4] Fix collection min() on objects with null value

Collections of objects or arrays containing a key with a null value
resets min() reduce loop so already seen lower values are forgotten.
This change ensures null values are filtered out before reducing on both
min and max for consistency although max() is not affected by this bug.

I think this would be a breaking change. Use filter on your collection before calling these functions.

@taylorotwell wait so your solution is to add a filter instead of fixing the bug... well your call... :thinking:

@taylorotwell I don't think this is a breaking change. It will still return the same result for collections of objects without a key with a null value. Also, we can't just litter the code with filters as this will also affect any external laravel package we currently use that internally uses collections and min().
It behaves correctly in 5.7 meaning you also have an inconsistency in how min() works between atleast these two versions.
If you don't want this to be fixed in 5.4 then you should at the very least update the docs for min() for 5.4 to say that if min() is used with a key that could contain null-values then the result is undefined.


TLS/SSL configuration - very hard to understand what I need to to to use a "normal" MQTT client to connect

Hi team,
I moved this from here: https://github.com/MicrosoftDocs/azure-docs.de-de/issues/587
@aisbergde commented yesterday — with docs.microsoft.com
I don't understand what I need to do to use an TLS/SSL connection using a "normal" MQTT Client like MQTT Explorer or MQTT.fx
I have now idea how and why to use TLS/SSL. I will read about it.
But here in documentation is some python code where you explain how to use TLS/SSL. Should I write some python programs before I can connect with Azure IoT Hub?
I would prefer an easy instruction for dummies like me. Maybe also some links to the basics.
I would like to be enabled to use an out-of-the-box MQTT client to connect with Azure IoT Hub without writing python code.
I will learn python to connect to MQTT without the client. I promise. But not today.
It is very easy for me to connect to any other MQTT brokers without any TSL/SSL.

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

ID: bcf2a86a-1de0-2786-db87-58279ceffb22
Version Independent ID: 7e43624f-a87d-1c4d-94e6-e38c1d42686f
Content: Understand Azure IoT Hub MQTT support
Content Source: articles/iot-hub/iot-hub-mqtt-support.md
Service: iot-hub
GitHub Login: @robinsh
Microsoft Alias: robinsh

Hi @aisbergde Thanks for trying Azure IoT Hub! You have other options than Python, the SDK also supports other programming languages
Each of these SDK's has an open source repository on GitHub and they have some samples that should help you,  like in the case of IoT Hub SDK C# Samples
But it sounds like you might be more interested on this blogpost How to send MQTT messages to an Azure IotHub by MQTT.fx client

Yes, after writing my comment I found this "But it sounds like you might be more interested on this blogpost How to send MQTT messages to an Azure IotHub by MQTT.fx client" And this was what I was looking for. It answered most of my questions.
Maybe you could add some of this links direkty into the documentation?

@aisbergde Glad to hear that it was helpful. Adding author @robinsh for further review and update the doc if needed.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Add _NSGetArgv, _NSGetArgc and _NSGetProgname from crt_externs.h

Available in the headers on all Apple platforms.

The CI timeout seems to be unrelated

This lgtm, reference here https://opensource.apple.com/source/Libc/Libc-320/include/crt_externs.h.auto.html.
Can you target main? We can backport if needed.
@rustbot label +stable-nominated
@rustbot author

Can you target main

Sure! @rustbot ready

Thanks!


Viewed articles

TODO: Gap & Header as common components

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
961

Relevant Lines:
1087

💛  - Coveralls