Composition and layout refactor

This change refactors WinObjC's QuartzCore and UIKit stacks to align more closely with Xaml, as detailed in the docs/CoreAnimation/WinObjc.Composition.and.Layout.docx dev spec.
Some highlights include:
1.	Streamlines the usage of arbitrary Xaml FrameworkElements by allowing them to be positioned just as any other UIView in the application.
2.	Supports rendering over Xaml-backed UIKit controls; adding adornments, etc.
3.	Supports adding subviews and sublayers to Xaml-backed UIKit controls.
4.	Separates the complex details of our Core Animation composition layer into distinct and manageable subcomponents  improving maintainability.
5.	Defines a concrete relationship between every UIView, its root CALayer, and its backing Xaml FrameworkElement.
6.	Streamlines the UIElement tree by removing unnecessary UIElements (for example; this results in a ~30% reduction of UIElements on the initial scene of WOCCatalog).
7.	Simplifies app rendering by removing our two custom Panel implementations; thus eliminating the need to take part in Arrange and Measure passes.
8.	Paves the way for eventual Xaml-markup-driven UIElement trees in ported WinObjC apps, because we no longer require re-parenting Xaml FrameworkElements that are positioned by Core Animation.
9.	Moves the rest of the Core Animation composition layer over to C++, to benefit from modern programming constructs such as RAII, external ref-counting (shared_ptr), etc.

In order to implement these changes, we had to move UILabel over to a fully Xaml-backed implementation (rather than following a more complicated path with fake 'textures' down into the compositor).  As a result, there are some known issues around text layout in one of our internal test apps (MM); we'll address those issues (and anything else that comes up) in a stabilization pass after these changes go in.

This change is

@oliversa-msft is added to the review. #Closed

@yiyang-msft is added to the review. #Closed

@rajsesh-msft is added to the review. #Closed

@bbowman is added to the review. #Closed

@DHowett-MSFT is added to the review. #Closed

@msft-Jeyaram is added to the review. #Closed

@davelamb is added to the review. #Closed

@ashvarma is added to the review. #Closed

@bviglietta is added to the review. #Closed

@tadam-msft is added to the review. #Closed

oops; this should have been a PR for ux/uxe.  i'll cancel and resubmit.


Added remaining vcx apis to Java Wrapper

@nagad814 @tsaicharit @khagesh Can anyone please do a code review.


[BUG]: Fix powerflex e2e-fsgroup tests

Bug Description
The powerflex e2e-fsgroup tests are failing with errors related to upgrading the go.mod components. Attachment is shared below
We have to make sure the go.mod have updated components and the code is complaint with them
We have to maintain the K8s version >= 1.29.7
Logs
N/A
Screenshots
No response
Additional Environment Information
No response
Steps to Reproduce
run e2efsgroup tests
Expected Behavior
It should pass
CSM Driver(s)
csi-powerflex
Installation Type
Operator/Helm
Container Storage Modules Enabled
No response
Container Orchestrator
1.30
Operating System
Linux

link: 28128


TypeError: As of 3.10, the loop parameter was removed from Queue() since it is no longer necessary

proxybroker find --types HTTPS SOCKS4 SOCKS5 --lvl High --countries UA --strict -l 100
/run/media/vadiki/D_238_GB_WD/Кибервойска/Анонимность/Proxy/proxy-scraper-checker-main/env/lib/python3.10/site-packages/proxybroker/cli.py:379: DeprecationWarning: There is no current event loop
loop = asyncio.get_event_loop()
Traceback (most recent call last):
File "/run/media/vadiki/D_238_GB_WD/Кибервойска/Анонимность/Proxy/proxy-scraper-checker-main/env/bin/proxybroker", line 8, in
sys.exit(cli())
File "/run/media/vadiki/D_238_GB_WD/Кибервойска/Анонимность/Proxy/proxy-scraper-checker-main/env/lib/python3.10/site-packages/proxybroker/cli.py", line 380, in cli
proxies = asyncio.Queue(loop=loop)
File "/usr/lib/python3.10/asyncio/queues.py", line 34, in init
super().init(loop=loop)
File "/usr/lib/python3.10/asyncio/mixins.py", line 17, in init
raise TypeError(
TypeError: As of 3.10, the loop parameter was removed from Queue() since it is no longer necessary

As this project is not maintained by the original developer, we've forked ProxyBroker and continued maintaining the proxybroker2 project since 2020 https://github.com/bluet/proxybroker2
If anyone's interested, please join. We need more volunteers. :-)

thankyou wery mach!
сб, 20 авг. 2022 г. в 20:04, BlueT - Matthew Lien - 練喆明 <
@.***>:

As this project is not maintained by the original developer, we've forked
ProxyBroker and continued maintaining the proxybroker2 project since 2020
https://github.com/bluet/proxybroker2
If anyone's interested, please join. We need more volunteers. :-)
—
Reply to this email directly, view it on GitHub
https://github.com/constverum/ProxyBroker/issues/194#issuecomment-1221368227,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AS2VUXQ56OVQ4NH5CCO3363V2EF3NANCNFSM55QOVUCA
.
You are receiving this because you authored the thread.Message ID:
@.***>

you can update pythone version on your desktop

Python 3.11.3
пн, 29 мая 2023 г. в 09:29, Aldi Nurdianto @.***>:

you can update pythone version on your desktop
—
Reply to this email directly, view it on GitHub
https://github.com/constverum/ProxyBroker/issues/194#issuecomment-1566625269,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AS2VUXV355LV6EA5LM3665DXIQ635ANCNFSM55QOVUCA
.
You are receiving this because you authored the thread.Message ID:
@.***>


Sync with upstream vim ftplugin

Hi,
this is a sync with upstream ftplugin (https://github.com/vim/vim/pull/16134).

Thanks a lot!


Improve vouchers

I want to merge this change because, resolve #4142, and fix #4082
We need to adjust API to new discount mock:

[x] Use dateTime as start and end date of voucher. (#4142)
[x] Use dateTime as start and end date of sale. (#4142)
[ ] Fix one_per_order calculation.
[x] Fix voucher on products sold out. (#4082)

Pull Request Checklist

[ ] Privileged views and APIs are guarded by proper permission checks.
[ ] All visible strings are translated with proper context.
[ ] All data-formatting is locale-aware (dates, numbers, and so on).
[ ] Database queries are optimized and the number of queries is constant.
[ ] Database migration files are up to date.
[ ] The changes are tested.
[ ] The code is documented (docstrings, project documentation).
[ ] GraphQL schema and type definitions are up to date.
[ ] Changes are mentioned in the changelog.

Here is the report for 09d90ebde8e516802d655456a7c5e72fc2bbecff (mirumee/saleor @ improve-vouchers)
Base comparison is 6bab31a288b537bdd313725d8d7e1186926d231f.
No differences were found. (click me)

# api.benchmark checkout
  test name                           	left count 	right count
  ------------------------------------	-----------	-----------
  add billing address to checkout     	         41	         41
  add shipping to checkout            	          7	          7
  checkout payment charge             	         16	         16
  complete checkout                   	          6	          6
  create checkout                     	         45	         45

# api.benchmark homepage
  test name                           	left count 	right count
  ------------------------------------	-----------	-----------
  retrieve main menu                  	          5	          5
  retrieve product list               	          4	          4
  retrieve secondary menu             	          5	          5
  retrieve shop                       	          2	          2

# api.benchmark product
  test name                           	left count 	right count
  ------------------------------------	-----------	-----------
  product details                     	         16	         16

# api.benchmark variant
  test name                           	left count 	right count
  ------------------------------------	-----------	-----------
  retrieve variant list               	         13	         13


Disconnected by VAC: You cannot play on secure servers

I tested in a casual game, and I entered no jogo I expelled empty hair, vac nao I can verify seu jogo.
The only way you can figure out this error is using the VAC Bypass Loader together with the qo0-base

stop opening misinformed issue if u not sure about this.


Invitationemaildowncase

Invitation emails need to be all lowercase to match emails in the user database.

Also you can probably refactor https://github.com/codeforboston/cambridge_energy_app/blob/master/app/controllers/invitations_controller.rb#L29-L31 into the model as well using similar techniques.

Actually after looking into this further it probably makes sense to do these things in user_mailer.rb

When I earlier linked to the before_filter what I was really hoping to link to was ActiveRecord Callbacks: http://guides.rubyonrails.org/active_record_callbacks.html as some of the stuff in the controller can probably be refactored into the model using those. http://www.theodinproject.com/ruby-on-rails/active-record-callbacks might also be helpful on this. It is not required/urgent but we should do that at some point.

This breaks two tests:

[ ] rspec ./spec/controllers/invitations_controller_spec.rb:46 # InvitationsController POST #create creates a new invitation
[ ] rspec ./spec/controllers/invitations_controller_spec.rb:70 # InvitationsController DELETE #destroy reciever declines invitation is successful

Closing because it is rendered moot by the use of devise_invitable I merged in.


Rider 2023.2 background colors broken

Describe the bug
Updating to July 31, 2023 update the editor background colors appear to be broken

With this one they've introduced the 'Modern UI', I tried it (I think it looks terrible and went back), but the background colors appear to be the low contrast washed out defaults. To make sure I fully reinstalled the plugin but it persists.
To Reproduce
Upgrade to latest version. Appearance set to Hiberbee Dark as is Editor Color scheme
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Window 11, latest

@DanMcLaughlin please, check on latest update, that should be fixed.

Frankly, just realized, taking background color sample from your screenshot, that most likely you navigating to read-only file (e.g. third-party source library). I've set different background colors intentionally - for read-only and editable files as of #272625 and #171615 respectively. That will help quickly recover where you are at current navigation and view.
Check my assumption, maybe that's it.


Almost all the commands I give aiac don't work?

Sorry for the confusion, but I'm curious why you've decided to publish this now? I'd love to use something like this, but every time I give at an instruction I actually care about it's unable to run it? When I copy and paste use cases from the doc directly it works fine. For example none of these commands have run, though they run trivially on ChatGPT:
aiac get python that authenticates to aws

aiac get dockerfile for typescript program that runs terraformer from the command line

aiac get circleci orb for validating terraform json with opa

They all return Request failed: failed sending prompt: [server_error] The server had an error while processing your request. Sorry about that!
But this works fine:
aiac get terraform for AWS EC2
# Create a main.tf file

provider "aws" {
  region     = "us-east-1"
}

resource "aws_instance" "ec2-instance" {
  ami           = "ami-08d798f297f89fce1"
  instance_type = "t2.micro"

  tags = {
    Name = "test-instance"
  }
}

So I'm wondering what you're looking for from the community? I'm happy to be an early adopter, but how? I feel like my commands above are correct.

Okay I got the first command to run by changing aws -> AWS?

Usually the OpenAI API isn't sensitive to casing, but it's possible that sometimes it misidentifies the context without proper casing. If you're still encountering issues, let us know and we'll see if there's anything we can do on aiac's side (I doubt it). For now, I'm closing.


typo: Double word "an"

@nschonni : Thanks for your contribution! The author, @ecfan, has been notified to review your proposed change.

@nschonni, thanks for catching this item. We actually already have a PR in progress to fix, so should be live Monday. Good eye! :)
#please-close


[zh-cn] sync task files of task-3

related: #39983

Please only include one language (such as en or zh-cn) in a PR.

/hold      until the en or zh files are removed from this PR

/lgtm

/label tide/merge-method-squash
/approve


Date with range option

Describe the feature
request range selection.
with actual range options.
User can choose start date and end date.
returned 2 variables as start and end of the selected date
This date range feature is often used in report forms.
Additional information

[X] Would you be willing to help implement this feature?
[X] Could this feature be implemented as a module?

Final checks

[X] Read the contribution guide.
[X] Check existing discussions and issues.

Hi @karis,
Thanks for the request. Currently, we don't have the plan to create our own custom library for handling DatePicker or Calendar. But, you use the popular existing library out there like VCalendar or Vue3DatePicker which have a date range feature as you requested.


Broken fuzzy search algorithm in picker

The fuzzy search algorithm can be improved to solve all problems listed in #27317, but IMHO it's completely broken and it should be rewritten from scratch. Let me show you some of the errors I've found:
Doesn't work with leading spaces
This is the expected behavior:

This is what happens if the strings have some leading spaces (useful for extensions like Projects+ for showing a tree-like structure):

Not really "fuzzy"
As I understand it, the term "fuzzy" in "fuzzy search" basically means that the characters provided in the search query can have 0 or more other arbitrary characters between them in the matching string. The current algorithm looks like regular search instead:

Overly strict about string position
For some reasons there are strings that match against some queries, but don't mach against less specific versions of those queries. I mean, a more specific query should provide the same or less results, not more, right?

@fabiospampinato some of this can be explained by the fact that fuzzy search is NOT enabled for the normal picker (see #34088). Currently we have it only enabled for the file search because it still needs to be tweaked. I need to check for the leading whitespace issue but it may be related to the same cause.

@fabiospampinato trying to reproduce the issue with leading white space but I cannot:

Is there any way I could try it on the code that you used for your animation to reproduce the same?

@bpasero Try prefixing those strings with exactly 8 spaces. For whatever reason the bug doesn't manifest itself with just 4 spaces in my system.
If it doesn't work, install Projects+, run Projects: Edit Configuration and paste this:
{
  "groups": [
    {
      "name": "open",
      "groups": [
        {
          "name": "vscode",
          "projects": [
            {
              "name": "vscode-projects-plus-todo-plus",
              "path": "/"
            },
            {
              "name": "vscode-todo-plus",
              "path": "/"
            }
          ]
        }
      ]
    }
  ]
}

Then run Project: Open  and try it again.
It would be weird if it still doesn't work.

@fabiospampinato thanks, I can reproduce now.

@bpasero Here there's another bug, in the following gif I hit down 2 times and then up 2 times and nothing gets selected instead of selecting the last item:

When will this bugs be resolved?

@joaomoreno I think that one is fixed already in our latest insider build, can you check

@bpasero It's fixed. Thank you.

/duplicate https://github.com/Microsoft/vscode/issues/34088


Feature Request: track length in OSX notifications

Hi, I don't know Objective C so I thought I'd request the app include the track length in it's OSX notifications? It's helpful to know whether your in one song or a long mix when you're thinking about skipping a track with the media keys.
Bonus: play/pause notification uses time remaining timestamp ;)
Thanks!

This seems similar to my album art implementation


⚠ Bofrost.lu has degraded performance

In 1dd6d52, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 988 ms

Resolved: Bofrost.lu performance has improved in b50c7cc.


Plugin store: a place where people can look for good plugins

Is there a place where users can go and search for awesome plugins for hyper?

https://github.com/bnb/awesome-hyper ✌

Very cool!


Compatibility with Ionic 7 - QUESTION

Hi, We are wondering about your covalent dynamic forms( https://teradata.github.io/covalent/v5/#/components/dynamic-forms/overview ) Is compatibility with the latest version of Ionic 7? Or is there someone who used it before?
Thanks in advance for suggestion and guidance :)

Hello @serkaneken thanks for your question. We do not specifically test with IONIC so there is no way of us knowing if that will work or not. We are only dependent on Angular and Angular Material....See our readme to know the exact version of angular we support for each version.


Querying iox data will require use of special identifiers.

ETA: Before 1.31 marty release of iox to cloud2.
Data written into influxdb, under iox, can have capitalization and whitespace. This means that the user needs to know to use SQL special identifiers (a.k.a. double quotes) when their measurements, field names, or tag name have these features.
Relevant URLs
Examples:
SELECT * FROM "airSensors";
SELECT * FROM "quarry blast";
See detailed examples as shown when exploring this ticket. This ticket is where we have the UI building example SQL queries using special identifiers. However, not all users will start writing SQL within the UI. Therefore, we may want to have the docs updated to highlight this need; specifically, when using SQL to query their data in iox.

Can you clarify when single quotes are needed?

The above has been included in the sql reference.
Can you clarify when single quotes are needed? You need them with RFCC timestamps, are there other times when single quotes are needed?

Users are still writing data with influx schema identifier rules, which permit identifiers (e.g. for buckets, measurements, field names, and tag keys) as influxDB identifiers. These identifiers are case sensitive (e.g. airSensors) and can have whitespace (my measurement). Querying via SQL requires these identifiers to be double quoted.
Examples:
SELECT * FROM my measurement; will fail.
SELECT * FROM "my measurement"; is valid.
SELECT * FROM "my measurement" WHERE tagKey = 'tagValue'; will query for lowercase tagkey.
SELECT * FROM "my measurement" WHERE "tagKey" = 'tagValue'; will query for (and correctly find) "tagKey".

Also, is this using the influx cli?  What command line or SQL shell are we recommending that customers use?

why does the following work with single quotes and not double:
SELECT
selector_last(degrees, time)['time'],
selector_last(degrees, time)['value']
FROM h2o_temperature
WHERE time >= timestamp '2019-09-15T00:00:00Z' AND time <= timestamp '2019-09-19T00:00:00Z'

Underscore does not equal whitespace. Look at level description.
This one (use double quoted string) will pass:

This one, without the double quotes, will error:

The selector_last is a user-defined-aggregate which iox defines (here and here). Looking at the testcases (example here), it appears that the ['value'] and ['time'] are keys in the returned json object --> so that's different from a column identifier.

Here is an example of the camelCase identifiers (or anything that uses case sensitivity), requiring SQL special identifiers (a.k.a. double quotes).
Identifier "airSensors" found the measurement/table:

Identifier airSensors did not find it. Because sql lowercases all identifiers which are not special identifiers (with double quotes).

If you run show tables query, it becomes more evident. The identifiers on the WRITE path (when data is written in) use the InfluxDB format, which includes case sensitivity and whitespace.
Whereas we query out via SQL, requiring the use of special identifiers (double quotes).

If you don't think it's worth putting in the docs -- then that's your team's call. We've experienced almost every dev figuring this out on their own, so I guess maybe the users will have to figure it out too?

This needs to be documented for our users, I just need to make sure the info is accurate and clear

created a PR for the SQL reference, will close this out as PR has been approved


Allow case-insensitive column name Id on spo listitem batch remove

On the m365 spo listitem batch remove command, a CSV file is expected with a column named ID. The check for this column is case sensitive. So if I have a CSV with a column named Id, the command will fail with the error Error: The file does not contain the required header row with the column name 'ID'.
It's a small enhancement, but we should make the column name case-insensitive

Can I make this change?


Fix java detection on Windows

currently the plugin fails to detect java presense on Windows machines. For example I do have a Windows 2008 Server with SSH enabled via SUA, Java 1.7 installed and available from the command line.
Still the plugin fails to detect java.
Running java from the ssh prompt works but if you try to use "which java" it will fail because java executable is not in PATH.
Still the real location on the disk is on "/dev/fs/C/Program Files/Java/jre7/bin/java.exe"
The whole purpose of this is to improve the detection mechanism so it will not require manual work for installing the slaves.

Please use JIRA for issue reports.


block class inside block-group now renders in monospace

the .block class needs the Avenir declaration, maybe it got removed? From /page-layouts/homepage/

fixed in #508


Add analytics-react package

@silesky Please review the package.json with extra caution to make sure things are as they should be

Pushed a commit that fixes constraints.


ci(nexus): setup coverage for nexus

Description

Fixes WB-NNNNN
Fixes #NNNN

What does the PR do?

🤖 Generated by Copilot at 48cdecc
This pull request improves the codecov integration and coverage reporting for the wandb repository. It updates the go orb version, adds custom flags to the codecov upload steps, and modifies the coverage file generation and paths for both Python and Go code. It also removes unnecessary options from the .codecov.yml file.
Testing
How was this PR tested?

🤖 Generated by Copilot at 48cdecc

We're breaking the chains of the old orb version
We're passing the flags to the codecov upload
We're profiling the Go code with GOCOVERDIR
We're generating the reports with tox.ini

implemented elsewhere, closing


shift+right arrow doesn't go to the next row

Describe the bug
left and right arrow go to next previous row when line end is reached
not shift_arrow
Version:
latest as of today
To Reproduce
press shift_ right arrow repeatedly
Expected behavior
selection switches to next row

Notes:
Seems to be caused by ThumbnailListView.SelectedIndex pointing to the first item in the selection instead of the current.

Let me know if this version fixes the issue
v1.2.2.zip

It works thank  you.


Updated ctcl code with review comments - added __iexact while filteri…

…ng state_code, candidate_name, measure_title, politician_name, we_vote_id, candidate_name, office names

👍


Enable setting impdp specific options on import

This enables a selected subset of impdb specific options on import that we know are safe to support more common import usages.
bug: 254697198
Change-Id: I5e0b8e8914c996f53319b822463e1f9a29e0126e

Woops wrong button.
/retest


Move the location of the medium emote step at tai bwo

Just a simple move the emote tile closer to the crate so we aren't making a journey to the location
https://imgur.com/a/zXcYtqH

So the emote tile is one tile west?


Caged pets should show Pet image not cage

When you have a caged pet, adibags used to show the image of what pet it was not the cage image. Currently better bags only shows the cage.

Additional, pet names cannot be searched for (probably because of same bug why cage is shown?)

Battle pet will always return 'Pet Cage' for name using GetItemInfo(id) you have to get the details from the tooltip
local tooltipData = C_TooltipInfo.GetBagItem(bag, slot) -- or C_TooltipInfo.GetGuildBankItem( tab, slot )
if tooltipData then
	TooltipUtil.SurfaceArgs( tooltipData )
	if tooltipData.battlePetSpeciesID then
		-- tooltipData.battlePetSpeciesID
		-- tooltipData.battlePetLevel
		-- tooltipData.battlePetBreedQuality
		-- tooltipData.battlePetMaxHealth
		-- tooltipData.battlePetPower
		-- tooltipData.battlePetSpeed
		-- tooltipData.battlePetName
	end
end

This is a deal breaker for me.

This is on the list of things to get done. There is a more elegant way of getting the information needed than the tooltip -- it'll get done in the near future.

fixed in #316


Sectra data management infrastructure for production

We know how to make Sectra work now, we need to configure the production deployment, which means working out exactly what that should look like with Ben & Umar.


cargo new hangs if hg hangs in existing_vcs_repo

I had changed something about my pyenv environment which caused my installed hg binary to hang. This caused cargo new to hang and it took me a while to figure out why.
It looks like existing_vcs_repo calls HgRepo::discover which runs hg using exec_with_output.
Perhaps for something like this that's non-critical it'd be useful to have a version of that exec with a timeout? Even printing an error like "process ran for too long: hg ran for  before timeout" and failing the process would have made diagnosing this a lot easier.

This seems very specialized.  Among the different external process we call, this is likely the only type that a timeout would work reasonably well on.  If one of these other external tools hung, we wouldn't be able to handle it either.  As the case for this seems very specialized (and timeouts can be fairly problematic to implement and support), I'm going to go ahead and close this.  If there is a reason we should re-evaluate this, let us know!


First commit for a mite websocket adaptor

Pretty lightweight and similar to the amqp one
Adds websocket attribute to conext using wrapper
Uses connect method to establish websocket connection, which both returns the connection object and sets a websocket.connection attribute to the established connection
websocket.send(...) will then send over this connection
if more connections are needed, you can assign returned connection from connect(...). Unsure if this is best design
100% unit test coverage
Cool new exception chaining feature I've never used before

CI is grumpy though...  Looks like small things, unused imports and the like

CI is grumpy though... Looks like small things, unused imports and the like

Stylistic fixes have been made.


Round subseconds to avoid float underflow

Fixes #488

Round is unavailable on embedded, going to think how to solve it.

The implementation will definitely be improved, but this is sufficient to merge. Thanks!

Thanks!


[BUG] Can't scroll in filters column selection modal

Describe the bug
We can't scroll in the filters column selection menu
To Reproduce
Steps to reproduce the behavior:

Go to filters
Click on add filter
Try scroll to down
Nothing happend

Expected behavior
it should scroll

Couldn't reproduce


WordPress Appointkart plugin issue in iphone device

When plugin page load then by default open calendar , So how I hide the by default open calendar. See the image in Iphone page load calander open. website link : website link

@savan13 That's not part of the flexnav codebase, right?

@indyplanets  ok
so how can i post this questions ?


normalization added

often in DL computations normalization must be added to matrices for computations. This file is a collection of popular methods typically used in a DL setting.

@mhajij @ffl096 update on this?


Support different repository providers

Request details
Make repository implementation abstract, so we could support different build systems in the future without breaking changes.

Default repositories are now called maven repositories, so a new repository provider won't conflict with this one. In case of a need to implement a new repository provider, we should pull out the common codebase to a new package and provide a shared endpoint that will distribute traffic to proper repository providers. I'm closing this now, but should be re-opened in case of an attempt to support a new build system officially.


Create a requirements.txt for notebooks

Motivation

Notebook virtualenv is easier to setup
README instructions do not need to be updated if/when package reqs change.

Definition of Done

[x] New api/python/notebooks/requirements.txt file contains all necessary Python pkgs for notebooks (now listed in api/python/notebooks/README.md)
[x] api/python/notebooks/README.md updated to reference requirements.txt and not explicit packages
[x] Cell Census Manual Build instructions (GDoc) updated to reference requirements.txt and not explicit packages

Tasks
Obvious per DoD, above

All tasks now done, closing!


Add CI pipeline for SCDF-Admin-YARN

As a developer, I'd like to create separate CI pipeline for YARN SPI, so I can run incremental builds and validate SCDF features.
Acceptance:

Bamboo infrastructure for YARN SPI is created
Unit / Integration tests are included in CI plan

Btw, I don't have rights to create anything under https://build.spring.io/browse/SCD.

@markpollack / @trevormarshall could help us here.

Added Sabby and Janne to each of those plans.


Camel Firebase Component

This component should allow to use Google Firebase (see https://firebase.google.com/docs/admin/setup ) from Camel. It contains an end point with a Producer and a Consumer. The producer can create and update values in Firebase. The consumer listens to child events and can consume add, change, remove, move and cancel operations.
You will find some integration unit tests in this first commit. But these tests will need to have a JSON file ('firebase-admin-connection.json') with the Firebase keys so that the tests can run. For security reasons I have removed these. Not quite sure how to solve that.
I am a newbie on this project, so it might well be that I am not complying to your standards. Please guide me where needed.

Thanks. I will review ASAP :-)

@davsclaus maybe I didn't notice something, can you take a look here?

I knew I was losing something. Thanks!

Thank you very much. I will change the implementation according to your suggestions and change the pull request.

@gilfernandes Please run also a mvn -Psourcecheck for codestyle fixes :-)

Ok, all requests have been dealt with. I request for your comments again. Many thanks.

I will review and merge soon.

It should be ok now. @davsclaus what do you think?

@oscerd yeah sure, it also needs to be added to apache-camel / parent pom so the new component is in the release kit.
And down the road we need a karaf feature for it too.

@davsclaus, I'm starting the merging process :-)

Many thanks !

@davsclaus in case I have time in the next weeks I could look into the creation of a Karaf feature. Could you send me some links with pointers to resources on how to create Karaf features?

@gilfernandes @oscerd can help you. If you are not using OSGi then maybe its better @oscerd do it instead as you need some OSGi experience to know what to do.

@davsclaus ok, I will leave it to oscerd. I have been using Karaf (as a user) as part of Talend ESB, by the way.

@gilfernandes you'll need to add a camel-firebase feature here:
https://github.com/apache/camel/blob/master/platforms/karaf/features/src/main/resources/features.xml
and then add an integration test in
itests/camel-itest-karaf/
like the other components
Let me know if you want help or you prefer I'll take care of this

I think that I will follow davsclaus's advice on this one. Next time I contribute a component, I will try to add the Karaf feature myself.

Thanks the PR has been merged. Can you close the PR?

I'll take care of the Karaf feature

Many thanks to both of you.

Sorry but the firebase-admin doesn't have an ASF compliant license. We cannot accept components using library with a commercial license. Firebase-admin is not on github.
I have to revert the commit and remove the component. You can open the PR to camel-extras, where there are components of this kind.
Sorry we didn't notice this problem in your PR. I found it while I was looking for firebase-admin.

Ok, thank you for letting me know. I will follow your suggestion and open a PR to camel-extras.

Sorry for the oversight.

No problem. Licenses are tricky. I will open the pull request in the next days. Just for confirmation: is this the repository you meant: https://github.com/camel-extra/camel-extra ?

Yes, the repo is that one.

Many thanks

Yeah this is really a shame as firebase is a popular on the cloud / mobile world. Would have loved if googled allowed an open and free license for client developers to build against their Java or other language clients.
However camel-extra can maybe host it, not 100% sure when there is these commercial restrictions from google however.
An alternative is always to create your own github organization and put the code there. We are happy to link to that github url from the Camel website.

It seems that the component will be adopted by the Camel extras project: https://github.com/camel-extra/camel-extra/tree/master/components


df: Event types

Project Description
A large part of DFFML is the concept of a DataFlow.
Chance orchestrator context run so that it yields three objects, context, event
type, results.
Currently we have a lot of code that looks like this:
for ctx, results in run(dataflow, [... inputs ...]):
    print("The results of", ctx, "are", results)

When this project is over, those for loops will look like this:
for ctx, event, data in run(dataflow, [... inputs ...]):
    if event == EventType.OUTPUT:
        print("The results of", ctx, "are", data)
    elif event == EventType.INPUT:
        print("An input entered network for context", ctx, ":", data)

The way things currently work is that the run function yields when the
context is finished running. It yields the context that was running and the
results.
We need to add another part to a data flow so we can yield Inputs. The event
type would be INPUT, and in the DataFlow we should add a section for events.
In the events section for INPUT events we could specify when an
input should be yielded. We use the inputs section to specify which transitions
between operations should be yielded.
This will enable us to do things like running a DataFlow and not only yielding
the results, but data that's moving through the network as the DataFlow is
running. This allows developers to build applications that show the progress of
a DataFlow as it's running.
Skills

Python
Refactoring a large codebase
Asyncio knowledge would be very helpful here

Difficulty
Intermediate/Hard
Related Readings

https://intel.github.io/dffml/master/contributing/gsoc/2021/index.html

Getting Started

Read the contributing guidelines

https://intel.github.io/dffml/master/contributing/index.html

Go through the quickstart

https://intel.github.io/dffml/master/quickstart/model.html

Go through the data flow related docs and tutorials

https://intel.github.io/dffml/master/tutorials/dataflows/index.html
https://intel.github.io/dffml/master/examples/integration.html
https://intel.github.io/dffml/master/examples/shouldi.html
https://intel.github.io/dffml/master/examples/dataflows.html
https://intel.github.io/dffml/master/examples/mnist.html
https://intel.github.io/dffml/master/examples/flower17/flower17.html
https://intel.github.io/dffml/master/examples/webhook/index.html

Read about what data flows are and how they work

https://intel.github.io/dffml/master/concepts/index.html#dataflows
https://intel.github.io/dffml/master/concepts/dataflow.html

Come up with a basic example where the user will see inputs moving through the
network.

Make it simple and include a few operations.
Get the DataFlow running.

Look at the code in dffml/df/memory.py and understand how it relates to the
docs covering DataFlows conceptually.
Plan out what all needs to change within dffml/df/memory.py and the other
code and examples that would change as a result.

Potential Mentors

John Andersen
Saksham Arora

Tracking and Discussion
This project is related to the following issues. Please discuss and ask
questions in the issue comments. Please also ping mentors on
Gitter when you post on the following
issues so that they are sure to see that you've commented.

https://github.com/intel/dffml/issues/919

This will probably require extensive changes since anywhere where OrchestratorContext.run is being calling in an async for loop will need to be modified. If you want to do this please let me know we can go over it. I'd recommend that someone with experiance with dataflows do this. If you don't have experiance a good place to start is by looking over the dataflows tutorials and the examples involving dataflows, and asking questions to make sure you understand what's going on there. These documents may also be helpful for understanding dataflows conceptually:

https://intel.github.io/dffml/master/concepts/index.html#dataflows
https://intel.github.io/dffml/master/concepts/dataflow.html

We need to make sure events are propagated from subflows too

We need to make sure events are propagated from subflows too

We also need to make sure that we have some way of marking Inputs or events as security sensitive. For example the value of a private key should never be sent in the event log, unless explicitly requested by the user.

We also need to make sure that we have some way of marking Inputs or events as security sensitive. For example the value of a private key should never be sent in the event log, unless explicitly requested by the user.

We might be able to make this happen via the multi context wait on run()

Related: 2022-11-16 @pdxjohnny Engineering Logs
When runnning dataflow ctx, results. just turn ctx into event effectivly by making the return value an Event class which functions as a proxy to the context and also includes it's own data, the context is on data within it.


Update 2022-may.md

Hi Aidan,
Could you have a look at the changes and then approve them?
Carol-Anne


error compiling SCSS with postcss-custom-properties (NodeJS/Nuxt)

Framework Version: V3.0.0
Flavor used: default
Operating System/Browser: all
Code to reproduce: n/a
Screenshots: n/a
Bug description: Warning when compile SCSS with postcss-custom-properties (NodeJS/Nuxt)

mixin code are ignored, and primary/secondary/tertiary alternative don't work
 WARNING  Compiled with 26 warnings                                                                                17:28:57

 warning  in /srv/www/camarilla/site/assets/mini-cama.scss

(Emitted value instead of an instance of Error) postcss-custom-properties: /srv/www/node/dev/node_modules/mini.css/src/mini/_contextual_mixins.scss:11:6: Custom property ignored: not scoped to the top-level :root element (mark.secondary { ... --mark-back-color: ... })

 @ /srv/www/camarilla/site/assets/mini-cama.scss 4:14-240 13:3-17:5 14:22-248
 @ ./.nuxt/App.js
 @ ./.nuxt/index.js
 @ ./.nuxt/client.js
 @ multi webpack-hot-middleware/client?name=client&reload=true&timeout=30000&path=/dev/__webpack_hmr ./.nuxt/client.js

 warning  in /srv/www/camarilla/site/assets/mini-cama.scss

(Emitted value instead of an instance of Error) postcss-custom-properties: /srv/www/node/dev/node_modules/mini.css/src/mini/_contextual_mixins.scss:11:6: Custom property ignored: not scoped to the top-level :root element (mark.tertiary { ... --mark-back-color: ... })

 @ /srv/www/camarilla/site/assets/mini-cama.scss 4:14-240 13:3-17:5 14:22-248
 @ ./.nuxt/App.js
 @ ./.nuxt/index.js
 @ ./.nuxt/client.js
 @ multi webpack-hot-middleware/client?name=client&reload=true&timeout=30000&path=/dev/__webpack_hmr ./.nuxt/client.js

 warning  in /srv/www/camarilla/site/assets/mini-cama.scss

(Emitted value instead of an instance of Error) postcss-custom-properties: /srv/www/node/dev/node_modules/mini.css/src/mini/_input_control_mixins.scss:16:10: Custom property ignored: not scoped to the top-level :root element (button.inverse,[type="button"].inverse,[type="submit"].inverse,[type="reset"].inverse,.button.inverse,[role="button"].inverse { ... --button-back-color: ... })

 @ /srv/www/camarilla/site/assets/mini-cama.scss 4:14-240 13:3-17:5 14:22-248
 @ ./.nuxt/App.js
 @ ./.nuxt/index.js
 @ ./.nuxt/client.js
 @ multi webpack-hot-middleware/client?name=client&reload=true&timeout=30000&path=/dev/__webpack_hmr ./.nuxt/client.js

(...)

after few test, error come from mixin files. for exemple :
    @if $mark-alt-back-color != $mark-back-color {
      #{$mark-back-color-var}: $mark-alt-back-color;
    }

replace #{$mark-back-color-var} by background-color :
    @if $mark-alt-back-color != $mark-back-color {
      background-color: $mark-alt-back-color;
    }

changes in 4 files :
4 lines in progress_mixins :
@mixin make-progress-alt-color ($progress-alt-name, $progress-alt-fore-color : $progress-fore-color,
  $progress-alt-back-color : $progress-back-color) {
  progress.#{$progress-alt-name} {
    @if $progress-alt-fore-color != $progress-fore-color{
      // bug : #{$progress-fore-color-var}: $progress-alt-fore-color;
      color: $progress-alt-fore-color;
    }
    @if $progress-alt-back-color != $progress-back-color {
      // bug : #{$progress-back-color-var}: $progress-alt-back-color;
      background-color: $progress-alt-back-color;
    }
  }
}

@mixin make-spinner-donut-alt-color ($spinner-donut-alt-name, $spinner-donut-alt-fore-color : $spinner-donut-fore-color,
  $spinner-donut-alt-back-color : $spinner-donut-back-color) {
  .#{$spinner-donut-name}.#{$spinner-donut-alt-name} {
    @if $spinner-donut-alt-fore-color != $spinner-donut-fore-color{
      // bug : #{$spinner-donut-fore-color-var}: $spinner-donut-alt-fore-color;
      color: $spinner-donut-alt-fore-color;
    }
    @if $spinner-donut-alt-back-color != $spinner-donut-back-color {
      // bug : #{$spinner-donut-back-color-var}: $spinner-donut-alt-back-color;
      background-color: $spinner-donut-alt-back-color;
    }
  }
}

5 lines in layout_mixins :
@mixin make-card-alt-color ($card-alt-name, $card-alt-back-color : $card-back-color,
  $card-alt-fore-color : $card-fore-color, $card-alt-border-color : $card-border-color) {
  .#{$card-name}.#{$card-alt-name} {
    @if $card-alt-back-color != $card-back-color {
      // bug : #{$card-back-color-var}: $card-alt-back-color;
      background-color: $card-alt-back-color;
    }
    @if $card-alt-fore-color != $card-fore-color {
      // bug : #{$card-fore-color-var}: $card-alt-fore-color;
      color: $card-alt-fore-color;
    }
    @if $card-alt-border-color != $card-border-color {
      // bug : #{$card-border-color-var}: $card-alt-border-color;
      border-color: $card-alt-border-color;
    }
  }
}

@mixin make-card-section-alt-color ($card-section-alt-name, $card-section-alt-back-color : $card-back-color,
  $card-section-alt-fore-color : $card-fore-color) {
  .#{$card-name} > .#{$card-section-name}.#{$card-section-alt-name} {
    @if $card-section-alt-back-color != $card-back-color {
      // bug : #{$card-back-color-var}: $card-section-alt-back-color;
      background-color: $card-section-alt-back-color;
    }
    @if $card-section-alt-fore-color != $card-fore-color {
      // bug : #{$card-fore-color-var}: $card-section-alt-fore-color;
      color: $card-section-alt-fore-color;
    }
  }
}

5 lines in input_control_mixins :
@mixin make-button-alt-color ($button-alt-name, $button-alt-back-color : $button-back-color,
  $button-alt-hover-back-color : $button-hover-back-color, $button-alt-fore-color : $button-fore-color,
  $button-alt-border-color : $button-border-color, $button-alt-hover-border-color : $button-hover-border-color) {
    button, [type="button"], [type="submit"], [type="reset"], .#{$button-class-name}, [role="button"] {
      &.#{$button-alt-name} {
        @if $button-alt-back-color != $button-back-color {
          // bug : #{$button-back-color-var}: $button-alt-back-color;
          background-color: $button-alt-back-color;
        }
        @if $button-alt-fore-color != $button-fore-color{
          // bug : #{$button-fore-color-var}: $button-alt-fore-color;
          color: $button-alt-fore-color;
        }
        @if $button-alt-border-color != $button-border-color{
          // bug : #{$button-border-color-var}: $button-alt-border-color;
          border-color: $button-alt-border-color;
        }
        &:hover, &:focus {
          @if $button-alt-hover-back-color != $button-hover-back-color{
            // bug : #{$button-hover-back-color-var}: $button-alt-hover-back-color;
            background-color: $button-alt-hover-back-color;
          }
          @if $button-alt-hover-border-color != $button-hover-border-color{
            // bug : #{$button-hover-border-color-var}: $button-alt-hover-border-color;
            border-color: $button-alt-hover-border-color;
          }
        }
      }
    }
}

2 lines in contextual_mixins :
@mixin make-mark-alt-color ($mark-alt-name, $mark-alt-back-color : $mark-back-color,
  $mark-alt-fore-color : $mark-fore-color) {
  mark.#{$mark-alt-name} {
    @if $mark-alt-back-color != $mark-back-color {
      // bug : #{$mark-back-color-var}: $mark-alt-back-color;
      background-color: $mark-alt-back-color;
    }
    @if $mark-alt-fore-color != $mark-fore-color{
      // bug : #{$mark-fore-color-var}: $mark-alt-fore-color;
      color: $mark-alt-fore-color;
    }
  }
}

With this few changes, all working correctly. I don't know if it the best way to correct this.
Thanks

This is not the correct way to fix this as these are CSS variables that are being overwritten instead of CSS properties. I will look into this, though, see if there is a solution.

hi,
Your mixins are never include into another css element. It's just for make element sub-class alternative.
In _contextual_mixins for example, mark alternative "make-mark-alt-size" add a new mark sub-class for overwrite padding and border-radius of standard mark properties.
I think you can do same thing for make-mark-alt-color : just overwrite color and background-color (if necessary). It's more simple than change variable (and don't work for all people).
Custom properties (with double-dash) can only defined in :root element
In your actual code, you change mark-back-color-var variable :
#{$mark-back-color-var}: $mark-alt-back-color;
it' same like :
--mark-back-color: $mark-alt-back-color;
but isn't in a :root element.
--mark-back-color is only used in mark background properties (in _contextual.scss)
I don't understand why you want to change this mark property through variable, because mixin is for add a sub-class properties (ie mark.primary).
In final, css after compiling must be like :
mark { (...) background-color: #xxx (...) } /* with #xxx defined in $mark-back-color /
mark.primary { background-color: #yyy } / with #yyy defined in make-mark-alt-color call */
and my solution do this ^_^
Thanks for your job.
ps : few changes for _progress_mixins (background-color error and add for webkit and mozilla specific code) :
@mixin make-progress-alt-color ($progress-alt-name, $progress-alt-fore-color : $progress-fore-color,
  $progress-alt-back-color : $progress-back-color) {
  progress.#{$progress-alt-name} {
    @if $progress-alt-fore-color != $progress-fore-color{
      // bug : #{$progress-fore-color-var}: $progress-alt-fore-color;
      color: $progress-alt-fore-color;
      // Foreground color on webkit browsers
      &::-webkit-progress-value {
        background: $progress-alt-fore-color;
      }
      // Foreground color on Firefox
      &::-moz-progress-bar {
        background: $progress-alt-fore-color;
      }
    }
    @if $progress-alt-back-color != $progress-back-color {
      // bug : #{$progress-back-color-var}: $progress-alt-back-color;
      background: $progress-alt-back-color;
      // Background color on webkit browser
      &::-webkit-progress-bar {
        background: $progress-alt-back-color;
      }
    }
  }
}

CSS variables cascade, meaning an element created via the mixin does change its properties and the ones of its children. CSS variables are one of the key features of V3, therefore mixins absolutely must utilize them, isntead of hard-coding properties.
node-sass compiles this entirely fine and has been supporting this for a long time. Also, having tested this with a few online tools, it works alright, no errors so far. Therefore, this is a tool-specific or environment-specific problem. I'll try to figure it out, but the variables have to be compiled like that.

Hi,
With last framework update, all working perfectly.
Thanks for your job.
You can see your css framework in action here : https://camarilla-fr.com


[web] [canvaskit] Cannot find native JavaScript type (CanvasKit) for type check

Hi, triaging this issue
I noticed that running the base counter app with canvaskit throws these errors in the logs
logs
 nevercode@Nevercodes-Air  ~/Desktop/projects/master  flutter_master run -d chrome --dart-define=FLUTTER_WEB_USE_SKIA=true                                 ✔  2956  10:53:28
Launching lib/main.dart on Chrome in debug mode...
Syncing files to device Chrome...
14,438ms (!)
Debug service listening on ws://<IP_ADDRESS>:62707/6W4jrPGNB1w=

Warning: Flutter's support for web development is not stable yet and hasn't
been thoroughly tested in production environments.
For more information see https://flutter.dev/web

🔥  To hot restart changes while running, press "r" or "R".
For a more detailed help message, press "h". To quit, press "q".
Cannot find native JavaScript type (CanvasKit) for type check
Cannot find native JavaScript type (SkParagraph) for type check
Cannot find native JavaScript type (SkParagraph) for type check
Cannot find native JavaScript type (SkParagraph) for type check
Cannot find native JavaScript type (SkParagraph) for type check
Cannot find native JavaScript type (SkParagraph) for type check
Cannot find native JavaScript type (SkMaskFilter) for type check
Cannot find native JavaScript type (SkParagraph) for type check

doctor
[✓] Flutter (Channel master, 1.21.0-6.0.pre.90, on Mac OS X 10.15.5 19F101, locale en-GB)
    • Flutter version 1.21.0-6.0.pre.90 at /Users/nevercode/development/flutter_master
    • Framework revision 531ee9452a (2 hours ago), 2020-07-29 02:26:03 -0400
    • Engine revision 1ba310017c
    • Dart version 2.10.0 (build 2.10.0-1.0.dev 24c7666def)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/nevercode/Library/Android/sdk
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.2

[✓] Connected device (3 available)
    • macOS (desktop)  • macos      • darwin-x64     • Mac OS X 10.15.5 19F101
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome 84.0.4147.105

• No issues found!

Thank you

Hi @hterkelsen
the situation has worsened since I opened this issue
I'm closing this one in favor of this https://github.com/flutter/flutter/issues/63370
thank you


Remove GL chatsan

About the PR
Removes the "GL" -> "Good luck" global chat sanitization.
Adds a "GL" -> "Boomstick Launcher" to xeno chat sanitization.
Why / Balance
GL is a fairly common way to refer to grenade launchers in military settings, to the extent that I feel like it's alright to allow it.
Figured replacing GL for xenonids is a safe bet as well, considering people may get used to it being in reference to grenade launchers.
Media

Requirements

[X] I have read and I am following the Pull Request Guidelines. I understand that not doing so may get my pr closed at maintainer’s discretion
[X] I have added screenshots/videos to this PR showcasing its changes ingame.

Changelog
(Don't think it needs one.)

DAMN IT

DAMN IT

Whoops- did I do something wrong?


Switch from cheap-module-source-map eval-source-map

Fixes issue
Switches webpack's devtool mode from cheap-module-source-map to source-map so that the mappings include column positions.
This enables variable and scope mappings in Firefox, which makes it easier to debug applications built with webpack and babel. This should fix the this mapping issue. It will also simplify the scopes pane by showing the "original" scopes and variables. It will also enable in-line code preview and console support when evaluating "original" expressions.
The incremental build times were 25% slower for source-map vs cheap-module-source-maps (500ms vs 400ms) on a simple app. I believe that webpack's cache means that these numbers would not be that different on a larger app.
Both modes had equivalent breakpoint support on page load and while the app was running.
Chrome

Firefox

If such an expensive option is chosen, source maps should probably be mad optional in dev as they already are in prod https://github.com/facebook/create-react-app/blob/3a51fde1bdd1841c156d14bfc08c8046f303b9ba/packages/react-scripts/config/webpack.config.prod.js#L98
I personally always disable source maps in the browser anyway as I've yet to see a case where they are more helpful than problematic.

Good point @loganfsmyth. I can look into eval-source-map when i tested it earlier, the mappings and breakpoints worked, so it was just a question of performance.

I just tested several of the webpack devtool modes with the debugger.html format:
source-map: average compile times 1853.48 over 8 runs
inline-source-map: average compile times 1657.42 over 7 runs
eval-source-map: average compile times 604.69 over 13 runs
inline-cheap-source-map: average compile times 683.41 over 7 runs
cheap-module-source-map: average compile times 712.37 over 7 runs
It looks like, there were two sets of times (1.5 sec) (600 ms). eval-source-map is the fastest option that also includes column breakpoint information, which is needed for variable and scope mapping.

Can you make sure the error overlay still works please?

@Timer I'm not sure @jasonLaster is familiar with what error overlay is

That's fair, @jasonLaster: if you edit App.js and add some code that causes a runtime exception, e.g.:
          <img
            onClick={() => {
              document.body()
            }}
            src={logo}
            className="App-logo"
            alt="logo"
          />

Running the dev server and triggering this exception should cause an overlay to appear:

If this doesn't work, can you please provide more details on where the sourcemaps are located and how to retrieve them?

Nice catch. Looks like it is missed

The travis failure looks like a node 10 timeout. The others pass

I think we'll need to update this logic:
https://github.com/facebook/create-react-app/blob/master/packages/react-error-overlay/src/utils/getSourceMap.js#L77-L96
but it shouldn't be a big deal... we do similar things on the debugger side to get the maps :)

I restarted the one job. Unfortunately, we don't have tests that make sure the error overlay is working so Travis won't catch this.
This file probably needs adjusted: https://github.com/facebook/create-react-app/blob/next/packages/react-error-overlay/src/utils/getSourceMap.js

I'm running into a couple of issues getting the data for the error overlay:
A bit of context, with cheap-module-source-map the error stack locations are bundle.js with  eval-source-map the locations are webpack original locations [1].

This has a couple of interesting effects

we can no longer use the same approach: fetch the bundle given the original location, find the source map url, and load the source map for the application.

if we set a better source map root, we can show a call stack based on the error stack. We could not get the surrounding lines though because we would not have the source map or the original source text.

we might be able to have webpack dev server host each "built" file. This means that localhost:3000/static/js/src/App.js would resolve, which would let us fetch the source text and get the map, which would give us the surrounding text.

As an aside, I wish that there were a devtools extension api that would let you from content just get this data. We have it within the devtools client and would be happy to share :)
[1] eval-source-map each module in the bundle is included in an eval, which has its own sourceURL.
"use strict";
eval("<source contents>;n//# //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJz\n//#sourceURL=webpack-internal:///...")

I'm running into a couple of issues getting the data for the error overlay:
A bit of context, with cheap-module-source-map the error stack locations are bundle.js with  eval-source-map the locations are webpack original locations [1].

This has a couple of interesting effects

we can no longer use the same approach: fetch the bundle given the original location, find the source map url, and load the source map for the application.

if we set a better source map root, we can show a call stack based on the error stack. We could not get the surrounding lines though because we would not have the source map or the original source text.

we might be able to have webpack dev server host each "built" file. This means that localhost:3000/static/js/src/App.js would resolve, which would let us fetch the source text and get the map, which would give us the surrounding text.

As an aside, I wish that there were a devtools extension api that would let you from content just get this data. We have it within the devtools client and would be happy to share :)
[1] eval-source-map each module in the bundle is included in an eval, which has its own sourceURL.
"use strict";
eval("<source contents>;n//# //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJz\n//#sourceURL=webpack-internal:///...")

@Timer and I paired on a solution, which lets us use eval-based sourcemaps and continues to support the error overlay.
There are a couple of benefits with eval-based sourcemaps

They're faster to re-compile because each module has its own sourcemap.
The sourcemap has column level mappings, which lets firefox show original scopes and variables

The significant change, is that there is no longer a single bundle.js map file, which the error overlay can use to map the error stack. The PR introduces a new webpack dev middleware, which lets the error overlay fetch the generated source and retrieve the sourcemap as it did before.
As a side note, the error overlay will not support errors that occur during render methods as bundle.js is hard coded there. This use case is already broken when webpack has uses chunks. The new middleware, is a good way of fixing the case with chunking as well.
One potential risk with this approach is that it does rely on a couple of implementation details with webpack and the dev-server. I think eventually it would be nice if the middleware were maintained from within the webpack project as it is likely useful for other projects that use eval-sourcemap and might want sourcemap diagnostics from within the runtime.

hmm, i'm not sure why simple can't find the new module. simple passes locally for me.


refactor(parser): rename function

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#4564  👈
#4563
#4562
#4561
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite


[FEATURE]: Add script to install ACC

Describe the solution you'd like
Add scripts to install and uninstall the connectivity client.
Describe alternatives you've considered
N/A
Additional context
Feature suggested in internal discussions.

/link:23145


Replace experimentalObjectRestSpread with ecmaVersion: 2018

https://github.com/tc39/proposal-object-rest-spread has become a part
of the ECMAScript standard as of version 2018 (also known as ECMAScript
9).
experimentalObjectRestSpread will be removed in the future from eslint.
This resolves the deprecation message displayed by current eslint.

(node:43587) [ESLINT_LEGACY_OBJECT_REST_SPREAD] DeprecationWarning: The 'parserOptions.ecmaFeatures.experimentalObjectRestSpread' option is deprecated. Use 'parserOptions.ecmaVersion' instead. (found in "scratch/es6")

The tests fail on travis because they are testing on Node 4. And Eslint 5 does not support Node that far back.

@mzgoddard Would you mind bumping node_js to 10 in .travis.yml? https://github.com/LLK/eslint-config-scratch/blob/master/.travis.yml#L9

Thanks @mzgoddard!

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


NavX support for Strongback

Our team uses the NavX MXP device. It consists of a suite of sensors including a 3 axis gyroscope, a 3 axis accelerometer, a magnetometer, and an altimeter. It has its own library that makes getting this data from the sensor easy. I think the library also allows for some fancy calculations for distance traveled and some other stuff.
I would like to add support for this sensor to Strongback. However, I'm not sure of the best way to do this. I think the NavX is popular enough that it should be supported by Strongback (complete with mock sensor for unit tests), but not popular enough to force all Strongback users to download the library for it. Also, I don't know whether the best idea is to consider the NavX as separate sensors for the accelerometer and the gyroscope or to consider it as its own class with fields for the individual sensors. The link above has some examples of how the library is used if that helps in making the decision.
I would be glad to submit a pull request with support for the NavX if someone would tell me the best method of adding it to fit with Strongback's system.

Our team uses the NavX MXP device. It consists of a suite of sensors including a 3 axis gyroscope, a 3 axis accelerometer, a magnetometer, and an altimeter.

I have no experience with this device, so the big question you have to answer is: what should the API look like for this device? Is it as simple as a composition of a 3-axis gyroscope, 3-axis accelerometer, compass, and distance sensor (altimeter)? If so, then we probably just want to create an interface that has getter methods for the other existing components. Not sure what that might be named, or where it should live, but I'm fine with proceeding (at least for now) with it in the org.strongback.components package.
Then, an implementation of this new interface needs to be added to the hardware package, and it could be named HardwareNavX and should implement the new interface. Then, a new factory method needs to be added to the Hardware class.

It has its own library that makes getting this data from the sensor easy.

That's okay. The library appears to be licensed under MIT open source license, so that means we can distribute it. It would be easier for Strongback to include the library so that it works if people want to use it, but if they don't they can always remove it (if they really care about the small space).
For now, the JARs and source JARs should be included in the libs directory of our codebase. We may want to eventually change the build to be able to download the libraries from the official location, but we can worry about that later.

I think the library also allows for some fancy calculations for distance traveled and some other stuff.

Hopefully the interface for this device remains pretty simple, and any other functionality (like distance travelled) should be exposed through existing components (e.g., DistanceSensor).
This should be a pretty exciting addition, but it may take multiple iterations to settle on something that is generic and that reuses much of the existing API. Either way, how about trying to fit it in as I described above, submitting a pull request, and then we'll review it and see where it needs to go?

@plato2000 any progress on a contribution to add support for the NavX?

I would be interested in implementing this in Strongback if no progress has been made. @plato2000 ?

@AGausmann Unfortunately, I have not had time with school and everything to make progress on this. I probably won't have time before the Christmas break just before the season. I have not made any progress on this yet. Feel free to implement it yourself if you can start by then.

Yep, our team has one. I'll get started then

I have a pull request (targeted for the Strongback 2017.1.0 version) that isn't quite ready that will add 3rd party libraries for CTRE TalonSRX library and the navX-MXP library. The latter version that is compatible with the 2017 WPILib for Java will be officially released on 1/6/2016, so the initial version of Strongback 2017.1.0 will add both libraries and the new Strongback CLI will properly install them into the WPILib's user library directory. This work should build upon that work.

The master branch now includes the navX-MXP library (see #88), the build already includes it in the artifacts, and the Strongback CLI will automatically install the library as a WPILib user library. All that remains is to add the APIs to Strongback to make use of the navX-MXP library.


[Store] UI issue under Applications tab

As shown in the screenshot below, there is an issue when displaying the name of the application.

Duplicate of https://github.com/wso2/product-apim/issues/6683


Configure task action should reveal the newly added task and position the cursor there

Testing https://github.com/microsoft/vscode/issues/78102
At the following step

This will open tasks.json and add that task to it. Set some extra properties on the task, such as a presentation property.

tasks.json file is opened and task is added. But it did not reveal the added task and I was wondering where and what task got added.
It would be good if the newly added task is revealed and the cursor is positioned there

Verified that the added task is selected and that the caret is placed at the end of the selection.


[MBL-1616] Remove Shipping Dropdown From Add-Ons

📲 What
A description of the change.
🤔 Why
Some background context on why the change is needed.
🛠 How
More in-depth discussion of the change or implementation.
👀 See
Trello, screenshots, external resources?

Before 🐛
After 🦋

♿ Accessibility

[ ] Tap targets use minimum of 44x44 pts dimensions
[ ] Works with VoiceOver
[ ] Supports Dynamic Type

🏎 Performance

[ ] Optimized Blended Layers (screenshots)

✅ Acceptance criteria

[ ] Steps to test this feature
[ ] Environment to test on
[ ] Issues to look out for

⏰ TODO

[ ] Got planned refactors to come
[ ] Will add more tests
[ ] Need feedback on a design

          1 Warning

:warning:
Big PR

  Generated by :no_entry_sign: Danger

          1 Warning

:warning:
Big PR

  Generated by :no_entry_sign: Danger

          1 Warning

:warning:
Big PR

  Generated by :no_entry_sign: Danger


No unused variables

In order to reduce bugs
And increase readability of the code
We want to avoid defining variables that are not used

The tests are currently undergoing a hefty refactor, and these changes would actually create quite a few conflicts. I'm going to close for now, and we can address the rest of these after we have eslint setup.

I see... alright I'll keep a look out for this big merge and hold back on the contributions for now. Feel free to ping me when you are open to changes


i get HID <= 6982 fail to loading

i use the ledger nano s, system ubuntu 18.04.
i use mcu_1.6_over_0.8.hex(this file come from https://media.readthedocs.org/pdf/ledger/latest/ledger.pdf ) to loading, it's ok.
but use these file is fail to loading,what happen?
////////////////////////////////////////////error msg///////////////////////////////////////////////////////////////////////////////
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/home/jason/nanos-nonsecure-firmware-1.1/build/stm32f042_nanos_seproxyhal/ledgerblue/loadMCU.py", line 58, in
loader.run(args.bootAddr)
File "ledgerblue/hexLoader.py", line 514, in run
self.boot(bootoffset, signature)
File "ledgerblue/hexLoader.py", line 326, in boot
self.exchange(self.cla, 0x00, 0x00, 0x00, data)
File "ledgerblue/hexLoader.py", line 202, in exchange
return self.scpUnwrap(bytes(self.card.exchange(apdu)))
File "ledgerblue/comm.py", line 133, in exchange
raise CommException("Invalid status %04x (%s)" % (sw, possibleCause), sw, response)
ledgerblue.commException.CommException: Exception : Invalid status 6982 (Have you uninstalled the existing CA with resetCustomCA first?)

I have not tried this; but the software seems to be complaining about a custom CA (certificate authority) that you added (perhaps to recognize your own firmware certificate).
Apparently, you need to call "resetCustomCA" to remove the CA.
You can find how to do that in the PDF you linked.


Burner feed publishing is failing sometimes

For example see build. This happened a few other times in the last month but I cannot find the other builds now.
The nuget command failed with exit code(1) and error(System.AggregateException: One or more errors occurred. (Response status code does not indicate success: 403 (Forbidden - User 'd4915092-6049-4d25-9e81-7a43c45ca368' lacks permission to complete this action. You need to have 'AddPackage'. (DevOps Activity ID: C30DA526-5859-47F8-A21B-E1A119A3F376)).) ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 403 (Forbidden - User 'd4915092-6049-4d25-9e81-7a43c45ca368' lacks permission to complete this action. You need to have 'AddPackage'. (DevOps Activity ID: C30DA526-5859-47F8-A21B-E1A119A3F376)).

I suspect either the burner feed creation is not completing in time or is failing to setup the permissions correctly for us to be able to publish.
Aside from the issue, which we should try to fix, we should reconsider if we even want to publish to a burner feed for our nightly builds as they immediately get cleaned up anyway so no one is even using them.

I've followed up with the Artifacts team to see if they know what is going on here. I had a quick browse through the code for the service and permissions appear to get applied synchronously to the feed when it is created so if setting permissions was going to fail I would expect it to fail when creating the feed, not publishing the package.

Same today https://dev.azure.com/azure-sdk/internal/_build/results?buildId=274528&view=results

Thanks for letting me know. I reached out to the Artifacts team and they let us know that the application of permissions isn't synchronous with creation of the feed. So there is a chance for a bit of a race condition here.
The most reliable thing to do here is to add retries to package publishing, unfortunately tasks within an Azure Pipeline are retryable (only at the job level). As a quick fix I think we'll put a short time delay in which should solve the problem for us, but longer term we'll need to do one of two things:

Make the job retryable (will still fail, but you just retry the job).
Swap from using the NuGetCommand task to invoking NuGet directly (preferred).

I've deployed a quick fix to this (added a 15 second delay after burner feed creation). I'm going to keep this issue open because that is just temporary. If it proves to work then we'll need to move to a retry model if possible rather than just a dumb delay ... but 15 seconds should be enough given that this appears to be transient.

Removed this stage completely.


Uncaught TypeError: Cannot read property '0' of undefined

I really love this idea, was always hoping I could get it for years, does it require markdown-document grammar?
[Enter steps to reproduce below:]

Open any .md markdown file. (Using default Github Markdown format)

Atom Version: 1.8.0
System: Mac OS X 10.11.5
Thrown From: markdown-document package, v0.1.0
Stack Trace
Uncaught TypeError: Cannot read property '0' of undefined
At /Users/mliquori/Dropbox/config/atom/packages/markdown-document/lib/markdown-document-view.coffee:105

TypeError: Cannot read property '0' of undefined
    at /Users/mliquori/Dropbox/config/atom/packages/markdown-document/lib/markdown-document-view.coffee:105:52
    at Array.forEach (native)
    at MarkdownDocumentView.mdOutline (/Users/mliquori/Dropbox/config/atom/packages/markdown-document/lib/markdown-document-view.coffee:85:19)
    at /Users/mliquori/Dropbox/config/atom/packages/markdown-document/lib/markdown-document-view.coffee:76:9
    at tryToString (fs.js:414:3)
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:401:12)

Commands
     -0:50.4.0 command-palette:toggle (atom-text-editor.editor.is-focused)
     -0:47.8.0 editor:consolidate-selections (atom-text-editor.editor.mini.is-focused)
     -0:47.8.0 core:cancel (atom-text-editor.editor.mini.is-focused)
  2x -0:43.2.0 markdown-document:toggle (atom-text-editor.editor.is-focused)
     -0:12 pane:reopen-closed-item (ul.list-inline.tab-bar.inset-panel)
     -0:10.4.0 editor:consolidate-selections (atom-text-editor.editor.is-focused)
     -0:10.4.0 core:cancel (atom-text-editor.editor.is-focused)
     -0:08.5.0 command-palette:toggle (atom-text-editor.editor.is-focused)
     -0:07.0 editor:consolidate-selections (atom-text-editor.editor.mini.is-focused)
     -0:07.0 core:cancel (atom-text-editor.editor.mini.is-focused)
     -0:05.7.0 core:undo (atom-text-editor.editor.is-focused)
     -0:05.3.0 fuzzy-finder:toggle-file-finder (atom-text-editor.editor.is-focused)
  4x -0:03.2.0 core:backspace (atom-text-editor.editor.mini.is-focused)
     -0:01.3.0 core:confirm (atom-text-editor.editor.mini.is-focused)

Config
{
  "core": {
    "audioBeep": false,
    "automaticallyUpdate": false,
    "disabledPackages": [
      "path-hyperclick",
      "file-hyperclick",
      "navigation-history",
      "split-diff",
      "tree-view-autoresize",
      "symbol-gen",
      "semanticolor",
      "fonts",
      "pigments",
      "rnn-writer",
      "language-javascript-semantic",
      "language-javascript-jsx",
      "git-diff-details",
      "language-javascript-better",
      "webbox-color",
      "atom-beautify",
      "tree-view-git-branch",
      "tree-view-git-status",
      "save-session",
      "js-refactor",
      "refactor",
      "git-history",
      "unsaved-changes",
      "Tern",
      "language-markdown",
      "markdown-preview",
      "autocomplete-ctags",
      "atom-ctags",
      "ctags-status"
    ],
    "packagesWithKeymapsDisabled": [
      "tree-view-filter",
      "bookmarks",
      "merge-conflicts"
    ],
    "projectHome": "/Users/mliquori/Dropbox/tech/projects",
    "themes": [
      "one-dark-ui",
      "atom-material-syntax"
    ]
  }
}

Installed Packages
# User
Sublime-Style-Column-Selection, v1.5.1
atom-material-syntax, v0.4.6
atom-ternjs, v0.14.1
autoclose-html, v0.23.0
autocomplete-modules, v1.5.1
block-travel, v1.0.4
change-case, v0.6.0
color-picker, v2.1.1
docblockr, v0.7.3
editorconfig, v1.4.1
file-icons, v1.7.14
goto-last-edit, v0.3.2
highlight-selected, v0.11.2
hyperclick, v0.0.36
hyperclick-markdown, v0.1.3
indent-guide-improved, v1.4.8
js-hyperclick, v1.4.2
language-babel, v2.27.1
language-diff, v0.4.0
last-cursor-position, v0.9.0
line-diff-details, v1.3.5
linter, v1.11.8
linter-eslint, v7.2.2
local-history, v3.3.0
markdown-assistant, v0.2.0
markdown-document, v0.1.0
markdown-mindmap, v0.2.4
markdown-preview-plus, v2.4.0
merge-conflicts, v1.4.4
minimap, v4.24.4
minimap-cursorline, v0.2.0
project-manager, v2.9.7
recent-files-fuzzy-finder, v0.2.4
remember-file-positions, v0.2.2
tree-view-filter, v0.4.1

# Dev
No dev packages

Since the error's on line 105 and not earlier, I suspect its a dependency issue.
Can you go to  /Users/mliquori/Dropbox/config/atom/packages/markdown-document/node_modules/markdown-toc/package.json and scroll all the way down to the bottom of the file?
Do lines 116-117 read
  "_resolved": "https://github.com/kcyarn/markdown-toc/tarball/master",
  "_from": "https://github.com/kcyarn/markdown-toc/tarball/master"

If doesn't say this, cd into the packages/markdown-document directory and run apm install then check it again.
So far, I haven't managed to duplicate the error, but I'll keep trying.

Just realized I didn't answer your question...
It doesn't require language-markdown. using the source.gfm (default gfm markdown) works, but I haven't tested it with mixed markdown/html or anything beyond a simple list of headers with some lorem ipsum content.

I tested it with new .md file using default Github Markdown and just one # header, same crash.

I'm terribly sorry. I screwed up and forgot to push the single line change to the markdown-toc repository when I published the package. I've released a patch that I believe will fix the problem. Please update the package.

Forgot to mention that sometimes atom needs to be restarted after installing. I'm still trying to track down why...

Awesome! Looks to be working, thanks so much! (I didn't need to restart either, but I think a lot of extensions have that issue so I wouldn't worry about it much if I was you.)


dynatrace_web_application.meta_data_capture_settings.capture seems to not allow multiple values

Describe the bug
I have a webapplication that I'm defining as follows:
resource "dynatrace_web_application" "web_application" {
  ...
  meta_data_capture_settings {
    capture {
      name              = "VisitTag0"
      type              = "META_TAG"
      capturing_name    = "user-email"
      # public_metadata = false
      unique_id         = 1
      # use_last_value  = false
    }
    capture {
      name              = "VisitTag0"
      type              = "META_TAG"
      capturing_name    = "solution-name"
      # public_metadata = false
      unique_id         = 2
      # use_last_value  = false
    }
  }
 ...
}

Upon doing a terraform apply. Terraform always says that it will create the second meta_data_capture_settings.capture option that is specified. However, looking at the UI, only the first capture setting is visible.
  # module.t0105_qa.dynatrace_web_application.web_application will be updated in-place
  ~ resource "dynatrace_web_application" "web_application" {
        id                                   = "APPLICATION-....."
        name                                 = "..."
        # (5 unchanged attributes hidden)

      ~ meta_data_capture_settings {
          + capture {
              + capturing_name = "solution-name"
              + name           = "VisitTag0"
              + type           = "META_TAG"
              + unique_id      = 2
            }

            # (1 unchanged block hidden)
        }

        # (9 unchanged blocks hidden)
    }

Expected behavior
I would expect that dynatrace provider creates 2 metadata tag options. However only one option is created.
Screenshots

Desktop (please complete the following information):

terraform version v1.6.2
dynatrace provider version - v1.50.0
OS - macos 14.3.1 (Sonoma)

Hi @ketan-mck,
Thank you for reaching out. In order for the metadata capture to work for user tags, there's two pieces of configuration that need to be present. The meta_data_capture_settings that you provided is one, and the other is the reference to be used as user tags in the user_tags block. Are you able to verify that you see both sets defined? The key is to also validate that the IDs reference (eg. 1, 2, etc) match as well. Example below..
resource "dynatrace_web_application" "Example" {
  ...
  meta_data_capture_settings {
    capture {
      name              = "VisitTag1"
      type              = "META_TAG"
      capturing_name    = "TerraformTest1"
      unique_id         = 1
    }
    capture {
      name              = "VisitTag0"
      type              = "META_TAG"
      capturing_name    = "TerraformTest2"
      unique_id         = 2
    }
  ...
  user_tags {
    tag {
      metadata_id   = 1
    }
    tag {
      metadata_id   = 2
    }
  ...
}

This works. The documentation could probably use this hint somewhere. But I'll mark this issue closed for now.


pyO3 and HDF5 on windows

Hey All,
Sorry to bother you again!
I am trying to use hdf5-rust for a project with pyO3.
While the program works fine on Linux, I am having some trouble on Windows.
Therefore I created a MWE which is basically the HDF5 - Pixel example inside a working pyO3 Python-module.
You can find the whole code here.
Note: I can run the Pixel example on windows without issues if i do not use pyO3.
Compiling the code works on both, windows and linux, however execution fails on windows with the following error:
pyo3_runtime.PanicException: Can not create file: Invalid file access property list id:<PHONE_NUMBER>79279375
The same error occurred in #18, however i do not see with this explanation why it should work without Python but fail with it. Maybe I am misinterpreting it.
Can someone help me with this?

Wonder does the readme pixel example work without pyo3 on windows in your setup?

Hey @aldanor,
for whatever reason the plain rust example did run without throwing out an error, however you are right it did not run. The error seemingly occurred due to the same fact as #18.
Changing the HDF5 version from 1.12.1 to 1.10.7 worked for me.
Thank you both again for this cooperation. you've been really helpful (Even thought the errors where completely on my side.)

@dwerner95 No worries - hope it all works now. Closing this issue for now then. (and #194 leaving open for now due to https://github.com/aldanor/hdf5-rust/issues/194#issuecomment-1021999182)

Hello @dwerner95, I am having the same issue. Downgrading to 1.10.7 did not solve it for me. Did you do something else to make it work ? Thanks !


Enforce right-association of bytes concatenation

Add lemma rewriting +Bytes expressions to be right-associated
Add claim testing the lemma

From @PetarMax:

Given the design of the simplification engine, will the following:
rule (A +Bytes B) +Bytes C => A +Bytes B +Bytes C [simplification]
always simplify any concatenation to the fully right-associative form A1 +Bytes A2 +Bytes … +Bytes An? For example, I remember there is some caching going on, etc.

From @ana-pantilie:

I can't say for sure, there are bugs/limitations regarding one of the caching mechanisms which couldn't be fixed.


ql-qlf: qlf_k6n10f: add TDP_BRAM36 simulation models

This PR adds to ql-qlf plugin simulation models for True Dual Port Block RAMs for simulations targeting qlf_k6n10f devices.
The main module replaces old TDP_BRAM36 in cells_sim.v. Other modules that are used inside TDP_BRAM36 are placed in separate files: TDP18Kx18_FIFO.v, sram1024x18.v, ufifo_ctl.v in the same directory.
Signed-off-by: Paweł Czarnecki<EMAIL_ADDRESS>

I updated the simulation models according to the newest RTL code. It was successfully tested in simulation with 4 different BRAM configurations from design: https://github.com/QuickLogic-Corp/ql_designs/blob/master/bram/bram.v

I have been running few tests with the RAM simulation model. I found an issue with the FIFO flags. I am using fifo_1024x36, initially I push 12 data (36-bit) and pop 12 data (36-bit), the fifo flags works fine.
Then I push 1024 data (36-bit) & I see the full flag going high correctly. But when I pop out 1024 data (36-bit) I don't see the empty flag going high again. On debug, I see that the raddr is not wrapping around at the 1024 (0xffc) boundary.
fifo_1024_36.zip

We can merge the PR and continue to work on the BRAM simulation model. Approved.

Ok. I'm merging this one.


Trajectory generator for Auto mode

Based on #10696
Overview
This new FlightTask uses the velocity-based trajectory generator developed for manual control in #10696 to generate a smooth trajectory between waypoints. The strategy is quite simple: for each axis (north-east-down), a velocity target is generated using simple proportional controllers: v_target = K * (x_waypoint - x_trajectory) where x_... is the position. The controller then "drives" the trajectory to the waypoint like a servo controls its position by controlling the velocity of the motor. Furthermore, to ensure that the trajectory asymptotically converges to the line connecting the waypoints, a cross-track controller is added (here also, a simple proportional controller is used).
To robustify the algorithm, a time stretch strategy is used:
At each epoch, the increasing acceleration, constant acceleration and decreasing periods are computed. To generate the trajectory, the jerk is integrated using dt*time_stretch where time_stretch is a value between 0.0 and 1.0. This time stretch value is computed as a function of "how far the drone is behind the position of the trajectory". In summary, we can say that the trajectory will wait for the drone if it's too far from it.
Takeoff and landing
The advantage is that for takeoff and landing waypoints, the trajectory is still continuous. The new AutoMapper2 flight task is used to provide proper position and velocity setpoints given the type of waypoint:

Takeoff: xyz position of the setpoint and z velocity limit depending on the altitude above ground
Landing: xy position and z velocity limit depending on the agl

The interface used is similar to the basic FlightTask idea:

a value in the position setpoint means that the velocity target has to be generated by the P controller, a NAN means that the velocity target is given by the velocity setpoint message.
a value in the velocity setpoint means that:

if position setpoint is NAN then this is the velocity target
if position setpoint is finite then this is the maximum allowed velocity target

if both velocity and position setpoints are NAN, then the velocity target is set to zero.

Tests
Raw setpoints
Position along North axis:

Generated path:

Using this trajectory generator
Position along North axis:

Generated path:

How to use it

Set MPC_POS_MODE to 3
Tuning parameters:
MPC_ACC_HOR_MAX is used as the maximum acceleration/deceleration for x and y
MPC_JERK_MIN is used as the maximum jerk for x, y and z
MPC_XY_CRUISE is the cruise speed, the max velocity of the trajectory
MPC_XY_VEL_MAX is the max velocity at the input of the velocity controller (has to be bigger than the cruise speed to allow the position loop to do its job)
MPC_ACC_DOWN_MAX
MPC_ACC_UP_MAX
MPC_Z_VEL_MAX_DN
MPC_Z_VEL_MAX_UP
MPC_XY_TRAJ_P controls the "aggressiveness" of the trajectory.
MPC_Z_TRAJ_Pcontrols the "aggressiveness" of the trajectory.

Cool! I see that this causes the vehicle to deviate quite far from the waypoints and the straight lines connecting them. What guarantees can be made about maximum deviation of the vehicle position from the straight lines? How hard will it be to predict the actual trajectory ahead of flight (e.g. drawing the red lines from above in QGC as the waypoints are placed)?

Hi, @ndepal
The tracking can now be adjusted with the MPC_XY_TRAJ_P and MPX_Z_TRAJ_P gains. To adjust the distance at which the drone starts to turn, the acceptance radius had to be adjusted. However, the acceptance radius being fixed, an acute angle might generate an overshoot due to the maximum dynamics of the trajectory (velocity, acceleration and jerk limitations.
Below a plot with the MPC_XY_TRAJ_P gain slightly increased and with smaller acceptance radius.

As it directly depends on the parameters of the trajectory and is completely independent of the vehicle's dynamics, the trajectory (and path) is deterministic. The green line from above could then be displayed on QGC.

CI build failures.

Thanks for the explanation @bresch.
Being able to show the green line in QGC could be valuable, as it can deviate significantly from the straight lines. However, the actual vehicle trajectory deviates quite a bit from the setpoints as well. Is this by design or a question of position control tuning? This cam make it quite difficult to plan missions, especially when the mission is generated algorithmically.
A while ago there was an effort to implement spline/bezier trajectories. These would be smooth and feasible trajectories, allowing for a controller that closely tracks the planned path. And there are algorithms for planning such paths in an obstacle map.  Does this PR replace those efforts?

@ndepal The bad tracking is mostly due to the poorly tuned model I have in jMAVSim. The tracking will also be improved by adding the acceleration trajectory as a feedforward to the velocity controller.
I'm not 100% sure, but I think the spline/bezier trajectories you're mentioning are in fact paths and not trajectories.

We'll need to figure out something to get this to fit in px4fmu-v2, but in the meantime let's test on other platforms.
@PX4/testflights please test this on a few multicopter platforms that aren't px4fmu-v2.

@PX4/testflights Could you please test that on a quad? Something like a F450
It should be a small mission, possibly a survey, for example like this one: https://logs.px4.io/plot_app?log=bf80702d-7046-4e56-9669-51bb7a1c841a
The following parameters should be good for a small quad:

Set MPC_AUTO_MODE to 3

Tuning parameters:
MPC_ACC_HOR_MAX = 3
MPC_JERK_MIN = 5
MPC_XY_CRUISE = 5
MPC_XY_VEL_MAX = 12
MPC_ACC_DOWN_MAX = 5
MPC_ACC_UP_MAX = 8
MPC_Z_VEL_MAX_DN = 2
MPC_Z_VEL_MAX_UP = 3
MPC_LAND_ALT1 = MPC_LAND_ALT2 = 5
MPC_LAND_SPEED = 0.7
MPC_XY_TRAJ_P= 0.5
MPC_Z_TRAJ_P= 0.5

Thanks in advance!

I tested in pixhawk 4 and pixhawk 4 mini. in both, there is no difference with the master.
Pixhawk 4 logs
https://review.px4.io/plot_app?log=6d9a6c04-6e5f-492b-9b8a-f98e23ff3239
https://review.px4.io/plot_app?log=ca2a2a35-2d5b-4184-9e09-9e3fedbc3f53
Pixhawk 4 mini logs.
https://review.px4.io/plot_app?log=c232a5e9-e6b2-43f1-9a5a-526ea788d7ba
https://review.px4.io/plot_app?log=f8f78a60-d580-44e7-b0c7-e344eb8cc127

@Avysuarez Thanks! Could you also try with those specific parameters please: https://github.com/PX4/Firmware/pull/10746#issuecomment-433081444
The jerk and accelerations are set too high, that's why you don't see the difference :)

@bresch
ok I will try again

rebased on Master

I tested again with the same vehicles but with the suggested parameters. The flight is smoother.
Pixhawk 4.
https://review.px4.io/plot_app?log=4ae93006-95ae-4c09-96b1-0b66f1fb31bf
Pixhawk 4 mini.
https://review.px4.io/plot_app?log=f6bbcc65-59d1-4d6c-a85c-98095cc76be8

@Avysuarez Great! Thanks a lot.

tested on pixhawk v4pro, following parameters.
https://review.px4.io/plot_app?log=1b1576ef-1a38-4a64-96f9-905dd3b9013a
https://review.px4.io/plot_app?log=881213c8-5c1d-4aa2-85a3-5a85b55e7fb7
pixhawk mini
https://review.px4.io/plot_app?log=9cab8e7f-2d9e-419a-afd3-4859d65370aa
https://review.px4.io/plot_app?log=a7c84058-8824-4135-b641-798ed45adad4

@dannyfpv Awesome, thanks!

Here are some plots of a real flight (extracted from a flight made by @dannyfpv )

Note: the velocity setpoint in the graph above is the sum of the output of the position P controller and the feedforward generated by the trajectory generator.

A general good result is that all the discontinuities have been removed up to the rate setpoints.

@dagar Rebased on Master.
Here is a mission test in SITL: https://logs.px4.io/plot_app?log=aa76fe5b-5ab7-418c-b15c-a3d2b92bc2fc

Could we merge #10772 before this PR?

This parameters do not show up:
MPC_AUTO_MODE
MPC_YAW_MODE
MPC_XY_TRAJ_P
MPC_Z_TRAJ_P
Should I update Qgroundcontrol? I updated it 1 o 2 months ago.
I tried flashing with Qgroundcontrol stable, developer and beta versions and compiling it doing  git clone https://github.com/PX4/Firmware.git and make px4_fmu-v3_default it possible that I'm not getting the current version of the master code?


Remove AssertString tests from test_pandas.py, replace with in-code tests

Replaces uses of assertString in Pandas tests, one of which was failing due to a slight formatting change, with tests on the data.

i think these test are maintaining test coverage whilst being more explicit about what is being tested in the test code
They also remove a fragility, exposed by a change to the pandas version and the way they choose to implement
str(iris.pandas.as_series(cube))
and change it in newer version of their library.
I don't think this is should be a test failure
I am very much minded to merge this as is


Single jar

Adding assembly config for single jar. Build with "mvn assembly:assembly".

This pull request fixes issue #1

Hi @SvenEwald thanks for your interest but this project is not expected to be used as day-by-day client is just a sample on how to use the library, there no reason why we should build this as a single jar.


Added property with scheduler service startup timeout

Hello,
I'm trying to run Gobblin in standalone cluster mode on our dev environment. I don't want to use Azkaban or Oozie as a scheduler, so I configured Quartz in cluster mode with MySQL backend. Because of not so good performance of mysql cluster on dev environment or physical distance between current mysql master and Gobblin installation, I've encountered TimeoutExceptions during job scheduler startup on Gobblin master. After diving in the code, I've noticed that in startUp method of JobScheduler there is such a piece of code: this.scheduler.awaitRunning(1, TimeUnit.SECONDS);. That was not enough to establish the connection by Quartz which produces  stacktrace below:
Exception in thread "GobblinHelixJobScheduler STARTING" java.lang.IllegalStateException: Scheduler service is not running.
	at gobblin.scheduler.JobScheduler.startUp(JobScheduler.java:178)
	at gobblin.cluster.GobblinHelixJobScheduler.startUp(GobblinHelixJobScheduler.java:82)
	at com.google.common.util.concurrent.AbstractIdleService$2$1.run(AbstractIdleService.java:54)
	at com.google.common.util.concurrent.Callables$3.run(Callables.java:93)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.util.concurrent.TimeoutException: Timed out waiting for  [STARTING] to reach the RUNNING state. Current state: STARTING
	at com.google.common.util.concurrent.AbstractService.awaitRunning(AbstractService.java:295)
	at com.google.common.util.concurrent.AbstractIdleService.awaitRunning(AbstractIdleService.java:184)
	at gobblin.scheduler.JobScheduler.startUp(JobScheduler.java:176)
	... 4 more

Introducing new property: jobscheduler.startup.timeout with default value of 1 was the simplest solution that fixes the issue. Please let me know if it meets your standards :)

Closing this because there is much more to do to allow clustered Quartz setup, for example: some DAG of dependencies between services starting up in ServiceBasedAppLauncher.


feat(EMS-2722): No PDF - Single/Multiple contract policy - Currency validation updates. Refactor policy currency ID

Introduction :pencil2:
This PR updates both the Single and Multiple contract policy forms to render an error the "alternative currency" option is selected, but no alternative currency is chosen.
This also refactors the policy currency ID. Previously, POLICY_CURRENCY_CODE was used for field rendering, validation and data saving. Now, this is only used for data saving and application mapping. All other policy currency instances use CURRENCY_CODE - the same as all other currency areas.
Have also replaced the ALTERNATIVE_POLICY_CURRENCY_CODE field ID. with ALTERNATIVE_CURRENCY_CODE.
Resolution :heavy_check_mark:

Update some E2E currency assertion functions to:

Have object structured params.
Accept a completeNonCurrencyFields argument, If passed, this function will be called immediately.
Accept an errorIndex param.
This is required so that if a form has currency fields and other non-currency related fields, the other non-currency fields can be filled in before asserting the currency fields.

Create completeSingleContractPolicyForm cypress command.
Create completeMultipleContractPolicyForm cypress command.
Update policy mapSubmittedData and mapApplicationToFormFields functions to map POLICY_CURRENCY_CODE to CURRENCY_CODE.
Create new policyAlternativeCurrencyCodeRule shared validation rules.
Add alternativeCurrencyRule validation rule to Single and Multiple policy validaiton rules.

Miscellaneous :heavy_plus_sign:

Replace POLICY_CURRENCY_CODE instances with CURRENCY_CODE.
Update Single and Multiple contract policy E2E tests to use assertCurrencyFormFields.
Remove now unused checkPolicyCurrencyCodeInput E2E helper.
Remove now unused ALTERNATIVE_POLICY_CURRENCY_CODE field ID.
Add some missing documentation.
Simplify some alternative currency code validation unit tests.
Remove some unnecessary policy E2E tests for validating currency code fields.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (main-application-no-pdf@87b2f92). Click here to learn what that means.

Additional details and impacted files
@@                    Coverage Diff                     @@
##             main-application-no-pdf    #1847   +/-   ##
==========================================================
  Coverage                           ?   98.43%
==========================================================
  Files                              ?      505
  Lines                              ?     8431
  Branches                           ?      914
==========================================================
  Hits                               ?     8299
  Misses                             ?      130
  Partials                           ?        2

Flag
Coverage Δ

unit-test
98.43% <0.00%> (?)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.