Allow the possibility to specify the cache type on the if attribute

I'm submitting a feature request

Library Version:
1.5.1

Current behavior:
This is a follow up for aurelia/framework#602.
A custom element doesn't get destroyed/re-constructed when used with if because the model it's being cached.
Expected/desired behavior:
After a lot of discussion, we agreed that the feature would be for the if to support the following syntaxis:
if="value.bind: someValue; cache: none"

That way you can specify if the model should be cached or not.

Notes:

This can't be specified on the custom element definition because of the way the cache works: it doesn't check element by element, so in a big tree, it should now check one by one, which would be bad for performance.
It can't be done at an application level because if you use third party libraries, it would affect them, changing their implementations of the if and possibly causing them to malfunction.

@EisenbergEffect ping - Sorry to bother, but it has been a year, any news on this? Thanks.

Apologies @homer0 The core team hasn't had an opportunity to address this yet and it's unlikely we'll be able to do it for vCurrent. We would be happy to take a PR from you to add this functionality though. Please feel free to submit one and /cc me and @bigopon for review. We'd love to get it in.

@EisenbergEffect No worries, I know you guys have been busy. Unfortunately, I don't know Aurelia that well yet, so I wouldn't know where to start in order to add the functionality myself.
The truth is that at the time I opened the issue, I kinda stopped using Aurelia for a while, things like this and the lack of support for SSR were deal breakers for the team. I started using it again like a month ago and I was amazed by how it evolved in just one year :D !!
Finally, kind of related and unrelated at the same time: Last time we discussed this issue, you corrected me when I proposed using a dictionary-like object to send the options for if as it wasn't HTML standard and that it should be a key value list separated by semicolon. Well, I was working on a custom attribute for switching classes on an element (exactly like the ng-class on AngularJS) and I ended up using a dictionary; I wanted to change it to list format, but I wasn't sure if there was a utility or something on Aurelia that would help me convert that list into an object on the JS class, or if I had to do a couple of split()s.
I'm sorry I added that question here, if you believe it should be somewhere else, let me know, I'll move it and delete it from this comment.
Thanks!

@homer0 I won't say that I have understood the problem statement completely, but there is a class.bind that you can use, instead of creating your own. If your use case is different, please ignore this comment.

@Sayan751 Thanks! but I wanted to avoid the ternary; it will look ugly if I have, let's say, 3 "conditional classes".
But my question was more about how to desing the custom attribute value... and after writing "value" I started to realize that changing from my-attribute.bind="{ myClass: someTruthyValue }" to my-attribute="myClass: someTruthyValue; myClass1: someTruthyValue1;" doesn't make a lot of sense as the syntax is not for the value of the attribute but for the different bindings it supports, so the only "easy" alternative would be to keep the object... but we are back to the syntax not being HTML standard... not sure what to do here.
Once again, sorry for adding unrelated things on the issue.

@homer0
This is not a direct answer to your question. I am merely suggesting the already available stuffs in Aurelia that you can use, instead of creating something of your own.
For your specific use case of assigning multiple conditional classes to your element you can use tagged templates. It came out with the June 2018 release: https://aurelia.io/blog/2018/06/24/aurelia-release-notes-june-2018/ (search for "tagged template").
To give you an example:

<div class="${getConditionStyles`${myExpression}`} some-other classes-from ui-framework">

// view-model
/* For simplicity let's assume that our expression value is of enum type.
    But, now your in your view-model so you may go crazy and create your custom logic as you want :) */
private getConditionStyles(_parts: string[], myExpressionValue: MyEnum) {
  let classes;
  switch (myExpressionValue) {
      case MyEnum.Val1:
        classes = `awesome-class-1 answer-to-life`;
        break;
      case MyEnum.Val2:
        classes = `awesome-class-2  the-universe`;
        break;
      case MyEnum.Val3:
        classes = `awesome-class-3  and-everything`;
        break;
     default:
        classes = "class-42";
        break;
  }
  return classes;
}

Hope this helps :)

@Sayan751 thank you so much for the answer, I wasn't aware of that, that's pretty interesting.
Buuuut.... I wouldn't use that for something like a class. I believe the view-model shouldn't never handle something like a CSS class, that's a resource it should only be handled by the view, as it's "part of it", IMO.

Though I have never used it, but custom attribute with dynamic options seems like a good candidate for your use case. https://aurelia.io/docs/templating/custom-attributes#dynamic-options-binding
Basically, in the observer, apply the 'name' as a class of the element if the 'new Value' is true (assuming you have boolean expressions).

@Sayan751 Yes! that's exactly what I wanted. Once again, thank you so much :D!

@homer0  You are welcome; Happy to help :)


Improve StringProcessing and RegexBuilder documentation

I think this provides at least basic docs for all the public symbols. Would love help identifying specific places that we need more/better documentation.
I do think we need a document that explains how regex syntax gets turned into a capture type — e.g. /(a+)(b)?/ -> (Substring, Substring, Substring?).

Were you able to write test cases for the examples given in the docs?

Great point! I have these in a playground locally, so I'll make sure I move them into a new test file.

@milseman Added tests for all the samples (wow do I wish these were automatic), plus longer docs for Capture and TryCapture — could you take a look at the framing and detail for these two? Also would love any ideas for demonstrating Local…

@swift-ci Please test

(Note: The macOS test failure is due to testing with a < 5.7 Swift.)


Clicking on a TileMap node no longer pre-selects a tile in the TileSet

Godot version:

v3.3.stable.official
OS/device including version:

Windows 10, GLES3, GTX1600
Issue description:

Before v3.3 what used to happen is when you select a TileMap node in the editor it would default to selecting the first tile in the tileset so you can start painting right away.
Now, as of v3.3, sometimes when you select a TileMap it defaults to no tiles being selected in the TileSet, so you have to first manually select the tile you want to paint with.
I would expect that anytime you click on a TileMap it should always have a tile selected in the tileset (like it used to).
Note that this happens only sometimes, it's unclear when/why. See repro below.
Steps to reproduce:

Open the included project.
Select the first TileMap node and notice the first tile in the tileset is selected automatically.
Now select the second TileMap node and notice that no tiles are selected in the tileset.
With the second TileMap still active, manually select the first tile in the tileset
Select the first TileMap node again
Now notice that the tile is no longer selected in the first TileMap.  So it's like the bug got transferred to the first TileMap instead of the second.

To repro the bug you don't have to actually draw any tiles and you don't have to run the project. You can repro in the editor simply by selecting the TileMap nodes.
It seems like there's some state that's shared between TileMap nodes about what tile is selected in the TileSet so if you change and between different TileMaps sometimes you'll get a tile selected by default and sometimes not.
I'm pretty sure this is a regression because I was using tilemaps before v3.3 and there was always a default tile selected whenever I clicked on a TileMap.
Minimal reproduction project:

TileMapBugDemo.zip

Can you test this in previous 3.3 RCs? You can download them here.


Improve UI for reconnects

Currently UI for re-connection events is very sparse, which may confuse the user. Ensure things are consistent and the user has enough context as to what is happening

holding this back for rewrite


DS-3127 (DSpace 6) whitelist of formats allowable in citation pdf url for google scholar

This is the port of https://github.com/DSpace/DSpace/pull/1735 to DSpace 6. All information can be found there.
I know the branch and commit are named incorrectly, but this is the fix for https://jira.duraspace.org/browse/DS-3127

@tomdesair : FYI, Travis seems to be having issues with this PR.  It hangs each time it attempts to run org.dspace.app.util.GoogleMetadataTest, and Travis finally kills the process.  You may wish to run that test locally to see if you can determine the issue.

I don't have access to the branch of this PR so I created a new PR with the fixes: https://github.com/DSpace/DSpace/pull/1785
@toniprieto and @tdonohue Please re-review the new PR.
Closing this one.


[BUG] JID not exists on 10 digit Indonesian numbers

Describe the bug
When sending msg to Indonesian WA Number with total 10 digits eg: 6281160XXXX (total 10 characters).
It responds JID not exists.
above 10 digits works fine.
Expected behavior
Expected to be able to send to the 10 digits number, because it is on Whatsapp and is daily used on phone without any problem.

Baileys does not restrict or impose a minimum digit rule on phone numbers. The issue may be related to other factors such as using middleware for phone number checks/validation.

The problem only occurs in 10 digit indonesian phone number , reponse 'JID not exists' but when i tried malaysia 10 digit phone number eg 6012678XXXX , it sent succesfully.

The problem only occurs in 10 digit indonesian phone number , reponse 'JID not exists' but when i tried malaysia 10 digit phone number eg 6012678XXXX , it sent succesfully.

there must be some validation rule on your library that cause the issue.. when sending message to any number either valid or no, there is no such error JID not exists return. please check your middleware/source code again
here is response from the server when sending 10 diigts Indonesian number (not valid number)
{
	"key": {
		"remoteJid"<EMAIL_ADDRESS>		"fromMe": true,
		"id": "xxxxxxxxx"
	},
	"message": {
		"extendedTextMessage": {
			"text": "Test From Baileys"
		},
		"messageContextInfo": null
	},
	"messageTimestamp": "1696727513",
	"status": "PENDING"
}

The problem only occurs in 10 digit indonesian phone number , reponse 'JID not exists' but when i tried malaysia 10 digit phone number eg 6012678XXXX , it sent succesfully.

Use + then country code then mobile ( phone  )number
For ex :- +12581473690
+1 is country code and<PHONE_NUMBER> is phone number from


Update pipeline: Add tests for Sargability of non-Unicode string keys

(Tracking this separately from query which is covered in #4686 since we have a fix for that one)
Update and delete operations on tables that have non-Unicode keys can have the same performance issues as query, since we always use the key to lookup the right row to update or delete.
I haven't tried this with parameters or measure the difference but running a couple of simple experiments with literals show that quite different plans are produced whether the unicodeness matches or not, e.g. for a modified Northwind Customers table:
CREATE TABLE "Customers" (
	"CustomerID" char (5) NOT NULL ,
	"CompanyName" nvarchar (40) NOT NULL ,
	"ContactName" nvarchar (30) NULL ,
	"ContactTitle" nvarchar (30) NULL ,
	"Address" nvarchar (60) NULL ,
	"City" nvarchar (15) NULL ,
	"Region" nvarchar (15) NULL ,
	"PostalCode" nvarchar (10) NULL ,
	"Country" nvarchar (15) NULL ,
	"Phone" nvarchar (24) NULL ,
	"Fax" nvarchar (24) NULL ,
	CONSTRAINT "PK_Customers" PRIMARY KEY  CLUSTERED
	(
		"CustomerID"
	)
)

The following two queries have quite different costs:
update customers set ContactName = 'Maria Anders' where CustomerID = N'BOLID'

-- Table 'Customers'. Scan count 1, logical reads 6, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

update customers set ContactName = 'Maria Anders' where CustomerID = 'BOLID'

-- Table 'Customers'. Scan count 0, logical reads 2, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

After analyzing update pipeline, we are not using literals anywhere in the updates. All the values are passed as parameter. And while adding parameters, we use the underlying property hence Unicode-behavior is maintained from the property.
There are no tests verifying this at the moment. Due to #4952 we cannot test the behavior at present. Once that issue is fixed we can add extra property with non-default facets in SqlServerEndToEndTest and verify this scenario.

Thanks. That is great news!

#4952 is fixed now so this is unblocked.
@ajcvickers - While fixing #4134 , did you add any test for update pipeline?

@smitpatel Yep.

Should we close this then? 😄

Yep. :-)


(possibly intended) Colors for speaking users are inconsistent

Describe the bug
Colours for speaking users is not consistent as long as a user is speaking in a discord server voice channel.
To Reproduce

Join a discord call via a server
Speak in the server
Observe the mismatched colours (green and blue)

Screenshots
###
Discord channel: Canary
OS: Windows
Mod: Powercord
Discord language: English
Additional context
I'm unaware of if this is intentional but I thought I would bring it to your attention just in case.

Fixed.


Add support and tests for URLComponents.percentEncodedQueryItems

rdar://59439703 (URLComponents.percentEncodedQueryItems missing on linux)

@swift-ci test linux

@spevans @compnerd @tomerd is there a simple way to get a linux dev environment? Maybe some docker image I can pull that has most things built so I can incremental compile?

The easiest way is to build your own Dockerfile inheriting from an existing Ubuntu file, and have that install the necessary prerequisites per the Swift README.
Unfortunately SCF’s build is tangled enough in the Swift process that it is easier to run the larger build than to guess how to set up the CMake environment just for this one repo.

hi @rauhul the https://github.com/apple/swift-docker/tree/master/swift-ci has the docker images that we use to build & qualify the toolchain with. also see https://github.com/apple/swift-docker/pull/171 for some additional information on how to use them

@rauhul Are you still interested in shepherding this patch?

@rauhul Are you still interested in shepherding this patch?

I don't think I'm going to have anytime for the next couple months unfortunately :(. I'd be happy to let someone else get this through.

@swift-ci please test

@swift-ci please test

@swift-ci please test

@swift-ci please test

@swift-ci please test

The Swift project moved the default branch to main and deleted master branch, so GitHub automatically closed the PR. Please re-create pull request with main branch.
More detail about the branch update - https://forums.swift.org/t/updating-branch-names/40412


Missing validation for Service.Spec.Ports.TargetPort

Original openshift issue https://github.com/openshift/origin/issues/3143
If Service.Spec.Ports.TargetPort is defined as string there's no validation on this.
The user could write something like ( targetPort with "")
{
   "kind":"Service",
   "apiVersion":"v1",
   "metadata":{
      "name":"redis-master",
      "labels":{
         "name":"redis-master"
      }
   },
   "spec":{
      "ports": [
        {
          "port":6379,
          "targetPort": "6379"
        }
      ],
      "selector":{
         "name":"redis-master"
      }
   }
}

and the final results could be no endpoints for the service.
Some kind of validation with some syntax check should be introduced (for example  https://tools.ietf.org/html/rfc6335#section-5.1)
I'm submitting a PR to add some validation.

I see this in validation:
        if sp.TargetPort != util.NewIntOrStringFromInt(0) && sp.TargetPort != util.NewIntOrStringFromString("") {
                if sp.TargetPort.Kind == util.IntstrInt && !util.IsValidPortNum(sp.TargetPort.IntVal) {
                        allErrs = append(allErrs, errs.NewFieldInvalid("targetPort", sp.TargetPort, portRangeErrorMsg))
                }
        }

I guess that validation happens afetr defaulting, so we should never see that case, wo I guess it should be an error.

@thockin are you working on this?
cc @krousey

I just tagged you as the 2nd LGTM for #9736


Issues with stack sampling of test which timeout on MacOS?

A few months ago infrastructure was put in place to sample the stacks of tests which are timing out -- which is very helpful to diagnose was is going on.
This functionality seems to sometimes not work on MacOS (from this buildbot failure) :
FAILED: none-vm-checked debug_x64 service/vm_restart_test
Expected: Pass
Actual: Timeout
CommandOutput[vm]:

stdout:
** Launching SERVICE_TEST_TESTEE=true xcodebuild/DebugX64/dart -DDART_SERVICE_USE_AUTH=false --enable_asserts --enable_type_checks --compile_all --error_on_bad_type --error_on_bad_override --ignore-unrecognized-flags --packages=/b/build/slave/vm-mac-debug-x64-be/build/sdk/.packages --enable-vm-service:0 /b/build/slave/vm-mac-debug-x64-be/build/sdk/runtime/observatory/tests/service/vm_restart_test.dart
>testee>out> Observatory listening on http://<IP_ADDRESS>:57733/
** Signaled to run test queries on http://<IP_ADDRESS>:57733/
>testee>out>
Loading VM...
Done loading VM
Running vm_restart_test.dart [1/4]
Paused with PauseBreakpoint
Running vm_restart_test.dart [2/4]
Running vm_restart_test.dart [3/4]
Paused with PauseBreakpoint
Running vm_restart_test.dart [4/4]
restarting
Old isolate exited
>testee>err> Restarting VM
New isolate started
restarted
>testee>out>
** Killing script
** Process exited

Command[vm]: DART_CONFIGURATION=DebugX64 xcodebuild/DebugX64/dart --enable_asserts --enable_type_checks --compile_all --error_on_bad_type --error_on_bad_override --ignore-unrecognized-flags --packages=/b/build/slave/vm-mac-debug-x64-be/build/sdk/.packages /b/build/slave/vm-mac-debug-x64-be/build/sdk/runtime/observatory/tests/service/vm_restart_test.dart
Took 0:02:08.118198

Short reproduction command (experimental):
    python tools/test.py --checked -t120 service/vm_restart_test

It's not quite clear to me what the issue here is.
/cc @whesse @johnmccutchan @fsc8000

@mkustermann You modified this code most recently:
https://github.com/dart-lang/sdk/commit/b1c04f0538f68f9a9a59953e80adae4d015c58cd

@johnmccutchan I am aware of that. But I suspect that this particular issue was there before and is there now. My change only modified how the stack lines get printed (via test-specific diagnostics instead of interleaving it on stdout).
The issue happens only sometimes (see [here for example[(https://build.chromium.org/p/client.dart/builders/vm-mac-debug-x64-be/builds/10227/steps/checked vm tests/logs/stdio) where it worked).

@johnmccutchan If you're not the right person to assign this to, can you assign it to that person? We're supposed to make sure all gardening issues have owners.

Reassigning to John so he can assign it appropriately.


Combining addressVerification and CreateAddress api in lob.js

Hello, I was wondering if it would be better to combine the addressVerification and createAddress into one so the front-end only needs to make one API call.
Currently, front-end has to send a POST request with the address to addressVerification, receive a successful response, then send another POST request with the verified address to createAddress, then receive an address_id which then can be used to make a POST request to createLetter.
I can write this logic in the front-end but I think best practices would be having the addressVerification and createAddress as one call in which it would return the address_id to front-end which can then be used to createLetter.
If there is a reason we're two doing two calls, please let me know because I might have missed something. I hope my ask makes sense.
I'm referencing the following code in this file:
CreateAddress
router.post('/createAddress', async (req, res) => {
  // Get description, to, and template_id from request body
  const address = req.body || {}
  const lobApiKey = getLobApiKey()
  const lob = new Lob({ apiKey: lobApiKey })

  try {
    // Create Lob address using variables passed into route via post body
    const addressResponse = await lob.addresses.create({
      description: address.description,
      name: address.name,
      address_line1: address.line1,
      address_line2: address.line2,
      address_city: address.city,
      address_state: address.state,
      address_zip: address.zip,
      address_country: 'US'
    })

    res.status(200).send({ address_id: addressResponse.id })
  } catch (error) {
    res.status(500).send({ error: 'Something failed!' })
  }
})

addressVerification
router.post('/addressVerification', async (req, res) => {
  ...
  try {
    const lob = new Lob({ apiKey: getLobApiKey() })
    const response = await lob.usVerifications.verify({
      primary_line: line1,
      secondary_line: line2,
      city,
      state,
      zip_code: zipCode
    })

    const {
      deliverability,
      primary_line: revisedLine1,
      secondary_line: revisedLine2,
      components: {
        city: revisedCity,
        state: revisedState,
        zip_code: revisedZip,
        zip_code_plus_4: revisedZipPlus4,
        address_type: addressType,
        record_type: recordType
      }
    } = response

    const isUndeliverable =
      !deliverability || deliverability === 'undeliverable'
    const isResidential = addressType === 'residential'
    const isPostOfficeBox = recordType === 'po_box'
    const isPuertoRico = revisedState === 'PR'

    const deliverable =
      !isUndeliverable && isResidential && !isPostOfficeBox && !isPuertoRico
    const warning = DELIVERABILITY_WARNINGS[deliverability] || null

    if (!deliverable) {
      let errorMessage = 'Address is undeliverable'
      if (!isUndeliverable) {
        if (!isResidential) {
          errorMessage = 'Non-residential addresses are not currently supported'
        } else if (isPostOfficeBox) {
          errorMessage = 'Post office boxes are not currently supported'
        } else if (isPuertoRico) {
          errorMessage = 'Puerto Rico addresses are not currently supported'
        }
      }

      return res.status(400).send({ error: errorMessage })
    }

    return res.status(200).send({
      deliverable,
      warning,
      revisedAddress: {
        line1: revisedLine1,
        line2: revisedLine2 || null,
        city: revisedCity,
        state: revisedState,
        zip: revisedZip + (revisedZipPlus4 ? '-' + revisedZipPlus4 : '')
      }
    })
  } catch (error) {
    // This endpoint should not return anything other than `200` status
    // codes, even for undeliverable addresses
    return handleLobError(error, res)
  }
})

@teakopp and I discussed this earlier this week and saw no reason why we shouldn't do this. 👍🏻

I'd like to work on this one!

@mahrsbar There needs to be a corresponding PR that needs to be made to the front end repo for this -- do we have an issue there for it?


Segmentation fault (core dumped)

Hi, many thanks for the wonderful work.
When I installed from source and run DiffBindFR,  error occurs for Segmentation fault (core dumped).
I can't figure out what is the reason. Please give some suggestions. thanks in advance.

Hi, @masterwhook,
Thank you so much for your interest in our work.
The issue you're encountering, a "Segmentation fault (core dumped)" error, often results from your CUDA configuration. If you've followed the installation instructions from our repository and used our provided env.yaml file, your CUDA version should be 11.7.
To further investigate this issue, I would recommend testing in Python's interactive mode. You can sequentially import the pytorch geometric dependencies such as pytorch, torch_scatter, torch_cluster, etc., to see if they are functioning correctly. The issue might also be related to openmm.
Once you've identified which package is causing the problem, you could try reinstalling it in the correct CUDA environment. This often resolves such issues.
Please do not hesitate to reach out if you need further assistance or if you have any other questions.
Best


Without Javascript completions in a

Environment

We used the pre-release pylance to test.
Steps to Reproduce

In a "Django Web Project", validate html completions in app/about.html:
Javascript completions in a

Does repro for me in Microsoft Visual Studio Enterprise 2022 (64-bit) - Int Preview
Version 17.11.0 Preview 2.0 [34914.235.main]. Can you verify?

@StellaHuang95 I cannot repro in today's build.


Rules disappear when saved

I ran into a bug where rules rules are not saved. Here is a screenshot of what I did. I created the tokens one by one starting with the first token of the first rule and adding the tokens for the two rules in sequence.
The text is the following:
Oxford, England 1847
Died: Norwalk, Connecticut 1928
Born: 1937
Baltimore, Maryland 1879
Died: Boston, Massachusetts 1946

When I add the last token, the extraction for 1937 disappears. If you look at the field in myDIG, it turns out that the rule is no longer stored in the field, that is why the extraction disappears. The number tokens just say length: 4. Actually, changing the length to empty does not make a difference.
What is worse, if you turn the active checkboxes on and off, in random sequence, eventually both rules disappear.

Here is the JSON that is saved:
{
  "field_name": "date_birth",
  "results": [
    {
      "context": {
        "end": 6,
        "identifier": "",
        "input": "tokens",
        "rule_id": 0,
        "start": 3,
        "text": "Oxford , England <etk 'attribute' = 'date_birth'>1847 \n Died</etk> : Norwalk , Connecticut 1928 "
      },
      "value": "1847"
    },
    {
      "context": {
        "end": 22,
        "identifier": "",
        "input": "tokens",
        "rule_id": 0,
        "start": 19,
        "text": "1937 \n Baltimore , Maryland <etk 'attribute' = 'date_birth'>1879 \n Died</etk> : Boston , Massachusetts 1946 "
      },
      "value": "1879"
    }
  ],
  "rules": [
    {
      "dependencies": [],
      "description": "",
      "identifier": "",
      "is_active": "true",
      "output_format": "",
      "pattern": [
        {
          "capitalization": [],
          "contain_digit": "",
          "is_in_output": "true",
          "is_in_vocabulary": "",
          "is_out_of_vocabulary": "",
          "is_required": "true",
          "length": [
            "4"
          ],
          "match_all_forms": "",
          "maximum": "",
          "minimum": "",
          "numbers": [],
          "part_of_speech": [],
          "prefix": "",
          "shape": [],
          "suffix": "",
          "token": [],
          "type": "number"
        },
        {
          "capitalization": [],
          "contain_digit": "",
          "is_in_output": "false",
          "is_in_vocabulary": "",
          "is_out_of_vocabulary": "",
          "is_required": "true",
          "length": [
            "1"
          ],
          "match_all_forms": "",
          "maximum": "",
          "minimum": "",
          "numbers": [],
          "part_of_speech": [],
          "prefix": "",
          "shape": [],
          "suffix": "",
          "token": [],
          "type": "linebreak"
        },
        {
          "capitalization": [],
          "contain_digit": false,
          "is_in_output": "false",
          "is_in_vocabulary": false,
          "is_out_of_vocabulary": false,
          "is_required": "true",
          "length": [],
          "match_all_forms": false,
          "maximum": "",
          "minimum": "",
          "numbers": [],
          "part_of_speech": [],
          "prefix": "",
          "shapes": [],
          "suffix": "",
          "token": [
            "Died"
          ],
          "type": "word"
        }
      ],
      "polarity": "true"
    }
  ],
  "test_text": "Oxford, England 1847 \nDied: Norwalk, Connecticut 1928\n Born: 1937 \nBaltimore, Maryland 1879 \nDied: Boston, Massachusetts 1946 ",
  "test_tokens": [
    "Oxford",
    ",",
    "England",
    "1847",
    "\n",
    "Died",
    ":",
    "Norwalk",
    ",",
    "Connecticut",
    "1928",
    "\n",
    "Born",
    ":",
    "1937",
    "\n",
    "Baltimore",
    ",",
    "Maryland",
    "1879",
    "\n",
    "Died",
    ":",
    "Boston",
    ",",
    "Massachusetts",
    "1946"
  ]
}

fixed in new release


Cancellation support

No issue raised.  PR for discussion as to whether this is something you'd like include or not.
For some context, the app I'm working on requires the user to log in as the data they have access to may be sensitive.  The app logs out after a period of inactivity.  We have an issue if the user goes inactive while the camera is open - we need to close the camera/gallery in this scenario without user interaction.
Changes Proposed in this pull request:

Add optional CancellationToken parameter to the public API, to allow the camera/gallery UI to be closed directly, not just through user input.

Currently I've only implemented for iOS and Droid, that's all I need for now, but I'm happy to go the rest of the way if you want to take this on board.

Into it :) I guess any ideas on UWP?

Disclaimer, I've not used UWP before so I may be way off, correct me if this is the case.
Looking at the API docs, the CaptureCameraUI and FileOpenPicker methods being used to capture media return IAsyncOperation<TResult>, this is awaited in the current code, but the object also has Cancel and Close methods, which suggests it should be pretty easy to do.
I'm assuming there'd be some sort of exception to catch in this case, and we can just return null to the client code.

hmmmm most likely... let me pull it in and see


wizzy export of dashboards looks in wrong place during manual install

Describe the bug
I have a manual install inside a FreeNAS jail and have everything working ok, but I have over the last couple of updates been stopped by the following error messages while trying to use wizzy export:
$ for d in grafana/dashboards/*.json; do wizzy export dashboard $(basename $d .json); done
✘ Dashboard file dashboards/charge-details.json does not exist.
✘ Dashboard file dashboards/charges.json does not exist.
✘ Dashboard file dashboards/charging-stats.json does not exist.
✘ Dashboard file dashboards/degradation.json does not exist.
✘ Dashboard file dashboards/drive-details.json does not exist.
✘ Dashboard file dashboards/drives.json does not exist.
✘ Dashboard file dashboards/efficiency.json does not exist.
✘ Dashboard file dashboards/locations.json does not exist.
✘ Dashboard file dashboards/mileage.json does not exist.
✘ Dashboard file dashboards/position.json does not exist.
✘ Dashboard file dashboards/states.json does not exist.
✘ Dashboard file dashboards/updates.json does not exist.
✘ Dashboard file dashboards/vampire-drain.json does not exist.
✘ Dashboard file dashboards/visited.json does not exist.
Just to test I tried to copy the dashboards directory to the teslamate directory out of the grafana directory:
$ cp -r grafana/dashboards dashboards
That made the export work as intended:
$ for d in grafana/dashboards/*.json; do wizzy export dashboard $(basename $d .json); done
Output:
{
"id": 14,
"slug": "charge-details",
"status": "success",
"uid": "BHhxFeZRz",
"url": "/d/BHhxFeZRz/charge-details",
"version": 4
}
✔ Dashboard charge-details export successful.
and so on for all dashboards.
I don't know how it works but I imagine that there are a script somewhere that just need to be updated to include grafana/ in the file path?
I really like how the application works even on my not standard installation! I think it is a really good fit for FreeNAS with the possibility to have the data stored securely and even replicated to offsite backup. I only regret that I'm not better at programming so I could compile it in to a real FreeBSD package, right now I have to manually start teslamate every time I reboot the server, and it was a bit fiddly to get all the environment variables set up properly.
Thank you so much for building and maintaining this really wonderful program! I really like to be able to log everything with my car and at the same time keep all my data at home.
Operating environment (please complete the following information):

OS: [FreeBSD 11.2 in an FreeNAS iocage jail]
Version [e.g. v1.9.1]

I run (from grafana folder, grafana removed from in):
for d in dashboards/*.json; do wizzy export dashboard $(basename $d .json); done
However the problem is the dashboards end up in the root, not in Grafana, I assume sth with the env variables DASHBOARD_FOLDER and DASHBOARD_FOLDER_UID.
Also, you have typo in script name: update_dashbAOrds.sh ;) And this script returns some weird error (I didn't have time to dig deeper):
jq: error (at <stdin>:0): Cannot index string with string "type"

Thanks for reporting the issue. Great to hear that it's running on FreeBSD as well.
The steps mentioned in the import guide were a bit outdated. I updated them accordingly.
@krezac Fixed. The script works for me :P But it's not really needed anyway.

Thank you, another great improvement! For us not using the docker version updating the dashboards is a lot easier now! Tried the new command and it seemed to work great! All dashboards where already updated so hard to know for sure, but I got a very promising message after running it :)
✔ 14 dashboards exported successfully.
Thank you again!


greek translation for basics/collections.md and minor fix for basics/basics.md

This is fantastic @gemantzu 👍

Nah, i just got excited a little bit...


Resetting primitive type deser values

When changing the serializer and deserializer, the code doesn't seem to be saving...

Appears to just be with the deserializer...


scroll is laggy when scrollbar is visible

How can I hide the scrollbar of a scrollable-content?
I'm having a problem with the scrollbars.
Lets assume a have a "scrollable" and a "scrollable-content" inside. Inside the "scrollable-content" there's some divs with ng-if. The first time the state is rendered ng-if are false and the content renders. The content can be scrolled but no scrollbars are showed.
If I set true to some ng-if the divs will be rendered and the content inside scrollable-content will be bigger. The content can still be scrolled, but now there's some scrollbar on the right side.
When the scrollbars appears, the scroll seems choppy and laggy!
If the ng-if are set again to false (content will have the origianal size) the scrollbars disappears and the scroll becomes responsive again.
I'm testing this on a Android 4.4.4 device.
Is there a way to force and hide the scrollbars, or there is another problem?

Ok, this css can hide the scrollbar:
.scrollable-content::-webkit-scrollbar
{
  display: none;
}

but it continues to feels laggy... =(
Any suggestion?

Well, hard to say what is wrong without the code. I am certainly not recognizing this.
You can get into trouble, if you have lot's of data and you are using ng-if's instead of ng-show.
The ng-if tag always creates a new scope and therefore copies the data which is directly on the scope. More info on this: http://jimhoskins.com/2012/12/14/nested-scopes-in-angularjs.html
But it is just a guess, could be 100 of other things, like heavy duty calls in an rapidly firing event handler.

Hello RemcovandenBerg, thank you for your comment.
I think my view is pretty simple. I only have a ng-if to control the initial loading and a ng-show.
In this case the problem is happening when ng-show is true.
If ng-show is initially set to true, there's no lag when scrolling, only if the user set it to false and then to true again.
If the ng-show starts false there's no lag, only if the user sets the ng-show to true.

        <form name="occurrenceSubmitForm" ng-submit="StepThreeVM.SubmitOccurrence()" novalidate>

                    {{::'SEND_COPY_TO_EMAIL' | translate}}
                    <ui-switch ng-model="StepThreeVM.SendCopyToEmail"></ui-switch>

{{::'EMAIL' | translate}}

                <input type="email"
                       name="email"
                       class="input-form-text"
                       ng-model="StepThreeVM.Email"
                       pattern=".{1,}@[_a-z0-9A-Z]+(\.[a-z0-9A-Z]+)+"
                       placeholder="{{::'EMAIL_TEXT' | translate}}"
                       required />

        </form>

            {{::'LOCATION_OCCURRENCES' | translate}}

{{::StepThreeVM.Occurrence.Location.FullAddress}}

            {{::'TYPE_OCCURRENCES' | translate}}

{{::StepThreeVM.Occurrence.DescType | translate}}

            {{::'DESC_OCCURRENCES' | translate}}

{{::StepThreeVM.Occurrence.Message}}

                <button class="btn btn-primary btn-block btn-lg" ng-click="StepThreeVM.SubmitOccurrence()">
                    {{::'SEND_REPORT' | translate}}
                </button>

If this can't give you any hint on what's happening I can try to create a simple project with this example. This is only happening on the device. It is not reproducible/noticeable on the desktop (probably because there's enough cpu power).

Hi napcat, I have been able to reproduce the described behaviour. But I am not sure what the cause of the problem is. I have to investigate this further.

Hello RemcovandenBerg,
Did you found anything? I'm still stuck with this one...


feat: Add project caching and id validation

Description
Add project data caching and validation, extracted from relay
Due Diligence

[x] Breaking change
[ ] Requires a documentation update
[ ] Requires a e2e/integration test update

@xav As discussed on slack, let's get rid of metrics and redis stuff here. Instead move project & origin validation here. And copy the rest directly into consuming projects (rpc-proxy).


chore: add windows to CI matrix

What I did
Related issue: #95

blocked on #91

@fubuloubu This PR was opened in July and seems to only change a single line of code.
Can we close this and re-pick it up when we are able?

@fubuloubu This PR was opened in July and seems to only change a single line of code. Can we close this and re-pick it up when we are able?

I think we can just keep it around as a reminder to keep trying this every once in a while
Single line means very unlikely to have a merge conflict!

I have no idea how I broke github so badly on this one, but wow

pyethash hasn't been updated since 2015, and it's the crux of this issue in windows

No worries, this is a known issue blocking this
Something new is that @banteg wanted to explore using pysha3 backend instead, which might work for windows

I attempted to rebase this ticket, but the scope continues to grow and additional work will be needed to integrate the geth installation process. I'm closing the ticket in favor of a backlog issue we can track on this work.
https://linear.app/apeworx/issue/APE-116/general-windows-support


Add explanation on how to install pip if necessary

The commit explains itself

Thanks for clarifying this in the readme @jvandijk!


Don't Create Backups

Would it be possible not to create backups as a command switch? We're already using git so to me it doesn't make sense. But what do I know :)

Thought this was the non-go author repository! Sorry!


liblock.c  mutex_cond_wait() bug report

liblock.c   line 237 and 238 in the  mutex_cond_wait() function:
ts.tv_sec += ms / 1000;
ts.tv_nsec += (ms % 1000) * 1000000;
But personally , I think it should be :
struct timespec now;
ts.tv_sec = now.tv_sec + ms / 1000 + ( now.tv_nsec + (ms % 1000) * 1000000 ) /<PHONE_NUMBER>00);
ts.tv_nsec = ( now.tv_nsec + (ms % 1000) * 1000000 ) % (1000 * 1000 *1000);
example：
ts.tv_sec = 0   ts.tv_nsec = 999 000 000   ms = 2
then after calculate,  the right time should be :
ts.tv_sec = 1  ts.tv_nsec = 001 000 000
but you code will calculate the time will be wrong .
The same as line 507, in function sem_lock_wait()
if any question, contact me<EMAIL_ADDRESS>

@CMShuyuhui Thanks a lot, I have fix it.
If any bugs found in libraries, please report it.


Feature Request: Set Cursor Position in editor

It would be really helpful to set the cursor position after opening the current command in the editor.
Probably could be something similar to zsh edit-command-line
https://github.com/zsh-users/zsh/blob/138f5bf144589a59ef009f26332652291cd0a944/Functions/Zle/edit-command-line#L45

Hi @kevintraver
Thanks for the commit. Currently, I'm busy, but I will work on this feature as soon as possible.
Hope you have a good day! : )
Thanks and Regards


Documentation of "Complex Modifications"

I did a little searching through the Issues, and I almost can't believe that there isn't already an issue for this; but:
It appears there's no documentation, either in the app, README, or included "Documentation" link, about how to create new "complex" modifications. (My particular use-case at the moment: re-mapping the "application" key to ⌘␣, to invoke Spotlight.)

I've spent nearly my entire day looking for documentation on the complex modifications. What options we have to work with etc. If there is documentation somewhere, please let me know where it is.

I also looked for the documentation of "Complex Modifications", but I could not find it. For that reason, I created a web page that summarized the information I examined. However, this page is written in Japanese.
Therefore, please read using Google Translate etc. I hope that the information I have written will be of any use.

Got this working by parsing through source code and other people's gists. For me, I'd like to find information on every parameter of the conditions field, especially the bundle_identifiers.
For any english speakers, you can look at @s-show's site and more or less get an idea of what the parameters do.

@ELLIOTTCABLE
@tekezo has created a reference for 'complex_modifications'. The URL is here.
karabiner.json Reference Manual - Karabiner - Software for mac OS

This reference is very useful.

@s-show awesome! Now we just need to get @tekezo to add a link to that somewhere easier to find! 🤣


Playback quality

Hello,
Thank for the library, it works pretty well. Is it possible to add the ability for the user to manually select the quality of the video as it happens in the Android YouTube API. I don’t mean setting the quality programmatically but manually when the video plays.

No, unfortunately at the moment it's not possible to change the quality with the IFrame Player API. See issue #27


Updating incorrect parameter description for getFileOutputStream

Description
Resolves https://github.com/Azure/azure-sdk-for-java/issues/37273#issue-1954373706

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


feat: updated bucket config

Description
buckets created by the DA are not configured with monitoring. The DA supports provisioning the monitoring instance, so if cloud_monitoring_provision is true updated config should be used for all buckets created by the DA.
issue: https://github.com/terraform-ibm-modules/terraform-ibm-observability-da/issues/68
Release required?

[ ] No release
[ ] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

Skipping the upgrade test due to this error:

/run pipeline

/run pipeline

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

GitHub release
v1.6.0

Your semantic-release bot :package::rocket:


Update pyo3 to 0.18.1

https://github.com/PyO3/pyo3/releases/tag/v0.18.1

Codecov Report

Merging #388 (c0f177b) into main (bfb373c) will decrease coverage by 0.09%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #388      +/-   ##
==========================================
- Coverage   95.31%   95.23%   -0.09%
==========================================
  Files          90       90
  Lines       10510    10509       -1
  Branches        8        8
==========================================
- Hits        10018    10008      -10
- Misses        492      499       +7
- Partials        0        2       +2

Impacted Files
Coverage Δ

src/input/input_abstract.rs
87.23% <0.00%> (-3.20%)
:arrow_down:

src/validators/recursive.rs
98.24% <0.00%> (-1.76%)
:arrow_down:

pydantic_core/core_schema.py
98.08% <0.00%> (-0.70%)
:arrow_down:

src/validators/function.rs
98.85% <0.00%> (-0.58%)
:arrow_down:

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 bfb373c...c0f177b. Read the comment docs.

Thanks, with luck you can remove lots of the xfails, see #367.

Thanks, with luck you can remove lots of the xfails, see #367.

All 😃
CI seems to be good as well now.

this is awesome thanks so much.


Infinite redirect loop

Package
filament/filament
Package Version
v3.2.92
Laravel Version
v11.11.1
Livewire Version
v3.5.1
PHP Version
PHP 8.3.8
Problem description
I'm building a panel without login and without default Dashboard page.
I've removed ->login() from AdminPanelProvider and now once I remove ->pages([Pages\Dashboard::class]) from AdminPanelProvider I'm getting infinite redirect loop when trying to access the panel root url, however if I try to access any resource, e.g. /users I can access it without any issues, the issue happens only with the root / url.
In case Login is needed (->login() call exists in AdminPanelProvider), everything works fine — after successful login I'm being redirected to the first navigation menu item page even if I have Dashboard removed from AdminPanelProvider.
Expected behavior
I've expected root / url would redirect to the first navigation item page in case there's no Dashboard, same as if login is needed to access the panel.
Steps to reproduce
Install fresh Filament Panel Builder, create any Resource, remove ->login() call from AdminPanelProvider, remove ->pages([Pages\Dashboard::class]) from AdminPanelProvider. Try to open admin panel by root url, e.g. http://filament.test/.
Reproduction repository (issue will be closed if this is not valid)
https://github.com/plakhin/filament-issue
Relevant log output
No response

Donate 💰 to fund this issue

You can donate funding to this issue. We receive the money once the issue is completed & confirmed by you.
100% of the funding will be distributed between the Filament core team to run all aspects of the project.
Thank you in advance for helping us make maintenance sustainable!

No public reproduction

@danharrin, thanks for reopening!

In the next release please verify that #13588 fixes the problem

Yep, looking forward to try it ASAP :) Thanks!

You can patch it in your /vendor if you want to check before

I've already tried and it solves the issue. I'm just not sure this is the best way.


#8932: Multi-Device Mixtral Argmax Support

Explicitly call to_device on argmax host intermediate to not rely on autoformat for multi-device

Passing Post-Commit: https://github.com/tenstorrent/tt-metal/actions/runs/9310696717


PoET2 debian creation and Jenkinsfile addition

Signed-off-by: Pankaj Goyal<EMAIL_ADDRESS>

Closing this one and raised a new PR-51


Make possible to check type of a InputFieldRef during runtime

I'm creating an assist to help me writing graphql types without write a lot of things, so something like this:
builder.queryField("findOne", (t) =>
  t.field({
    type: itemObjectType,
    nullable: true,
    args: inputArgs(itemObjectType, t, {
      id: t.arg.string(),
    }),
    async resolve(_parent, args) {
      // const whereFragment = parseWhereInput(args.input?.where);
      // const item = await pool.maybeOne(
      //   sql.type(itemModel)`SELECT * FROM item${whereFragment}`
      // );
      // return item;
    },
  })
);

can turn into this:

the thing is that, while it's already working, I don't have a way to know if a t.arg.string() is a string during runtime, so I'm forced to write the args like this:
{
  args: inputArgs(itemObjectType, t, {
    id: ['string', t.arg.string()],
  }),
}

It would be much nicer if I have a way to tell, during runtime, that a t.arg.string() is from type 'string' without being forced to provide more information.
This is how implementation looks like internally:
objectInputWhereType.implement({
    fields: (t) => ({
      ...(R.fromEntries(
        R.toEntries(args).flatMap(([key, value]) => {
          if (Boolean("how to check that 'value' is a t.arg.string() here?")) {
            return [
              [
                key,
                t.field({
                  type: searchString(
                    `${objectRef.name}Input${toPascalCase(key)}`
                  ),
                }),
              ],
            ];
          }

          return [];
        })
      ) as InputFieldsFromShape<
        RecursivelyNormalizeNullableFields<Search<TArgs>>
      >),
      AND: t.field({
        type: [objectInputWhereType],
      }),
      OR: t.field({
        type: [objectInputWhereType],
      }),
    }),
  });

Using t.string in your helper is probably defining things backwards, and it looks like it might result in using arg fields where input object fields are expected.
The way I would build this is so that you define your helper more like:
args: inputArgs(itemObjectType, t, {
    id: 'string',
  }),

Then in your helper you can match on the input type to define the correct field type based on that

The slightly complicated part about that will be creating the right type, but if these are all scalar fields, you could use the Scalar type-names.  This isn't exactly what you are looking for (needs some tweaking of arguments) but it shows how this could work:
builder.queryField('test', (t) =>
  t.field({
    type: 'String',
    args: getInputType(t, {
      foo: 'String',
    }),
    resolve: (_, args) => {
      console.log(args.AND?.foo);
      return 'test';
    },
  }),
);

type WhereInputShape<Types extends SchemaTypes, T extends Record<string, ScalarName<Types>>> = {
  [k in keyof T]: InputShape<Types, T[k]>;
} & {
  AND: WhereInputShape<Types, T> | null;
  OR: WhereInputShape<Types, T> | null;
};

function getInputType<
  Types extends SchemaTypes,
  T,
  Fields extends Record<string, ScalarName<Types>>,
>(
  fieldBuilder: PothosSchemaTypes.FieldBuilder<Types, T>,
  fields: Fields,
): {
  [k in keyof WhereInputShape<Types, Fields>]: InputFieldRef<WhereInputShape<Types, Fields>[k]>;
} {
  const WhereInput = builder.inputRef<WhereInputShape<Types, Fields>>(
    `WhereInput${fieldBuilder.typename}`,
  );

  WhereInput.implement({
    fields: (t) =>
      ({
        ...Object.fromEntries(
          Object.entries(fields).map(([key, value]) => [key, t.field({ type: value as never })]),
        ),
        AND: t.field({ type: [WhereInput] }),
        OR: t.field({ type: [WhereInput] }),
      }) as any,
  });

  return {
    ...Object.fromEntries(
      Object.entries(fields).map(([key, value]) => [
        key,
        fieldBuilder.arg({ type: value as never }),
      ]),
    ),
    AND: fieldBuilder.arg({ type: [WhereInput] }),
    OR: fieldBuilder.arg({ type: [WhereInput] }),
  } as any;
}

Thank you @hayes !
Your idea worked very well and I learned a lot from it.


Error when checking target: Expected activation_2 to have shape (6,6,512) but got array with shape (192,192,3)

Hello guys,
I've been working on a segmentation problem for many days and after finally finding out how to properly read the dataset, I ran into this problem:
"Error when checking target: expected activation_9 to have shape (6, 6, 512) but got array with shape (192, 192, 3)".
I used the functional API, since I took the FCNN architecture from :
https://github.com/divamgupta/image-segmentation-keras/blob/master/Models/FCN32.py
It is slightly modified and adapted in accordance with my task(IMAGE_ORDERING = "channels_last"(TensorFlow backend)  and the dimensions of the image 192X192).
Can anyone please help me?
Massive thanks in advance.
The architecture below is for FCNN, which I try to implement for the purpose of the segmentation.

Eğittiğin model fotoğraf boyutunu aşıyor. Ya batch normalization eklemelisin veya conv katmanını azaltmalısın.


191 linking modelinstance modelprogram

Completed linkage between model_instance and model_program resources.

There are several migrations completed deleted in this Pull Request. Please explain why.

Migration issues should be fixed.

formatting issues have all been addressed.  Ready for code review

This pull request needs updated from master. The diff is not clean until that is done and cannot be reviewed.

@ironfroggy  I pulled the latest code from the develop branch, does this address your comment?

This pull request needs updated from master. The diff is not clean until that is done and cannot be reviewed.

Sorry, yes develop is what I mean, not master.


Fix unterminated listing block breaking the website build

Hey @jamesnetherton do you mind a review, please? This seems to be breaking the website build: https://ci-builds.apache.org/job/Camel/job/Camel.website/job/main/1087/console

Thanks - I forgot that we already fixed that on the 3.18.x branch.

Also needs fixing here:
https://github.com/apache/camel-quarkus/blob/main/docs/modules/ROOT/pages/reference/extensions/platform-http.adoc

Also needs fixing here:
https://github.com/apache/camel-quarkus/blob/main/docs/modules/ROOT/pages/reference/extensions/platform-http.adoc

Great, thanks!

@jamesnetherton are you OK if I merge this? I'd like to build the Camel website as we have some updated guides to publish.

Yeah go ahead and merge.

Yeah go ahead and merge.

Thanks!


Join role from anywhere

Type !join ahokore to get the ahokore role anywhere, for example. Bot should automatically delete the message after assigning the role. No reason to limit it to one channel.

This is blocked until 40% bot starts handling roles, or we start all roles specific to ic/gb to start with either of those two letters.

This is blocked until 40% bot starts handling roles, or we start all roles specific to ic/gb to start with either of those two letters.


Fix new jest.config.js behavior.

Summary
This fixes yarn test-examples on master. Previously, it traversed up the tree until it found a jest config in package.json, now it stops when it finds a package.json as that can be considered the root of an app.
Test plan
yarn test works again.

Tests to come in a follow-up, I just wanna unbreak master.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@65834c6). Click here to learn what that means.
The diff coverage is 0%.

@@            Coverage Diff            @@
##             master    #3446   +/-   ##
=========================================
  Coverage          ?   64.19%
=========================================
  Files             ?      179
  Lines             ?     6641
  Branches          ?        5
=========================================
  Hits              ?     4263
  Misses            ?     2376
  Partials          ?        2

Impacted Files
Coverage Δ

packages/jest-config/src/findConfig.js
28.57% <0%> (ø)

Continue to review full report at Codecov.

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


triton.runtime.autotuner.OutOfResources: out of resource: shared memory. Reducing block sizes or num_stages may help.

Hi.
I run into this error when trying to fine-tune Phi3 small:
triton.runtime.autotuner.OutOfResources: out of resource: shared memory, Required: 180224, Hardware limit: 101376. Reducing block sizes or `num_stages` may help.
The GPU is a 24GB RTX 3090.
My code is based on this qlora cookbook. Any ideas what the issue might be?
Minimal steps to reproduce

import torch
from datasets import load_dataset
from peft import LoraConfig, prepare_model_for_kbit_training, TaskType

from transformers import (
    AutoModelForCausalLM,
    AutoTokenizer,
    BitsAndBytesConfig,
    TrainingArguments,
)
from trl import SFTTrainer

model_name = "microsoft/Phi-3-small-8k-instruct"
dataset = load_dataset("gate369/Alpaca-Star", split="train")

tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True, add_eos_token=True, use_fast=True)
tokenizer.pad_token = tokenizer.bos_token
tokenizer.pad_token_id = tokenizer.convert_tokens_to_ids(tokenizer.pad_token)
tokenizer.padding_side = 'left'

def create_message_column(row):
    messages = []
    user = {
        "content": f"{row['instruction']}\n Input: {row['input']}",
        "role": "user"
    }
    messages.append(user)
    assistant = {
        "content": f"{row['output']}",
        "role": "assistant"
    }
    messages.append(assistant)
    return {"messages": messages}

def format_dataset_chatml(row):
    return {"text": tokenizer.apply_chat_template(row["messages"], add_generation_prompt=False, tokenize=False)}

dataset_chatml = dataset.map(create_message_column)
dataset_chatml = dataset_chatml.map(format_dataset_chatml)
dataset_chatml = dataset_chatml.train_test_split(test_size=0.05, seed=1234)

compute_dtype = torch.bfloat16
attn_implementation = 'flash_attention_2'

bnb_config = BitsAndBytesConfig(
        load_in_4bit=True,
        bnb_4bit_quant_type='nf4',
        bnb_4bit_compute_dtype='bfloat16',
        bnb_4bit_use_double_quant=True,
)

model = AutoModelForCausalLM.from_pretrained(
          model_name, torch_dtype=compute_dtype, trust_remote_code=True, quantization_config=bnb_config, device_map={"": 0},
          attn_implementation=attn_implementation
)

model = prepare_model_for_kbit_training(model)

args = TrainingArguments(
        output_dir="./phi-3-mini-LoRA",
        evaluation_strategy="steps",
        do_eval=True,
        optim="adamw_torch",
        per_device_train_batch_size=1,
        gradient_accumulation_steps=1,
        per_device_eval_batch_size=1,
        log_level="debug",
        save_strategy="epoch",
        logging_steps=100,
        learning_rate=1e-4,
        fp16 = not torch.cuda.is_bf16_supported(),
        bf16 = torch.cuda.is_bf16_supported(),
        eval_steps=100,
        num_train_epochs=3,
        warmup_ratio=0.1,
        lr_scheduler_type="linear",
        seed=42,
)

peft_config = LoraConfig(
        r=16,
        lora_alpha=16,
        lora_dropout=0.05,
        task_type=TaskType.CAUSAL_LM,
        target_modules=['k_proj', 'q_proj', 'v_proj', 'o_proj', "gate_proj", "down_proj", "up_proj"],
)

trainer = SFTTrainer(
        model=model,
        train_dataset=dataset_chatml['train'],
        eval_dataset=dataset_chatml['test'],
        peft_config=peft_config,
        dataset_text_field="text",
        max_seq_length=512,
        tokenizer=tokenizer,
        args=args,
)

trainer.train()

Any log messages given by the failure
Loading checkpoint shards: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 4/4 [00:03<00:00,  1.11it/s]
/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/transformers/training_args.py:1494: FutureWarning: `evaluation_strategy` is deprecated and will be removed in version 4.46 of 🤗 Transformers. Use `eval_strategy` instead
  warnings.warn(
/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/transformers/training_args.py:1494: FutureWarning: `evaluation_strategy` is deprecated and will be removed in version 4.46 of 🤗 Transformers. Use `eval_strategy` instead
  warnings.warn(
/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/trl/trainer/sft_trainer.py:318: UserWarning: You passed a tokenizer with `padding_side` not equal to `right` to the SFTTrainer. This might lead to some unexpected behaviour due to overflow issues when training a model in half-precision. You might consider adding `tokenizer.padding_side = 'right'` to your code.
  warnings.warn(
Using auto half precision backend
Currently training with a batch size of: 1
***** Running training *****
  Num examples = 397
  Num Epochs = 3
  Instantaneous batch size per device = 1
  Total train batch size (w. parallel, distributed & accumulation) = 1
  Gradient Accumulation steps = 1
  Total optimization steps = 1,191
  Number of trainable parameters = 26,214,400
  0%|                                                                                | 0/1191 [00:00<?, ?it/s]`use_cache=True` is incompatible with gradient checkpointing. Setting `use_cache=False`...
/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/utils/checkpoint.py:464: UserWarning: torch.utils.checkpoint: the use_reentrant parameter should be passed explicitly. In version 2.4 we will raise an exception if use_reentrant is not passed. use_reentrant=False is recommended, but if you need to preserve the current default behavior, you can pass use_reentrant=True. Refer to docs for more details on the differences between the two variants.
  warnings.warn(
/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/triton_flash_blocksparse_attn.py:88: UserWarning: Sparse CSR tensor support is in beta state. If you miss a functionality in the sparse tensor support, please submit a feature request to https://github.com/pytorch/pytorch/issues. (Triggered internally at ../aten/src/ATen/SparseCsrTensorImpl.cpp:53.)
  x = [xi.to_sparse_csr() for xi in x]
Traceback (most recent call last):
  File "/home/artificial-brain/ai-projects/notebooks/Phi-3-finetune-qlora-python.py", line 101, in <module>
    trainer.train()
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/trl/trainer/sft_trainer.py", line 361, in train
    output = super().train(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/transformers/trainer.py", line 1932, in train
    return inner_training_loop(
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/transformers/trainer.py", line 2268, in _inner_training_loop
    tr_loss_step = self.training_step(model, inputs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/transformers/trainer.py", line 3307, in training_step
    loss = self.compute_loss(model, inputs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/transformers/trainer.py", line 3338, in compute_loss
    outputs = model(**inputs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/accelerate/utils/operations.py", line 822, in forward
    return model_forward(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/accelerate/utils/operations.py", line 810, in __call__
    return convert_to_fp32(self.model_forward(*args, **kwargs))
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/amp/autocast_mode.py", line 16, in decorate_autocast
    return func(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/peft/peft_model.py", line 1430, in forward
    return self.base_model(
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/peft/tuners/tuners_utils.py", line 179, in forward
    return self.model.forward(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/accelerate/hooks.py", line 166, in new_forward
    output = module._old_forward(*args, **kwargs)
  File "/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/modeling_phi3_small.py", line 956, in forward
    outputs = self.model(
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/accelerate/hooks.py", line 166, in new_forward
    output = module._old_forward(*args, **kwargs)
  File "/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/modeling_phi3_small.py", line 849, in forward
    layer_outputs = self._gradient_checkpointing_func(
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/_compile.py", line 24, in inner
    return torch._dynamo.disable(fn, recursive)(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/_dynamo/eval_frame.py", line 451, in _fn
    return fn(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/_dynamo/external_utils.py", line 36, in inner
    return fn(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/utils/checkpoint.py", line 487, in checkpoint
    return CheckpointFunction.apply(function, preserve, *args)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/autograd/function.py", line 598, in apply
    return super().apply(*args, **kwargs)  # type: ignore[misc]
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/utils/checkpoint.py", line 262, in forward
    outputs = run_function(*args)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/accelerate/hooks.py", line 166, in new_forward
    output = module._old_forward(*args, **kwargs)
  File "/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/modeling_phi3_small.py", line 671, in forward
    hidden_states, self_attn_weights, present_key_values = self.self_attn(
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/accelerate/hooks.py", line 166, in new_forward
    output = module._old_forward(*args, **kwargs)
  File "/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/modeling_phi3_small.py", line 616, in forward
    attn_function_output = self._apply_blocksparse_attention(
  File "/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/modeling_phi3_small.py", line 382, in _apply_blocksparse_attention
    context_layer = self._blocksparse_layer(
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/triton_blocksparse_attention_layer.py", line 165, in forward
    return blocksparse_flash_attn_padded_fwd(
  File "/home/artificial-brain/.cache/huggingface/modules/transformers_modules/microsoft/Phi-3-small-8k-instruct/69caae1f2acea34b26f535fecb1f2abb9a304695/triton_flash_blocksparse_attn.py", line 994, in blocksparse_flash_attn_padded_fwd
    _fwd_kernel_batch_inference[grid](
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/triton/runtime/jit.py", line 167, in <lambda>
    return lambda *args, **kwargs: self.run(grid=grid, warmup=False, *args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/triton/runtime/autotuner.py", line 305, in run
    return self.fn.run(*args, **kwargs)
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/triton/runtime/jit.py", line 425, in run
    kernel.run(grid_0, grid_1, grid_2, kernel.num_warps, kernel.num_ctas,  # number of warps/ctas per instance
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/triton/compiler/compiler.py", line 255, in __getattribute__
    self._init_handles()
  File "/home/artificial-brain/anaconda3/envs/llama-factory/lib/python3.10/site-packages/triton/compiler/compiler.py", line 248, in _init_handles
    raise OutOfResources(self.shared, max_shared, "shared memory")
triton.runtime.autotuner.OutOfResources: out of resource: shared memory, Required: 180224, Hardware limit: 101376. Reducing block sizes or `num_stages` may help.

The error message you're encountering suggests that the Triton autotuner is running out of shared memory resources while training your model.
This can happen when the block sizes are too large or if num_stages (the number of parallelism stages) isn't optimized well for your hardware setup.
To address this issue, you could try reducing the block sizes and/or adjusting the num_stages. Here is how you can modify your code to do so:
# Set a smaller batch size or reduce the number of parallelism stages
args = TrainingArguments(
        output_dir="./phi-3-mini-LoRA",
        evaluation_strategy="steps",
        do_eval=True,
        optim="adamw_torch",
        per_device_train_batch_size=2, # Reduce batch size to 2
        gradient_accumulation_steps=1,
        per_device_eval_batch_size=1,
        log_level="debug",
        save_strategy="epoch",
        logging_steps=100,
        learning_rate=1e-4,
        fp16 = not torch.cuda.is_bf16_supported(),
        bf16 = torch.cuda.is_bf16_supported(),
        eval_steps=100,
        num_train_epochs=3,
        warmup_ratio=0.1,
        lr_scheduler_type="linear",
        seed=42,
        num_stages=2  # Reduce parallelism stages to 2
)

Remember that reducing the batch size or num_stages may increase training time, but it should allow you to continue fine-tuning your model.

Hi @leestott Thanks for the  @reply.
Reducing per_device_train_batch_size to 1 throws the same error.
Also, num_stages doesn't seem to be a valid argument to TrainingArguments (docs)

Hi similar issues opened on Hugging face discussion
https://huggingface.co/microsoft/Phi-3-small-8k-instruct/discussions/15#665e1c81e69ab4882805c03b
https://huggingface.co/microsoft/Phi-3-small-128k-instruct/discussions/16#6663f3ff4ca290b4056d898a

Thanks!

The recommended adjustment layer is

"target_modules": [
"o_proj",
"qkv_proj"
]


merge from "2nd branch"

added a new file from "2nd Branch"

this branch looks fine and merging it now.


Deploy on Cortana doesnt talks

Hello,
I created a QNA (qnamaker.ai) and a chatbot in Azure. They connected and doing what they should do. I activated Cortana channel on azure than if I use the right invocation method its giving the right feedback just it doesn’t talk at all. I saw that Cortana will answer verbally if you invoked or queried with speech but seems not working.
I tried to recreate the whole app but it doesn’t resolve my issue. I have created a basic C# UWP app with basic question and with that Cortana talks.
The code now is the default chatbot code from Microsoft.
I would ask your advice that if I miss some setting or I just need to modify the code?
Thanks for your help.
Gabor

The Microsoft Bot Framework team prefers that how to questions be submitted on Stack Overflow. The official Bot Framework Github repos are the preferred platform for submitting bug fixes and feature requests.
It appears you have already asked this question on StackOverflow, so the BotFramework Support Team will be sure to assist you with your issue there.


Uncaught TypeError: Cannot set property 'html' of undefined on j:Label on SDK 0.9.6

Hi,
After several hours to try differents tests cases the following code thrown an  Cannot set property 'html' of undefined on a j:Label and I don't understand why.
MonComptePanel.mxml
<j:ScrollableSectionContent
    xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:j="library://ns.apache.org/royale/jewel"
    xmlns:js="library://ns.apache.org/royale/basic"
    initComplete="ev_initComplete()">

    <js:states>
        <js:State name="login"/>
        <js:State name="loggued"/>
    </js:states>

    <j:beads>
        <js:SimpleStatesImpl/>
    </j:beads>

    <j:Group includeIn="login">
        <j:Label id="lbl_ident"/>
    </j:Group>

    <fx:Script>
        <![CDATA[

            private function ev_initComplete():void {
                this.currentState = "login"; // this is useless
                var str:String = "
Please log in.
";
                lbl_ident.html = str; // here is the issue
            }

        ]]>
    </fx:Script>

</j:ScrollableSectionContent>

To reproduce the issue, code must be in
Main.mxlx
<j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                   xmlns:js="library://ns.apache.org/royale/basic"
                   xmlns:j="library://ns.apache.org/royale/jewel"
                   xmlns:binding="org.apache.royale.binding.*"
                   xmlns:local="*">
	<j:valuesImpl>
		<js:SimpleCSSValuesImpl />
	</j:valuesImpl>

    <j:initialView >
        <j:View>
            <j:ApplicationMainContent selectedContent = "moncompte_panel">
                <local:MonComptePanel name="moncompte_panel"/>
            </j:ApplicationMainContent>
        </j:View>
    </j:initialView>
</j:Application>

The full error is
EventDispatcher.js:73 Uncaught TypeError: Cannot set property 'html' of undefined
    at MonComptePanel.MonComptePanel_ev_initComplete (MonComptePanel.mxml:28)
    at MonComptePanel.$EH0 (MonComptePanel.mxml:7)
    at MonComptePanel.goog.events.EventTarget.fireListeners (eventtarget.js:284)
    at Function.goog.events.EventTarget.dispatchEventInternal_ (eventtarget.js:382)
    at MonComptePanel.goog.events.EventTarget.dispatchEvent (eventtarget.js:196)
    at MonComptePanel.org.apache.royale.events.EventDispatcher.dispatchEvent (EventDispatcher.js:70)
    at MonComptePanel.org.apache.royale.core.HTMLElementWrapper.dispatchEvent (HTMLElementWrapper.js:254)
    at MonComptePanel.org.apache.royale.jewel.Container.addedToParent (Container.js:180)
    at org.apache.royale.jewel.ApplicationMainContent.org.apache.royale.core.UIBase.addElement (UIBase.js:410)
    at org.apache.royale.jewel.ApplicationMainContent.org.apache.royale.core.GroupBase.addElement (GroupBase.js:165)

Here is full source code
TestRoyale4.zip
Any ideas ?
Regards

I think that's interesting and hope @aharui could give us a hand here.
The problem seems to be caused by states and includeIn. So referencing components in views where we have states, or even using bindings could make Royale not able to reference the component if we use includeIn. IMHO, this is a bug in states, since it fails in this kind of situations.
I think a workaround for this is use visibility instead of includeIn. Check this for an example in both formats: https://royale.apache.org/using-view-states-to-show-or-hide-content/

Thanks for your quick interest and workaround
For now I do a lot of tries and errors and it seems that the smallest code to reproduce it, is the given exemple.
If trying directly on the first view like below it is working
<j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                   xmlns:js="library://ns.apache.org/royale/basic"
                   xmlns:j="library://ns.apache.org/royale/jewel"
                   xmlns:binding="org.apache.royale.binding.*"
                   xmlns:local="*" applicationComplete="ev_applicationComplete()">
	<j:valuesImpl>
		<js:SimpleCSSValuesImpl />
	</j:valuesImpl>

    <j:initialView >

        <j:View id="myview">
            <js:states>
                <js:State name="login"/>
                <js:State name="loggued"/>
            </js:states>

            <j:beads>
                <js:SimpleStatesImpl/>
            </j:beads>

            <j:Group includeIn="login">
                <j:Label id="lbl_ident"/>
            </j:Group>

        </j:View>
    </j:initialView>

    <fx:Script>
        <![CDATA[
            private function ev_applicationComplete():void {
                lbl_ident.html = "HELLO";
            }
        ]]>
    </fx:Script>
</j:Application>

I hope it will be easy to fix it

Make sure there is an IStatesImpl in the CSS for the application.  I'm not sure if Jewel has one by default.  Don't look at the app's .css output because IStatesImpl will be pruned, try text searching the output .js file for "StatesImpl".

@aharui Jewel needs to add the bead (same as Basic). Fred did it in the first example, but not in the latest:
<j:beads>
        <js:SimpleStatesImpl/>
    </j:beads>

We have in Tour de Jewel an example of use for both includeIn and visible alternatives.
The problem Fred was experimenting is about Royale getting undefined values for instances when using includeIn, and I was saying that I think is a bug since I found it while developing our real Royale App.
Sometimes when we have binding or other things in place and use view states with includeIn Royale does not have the "hidden" components instantiated and this results in a javascript error reporting undefined. I think Royale should know about the object to avoid code runtime errors.

This is a timing problem.  When added as a bead, the IStatesImpl relies on the initComplete to initialize, but if the application is also relying on a state change in initComplete, the application's handler will get called before the IStatesImpl gets initialized.
The Containers are set up to initialize their IStatesImpls when the states property is assigned its states.  That gets them in early to be the first to get the initComplete event.  So, if folks are relying on state changes in initComplete, they should use CSS instead of beads to setup the IStatesImpl.  The MXRoyale and SparkRoyale defaults.css setup a default IStatesImpl for all containers.  Jewel could do the same.
This version uses CSS instead of beads and seems to work.
<j:ScrollableSectionContent
    xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:j="library://ns.apache.org/royale/jewel"
    xmlns:js="library://ns.apache.org/royale/basic"
    initComplete="ev_initComplete()">

    <js:states>
        <js:State name="login"/>
        <js:State name="loggued"/>
    </js:states>

    <j:Group includeIn="login">
        <j:Label id="lbl_ident"/>
    </j:Group>

    <fx:Style>
        global {
            IStatesImpl:            ClassReference("org.apache.royale.core.SimpleStatesImpl");
        }
    </fx:Style>
    <fx:Script>
        <![CDATA[

            private function ev_initComplete():void {
                this.currentState = "login";
                var str:String = "
Veuillez vous identifier.
";
                lbl_ident.html = str;
            }

        ]]>
    </fx:Script>

</j:ScrollableSectionContent>

Hi Alex, thanks for exposing how to solve the problem. I think this will be something many people will need to know.
Maybe this could be solved at framework level so users don't need to use this workaround and both ways will reach to the same working solution? (CSS bead and adding the bead in MXML)
Thanks


YouTube not tracking view metrics

I am currently loading youtube videos into a lightbox to play with lity, as can be seen here:
https://www.hearingtracker.com/test2
Unfortunately, I have discovered that all views from the site have been unmeasured by google. Has anyone solved this issue before?

I just updated to the latest lity code to see if that helps. Will report back soon after more stats accrue.

Nope, still not working.

Nope, still not working.

Any news or workarounds on this issue?


Message actions popover shifted to the left with narrow windows

When you shrink your window, the message actions popover is shifted to the left. See images below:

@lonerz I'm unable to reproduce this effect? When I resize the window, the popover seems to disable and hides instead...

@jeremyphilemon Resize the window then open the popover.

Tweaked the description to correctly reference narrow windows.

@babhishek21 can you take a look at this?  It's probably a bug in your recent changes to the positioning of this popover...

@timabbott Umm.. I don't think there is specific coverage from my changes in #3741 onto this bug. My changes handled vertical positioning (whether the popover is positioned at the top or the bottom of the message element). Nothing to do with horizontal positioning (mostly because the bootstrap popovers library handles the exact positioning; we just provide it relative terms like top, bottom, left or right). The need for better horizontal placement has, however, been elucidated in this comment on #3741 .
Funny thing is, I noticed this while I was working on #3741 . It was there before I made my changes, and remained there. Honestly I thought this was expected behaviour (if we were to avoid tweaking the bootstrap popover positioning internals). :see_no_evil:

From what I make of it, this issue is highly dependent on the bootstrap popovers library. The issue occurs in narrow viewports because when the popover is initiated, the library tries to position it correctly (at the top or bottom of the message element, based on the height of the to-be-displayed popover), but runs out of horizontal screen estate on the right side. It can then either position as is (some part of the popover is then not visible in the viewport; it's cutoff on the right side) or re-position so that the right edge of the popover matches the right edge of the viewport. The latter occurs.

Another thing to note is that the chance of this issue occurring is also dependent on the contents of the popover itself! Take a look at these two images. Both use the same viewport and the same channel thread, but different messages with topics of differing lengths.

Less content
More content

One way around this would be manually reflowing the contents of the popover so that it takes up vertical screen estate instead of horizontal screen estate. As with #3741 , if the user uses an unreasonably small viewport, the popover will spill out of it.

Another way is manually positioning just the 20 px x 10 px .arrow div of the popover to match that of the reverse caret :arrow_down_small: in the message element (see below)

Image (Please open and view them in a new tab)
Remarks

The .arrow div is always 50% left positioned along the top/bottom edge of the popover.

Re-positioning the .arrow div to be about 59% left to match with the reverse caret :arrow_down_small: of the message element fixed the issue. Of course, the actual percentage would depend on the popover content and how it was positioned by the bootstrap popover library (both of which are hard to predict).

Let me know if you'd still want me to take this up. :smiley:

@babhishek21  Are you working on this? And if we want to solve this issue is there any other way than tweaking bootstrap?

@Gautime Hi! No, I'm not working on this; I couldn't find the time. Feel free to take this up (if this issue still exists). I don't have a working copy of Zulip available right now, but I might be able to help nonetheless.
Tweaking bootstrap internals would be an absolute no-no. I think just moving the .arrow div after the popover loads is probably the best way forward.

@zulipbot claim

Just an idea:
What if we just remove this arrow to stop complicating things?

And instead, we could add some feature like the message getting shadowed or something of the sort
This isw keeping in mind the following:

* From what I make of it, this issue is highly dependent on the bootstrap popovers library. The issue occurs in narrow viewports because when the popover is initiated, the library tries to position it correctly (at the top or bottom of the message element, based on the height of the _to-be-displayed_ popover), but runs out of horizontal screen estate on the right side. It can then either position _as is_ (some part of the popover is then not visible in the viewport; it's cutoff on the right side) or _re-position_ so that the right edge of the popover matches the right edge of the viewport. The latter occurs.

* Another thing to note is that the chance of this issue occurring is also dependent on the _contents_ of the popover itself! Take a look at these two images. Both use the same viewport and the same channel thread, but different messages with topics of differing lengths.

Less content 	More content

Otherwise, I'm just going to try and do this:

@lonerz it would be great to have your input on this too

Otherwise, I'm just going to try and do this:

Probably will not go with this because as mentioned before in discussions, this seems to be core bootstrap logic and it is ideal not to tinker with it.
Discussion thread here:
https://chat.zulip.org/#narrow/stream/49-development-help/topic/message.20action.20popover.20shifting.20to.20the.20left.20.234145

What if we just remove this arrow to stop complicating things?

I like that idea.

@zulipbot still working on it

@zulipbot claim

This PR changes the popover to Mute this topic when the right-sidebar disappears. Moving the arrow seems to be rather tricky. Moreover, this seems to be a simpler approach.

PR ready for initial review

@vinitS101 @YashRE42 can one of you help review this?

@timabbott please review this when convenient. Thanks.

@zulipbot working on it. Review is pending

Can someone please review this ? It has been pending for a while now. Worked a lot on this one. Thanks!

The thresholds are as follows:
Mobile view popover: <=320px
Narrow view : <=1165px
Normal view: >1165px
Test images:
Mobile view:

Narrow view:

Narrow view(a bit wider):

Normal view:

Unmute in narrow view:

@ab1nash I suggest commenting @zulipbot claim on this issue so that the bot puts this in the in-progress lane again.

@zulipbot claim

@babhishek21 It would be great if someone could review this PR

@zulipbot claim

@amanagr I imagine this will likely be automatically fixed when we convert this one to Popper, so it might be a good first widget to migrate.

Yeah.

@zulipbot claim

This is fixed by the Tippy migration for that popover. See https://github.com/zulip/zulip/pull/23665.


Question: Identify which condition failed

When working with conditions between transitions, Is it possible to identify which condition failed? It would be nice to know what went wrong.
Thanks!

Implemented in the viewflow.fsm module - https://github.com/viewflow/viewflow/blob/v2/tests/fsm/test_fsm__conditions.py#L26

New Link

Implemented in the viewflow.fsm module - https://github.com/viewflow/viewflow/blob/v2/tests/fsm/test_fsm__conditions.py#L26


Quantum engine job URLs

Is your feature request related to a use case or problem? Please describe.
URLs to the webpage showing jobs scheduled on the quantum engine requires knowing details of the structure of the URLs that users are unlikely to remember. Context: #3304.
Describe the solution you'd like
Add an easily discoverable function that returns the URL for a given quantum engine job, i.e. URL like
https://console.cloud.google.com/quantum/programs/PROGRAM_ID/jobs/JOB_ID/overview?project=PROJECT_ID
What is the urgency from your perspective for this issue? Is it blocking important work?
P3 - I'm not really blocked by it, it is an idea I'd like to discuss / suggestion based on principle

Great suggestion, thanks. What do you think of adding a "consoleUrl" method to each of the Engine resources? Specifically, EngineProgram, EngineJob, and EngineProcessor?

Hey Will, this came up at Cirq sync. Is this still on the table?

Still on the table. It's filed under "usability" and "console transitions" for the QCS roadmap. This should be pretty simple though and probably doesn't need to wait. Assigning to Cheng as the new owner of cirq_google.

I don't think that this needs to be done as part of Cirq 1.0.  Adding console_url() is extra functionality.  Even if we "break backwards compatibility" by changing job URLs, we do not have public access to the API, so I don't think this is a crucial breakage (or even covered by our library guarantees, as it is external functionality).  I propose this should be after 1.0.
@95-martin-orion Do you agree?  If so, can you change this to after/1.0?


Can run tree control build using angular

I am trying to run the pure angular Lidor Treeview in a ui-template.   This tree is a good one because it can dynamically load the tree on demand.  But, the tree doesn't render.  You can get a trial of the tree at: http://www.lidorsystems.com/downloads/integralui-studio-web-reg.aspx  Note sure what I am doing wrong...

Hi, for general questions like this, please using the mailing list, linked from the bottom of nodered.org.
This repo is for the core of node-red, not the dashboard nodes.

OK, thank you.

You may want to include some more details on what you've tried when you post to the mailing list.


Installation yields error ORA-955: name is already used by an existing object

This occurs at the attempt to create index DD_FT_MEMBERS

In discussion with Blaine, this appears to happen only when using SQL*Plus. The reason is that the create index statement is terminated by a semicolon as well as a slash.