Move missing templates to base

The form and redirect templates, used to carry the AuthNRequest and the
SAML response through EngineBlock, where not yet in the base templates,
resulting in broken authentications.

@thijskh The broken authentication was caused by missing Twig templates that are not yet in the 'new' base template system.
This PR simply copies over the tried and tested templates. Maybe @Badlapje kan verify if these templates could be made better from a no-js accessability standpoint? But for now this seems a fix for the problem at hand.

Disclaimer: I noted during my tests that the debug authentication does not succeed, it fails on a NotOnOrAfter in SubjectConfirmationData is in the past
Reported that in Pivotal

Looks good to me!


[Select] pass label information in renderValue()

renderValue() prop provides nice way of customizing how the displayed value should be looks like in Select.
However, some information is leaking:
e.g)
<MenuItem value="our value here">Label</MenuItem>
                                 ^^^^^
                                 // label of selected item is missing

Currently there's no way around accessing Label text, hence users should create some mapper for displayed value.

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Summary 💡
rednerValue() prop should be given 'label' data somehow
Examples 🌈
<Select
  ...
  renderValue={(value, label /* this is just my proposal */) => (<option value={value}>{label}</option>)}
/>

Motivation 🔦
I want to utilize label information inside of renderValue() callback

Thanks for the feedback but I don't think the library should provide that because there is afford to find the label related to the value.
I think this work should be on the consumer side, like this:
<Select
  ...
  renderValue={value => {
    const item = items.find(({ value: v }) => v === value );
    return item.label
  }}
/>

cc @mnajdova @michaldudak for other opinions.

@siriwatknp Thanks for the quick response. I thought this could be pretty handy and could eliminate fair amount of look-up code but I always support what you guys towards to regarding API design :)

Agree with @siriwatknp - this is pretty simple to implement on the application side and if done in the library, it would also impact the developers who don't need it.

Agree, I am closing since instructions on how it can be achieved has been provided.

But in single select ,How can i implement RenderValue()?

But in single select ,How can i implement RenderValue()?

@nishantdotcom had you find any way around for single select ?


Update configs for Sphinx 1.4-compatibility

Created a new Makefile and conf.py from sphinx-quickstart with Sphinx 1.4.1. Migrated relevant contents of old conf.py into new one.
Also removed some broken roles:

:bibliography:
:cite:

Also removed make.bat - Chapel doesn't support Windows, so why should the Python-integration documents support it?

@awallace-cray This built fine with 3.5 - hope this helps resolve Travis/Jenkins issues.


Dark terminal "breaks" ANSI colors

ansi-bright-white-fg has a value of #151515, which is a rather black color. Ignoring the confusing aspect of bright-white being a rather dark black, after #196 got merged, anything using it is pretty much unreadable, as can be seen in the screenshot below:

Oops. I guess the PR should have to adjusted that too. We will adjust it accordingly.

@laszlocph How to enable colored log lines? I am generating colored logs from my python script but all logs are still black. And how to enable dark mode?

Nevermind! This fixed my problem: https://github.com/pallets/click/issues/1090


How to display validation messages during inputing forms

I might be missing something, but how do I achieve the same functionality as with the pure aurelia-validation? I want to show the user real-time input validation messages, not only validate during submiting the form. I'm looking for a solution that doesn't require to duplicate code (such as one set of validation rules in the entity and another one strictly for showing messages inside the form) Let's say I have a customer entity:
@validatedResource('customers')
export class Customer extends Entity {
  @ensure(it => it.isNotEmpty().hasLengthBetween(1, 20))
    name = null;
}
And somewhere in the app I'm using it in a form:
newcustomer.html
 <button click.delegate="save()" >
   Save  </button>
<form validate.bind="validation" role="form">

Name
<input type="text" placeholder="Name and Surname" class="form-control"
value.bind="customer.name" />

</form>
newcustomer.js
....
@inject(EntityManager)
export class newcustomer {
constructor(entityManager) {
this.customersRepository = entityManager.getRepository('customers');
this.customer      = entityManager.getEntity('customer')
}
save() {
this.customer.getValidation().validate().then( () => {
console.log("I updated"+ this.customer.name);
return this.customer.save()
} )
};
By default aurelia-validation would attach messages to the  such as is required or length has to be between x and y.
Thanks for any help!

was that answered with RWs quick answer on gitter?

@masteriusz You'll probably need the validate="" property because it's an instance.
** Set validation from entity.getValidation()**
<form validate.bind="validation"></form>
Use the name of the property to validate:
<input validate="name">

@masteriusz I'm closing this issue. But if you still have any questions, feel free to comment!


VS2015 initially fails to load project created using PTVS2.2.4. Okay for inbuilt projects.

Launching  a VS2015 Solution by clicking on the solution file in Windows Explorer results in the Project within failing to load. Right clicking the project in Solution Explorer and select Reload Project loads it correctly. But is you save all and try to launch again the same way it occurs again.
Only occurs with projects created using PTVS2.2.4 and not other inbuilt types such as Visual C#.
Issue does not occur is you open up VS2015 and then load solution from File menu.
Issues even occurs with unmodified New Projects.

I get this as well, with the following error in the output log:
D:\python\App\App\App.pyproj : error  : Object reference not set to an instance of an object.

Same here (VS2015 Update 3):
For a specific solution, either all the projects fail, occasionally only the last one in the list does, or all projects are loaded successfully.

Thanks. I think I know why this is occurring (VS team asked us to make a change to when we load our extension at startup, and when you double-click the project is now loaded too early), but not sure how to resolve it right now without simply undoing that change (which was also the fix to #1117).
If/when we are able to resolve this, there'll be a update notification shown in VS, so just keep an eye out for that.

Whether fully resolved not know, leave a message on a shared dimension.
When I opened *.pyproj by 'Notepad++', is to 'UTF-8-BOM'.
I saved changes to it as 'UTF-8 without BOM' project opens normally.
I hope these comments are helpful.

Hi hungclues.
Unfortunately, changing the encoding of he project file does not resolve
my issue.
Hopefully it is resolved with an update.
On Sat, Jul 16, 2016 at 9:01 AM, hungclues<EMAIL_ADDRESS>wrote:

Whether fully resolved not know, leave a message on a shared dimension.
When I opened *.pyproj by 'Notepad++', is to 'UTF-8-BOM'.
I saved changes to it as 'UTF-8 without BOM' project opens normally.
I hope these comments are helpful.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/PTVS/issues/1411#issuecomment-233118765,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATakZAcNTgqlEL4q7xYRJFc0XnlmX_57ks5qWI_xgaJpZM4JIHfi
.

Fix has been merged and will be available when we release our next update.

Thanks Steve.
On 28 Jul 2016 22:34, "Steve Dower"<EMAIL_ADDRESS>wrote:

Fix has been merged and will be available when we release our next update.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/PTVS/issues/1411#issuecomment-236032082,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATakZM-2rA_6x2J8ethNkQnN_MyZ0IGMks5qaSBQgaJpZM4JIHfi
.


Add support for allowing clients to limit which finish_reasons they allow.

Clients can do:
client<llm> MyClient {
  provider "openai"
  options {
    finish_reason_whitelist ["stop"]
  }
}

client<llm> MyClient {
  provider "openai"
  options {
    finish_reason_blacklist ["content_policy"]
  }
}

[!IMPORTANT]
Add support for client-configurable finish reason whitelists and blacklists with updated error handling and tests.

Behavior:

Adds finish_reason_whitelist and finish_reason_blacklist options to client configurations for controlling acceptable finish reasons.
Updates PropertiesHandler to handle these options and validate finish reasons.
Modifies LLM response handling to check finish reasons against the whitelist/blacklist.

Error Handling:

Updates error handling to raise BamlValidationError for non-terminal finish reasons.
Adds tests for finish reason validation in both Python and TypeScript.

Client Implementations:

Integrates finish reason handling into OpenAIClient, AnthropicClient, GoogleAIClient, AwsClient, and VertexClient.
Updates resolve_properties functions to extract and store finish reason options.

Testing:

Adds integration tests in integ-tests/python/tests/test_functions.py and integ-tests/typescript/tests/integ-tests.test.ts to verify finish reason handling.

This description was created by  for 535156c34137507573ca101b8ec4ef70a0ee985c. It will automatically update as commits are pushed.

while this is a good concept, we likely want to do this a bit more generically than just special case finish_reason.
for e.g. perhaps we abort the stream if a certain token shows up? we'll pause on this PR until we can think through that unless there's a reason to merge this in earlier for a customer.


Select 2 z-index issue

Issue description:
Select2 filed display above customize header section due to z-index. Screenshot added.

Version used:
Latest from w.org
Using theme_mods or options?
theme_mods
Code to reproduce the issue (config + field(s))
any 'Type' like Typography, which uses select2
Related: https://github.com/aristath/kirki/issues/1418

https://github.com/aristath/kirki/pull/1460


Feature/import and export flag

The changes in this PR are about adding the capability of import/export flags into the system.
Description
I thought that it can be handy to copy flags from different environments and to enable an easy way to bootstrap the system from flags list.

Motivation and Context
I tend to use flagr in two different environments - DEV and PROD. When I need to add a new flag, first I add it to DEV, then create the same flag manually in PROD. I found it useful to automate the process I tend to do and make it easier to use this library.
How Has This Been Tested?
Locally, manually.
Types of changes

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

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #272   +/-   ##
=======================================
  Coverage   81.76%   81.76%
=======================================
  Files          26       26
  Lines        1530     1530
=======================================
  Hits         1251     1251
  Misses        210      210
  Partials       69       69

Continue to review full report at Codecov.

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

nice!

Thanks for the PR! I appreciate the effort, but I think assembling too many requests and logic from frontend is no better than exposing the export/import logic via Flagr's API.
My thoughts of Flagr API for export/import

Frontend code is harder and fragile to test, ideally, two APIs should be enough. GET /export and POST /import
Assemble the logic to the backend allows higher abstraction. For example, we can use swagger to clearly define what's the expected format for POST /import, and put enough validation code to gate the input.
It allows not only Flagr's UI to leverage the export/import, but also programmatically for other clients.
From Flagr's current API, we already have export to sqlite3 and evaliation_cache's JSON format, it's easy to extend to export flags' JSON format. https://checkr.github.io/flagr/api_docs/#tag/export

Also, for critical UI like this, I'd like to have a dedicated page/tab for export and import, a mistake for clicking the import in production can be very dangerous.
@yosyad What do you think?

Thanks for the PR! I appreciate the effort, but I think assembling too many requests and logic from frontend is no better than exposing the export/import logic via Flagr's API.
My thoughts of Flagr API for export/import

Frontend code is harder and fragile to test, ideally, two APIs should be enough. GET /export and POST /import
Assemble the logic to the backend allows higher abstraction. For example, we can use swagger to clearly define what's the expected format for POST /import, and put enough validation code to gate the input.
It allows not only Flagr's UI to leverage the export/import, but also programmatically for other clients.
From Flagr's current API, we already have exported to sqlite3 and evaliation_cache's JSON format, it's easy to extend to export flags' JSON format. https://checkr.github.io/flagr/api_docs/#tag/export

Also, for critical UI like this, I'd like to have a dedicated page/tab for export and import, a mistake for clicking the import in production can be very dangerous.
@yosyad What do you think?

I think that you are right. We can preserve the existing UI, maybe move it to another page, and implement all its logic in backend.

@yosyad Any progress?


Update Colab notebooks to new models

Go through every notebook in the shared drive and update the query logic to the new models and/or take advantage of more abstracted intermediate models.

Turn these into case studies


State update during render bug

I always get the following warning in the console:

I think the problem is in Layout.js. You called setPostPageOn and other state-changing methods in render().
I do think this is an urgent issue, so if you could help fix it asap, it would be great! Thank you!

@lxieyang fixed.


[$500] [HOLD for payment 2024-01-24] [HOLD for payment 2024-01-22]  Web - Request money - The 'Enter' button doesn't work for the confirmation money page

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.24-4
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Go to URL https://staging.new.expensify.com/
Login with any account
Go to FAB -> Request money -> Manual
Enter any amount - > Click Enter

Expected Result:
The selection is made and the next page opens
Actual Result:
The 'Enter' button doesn't work
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/7a18d67c-0bbf-4272-9910-5a7f45fad1d3
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~017e291ba0a03dee35
Upwork Job ID:<PHONE_NUMBER>524930560
Last Price Increase: 2024-01-30

Issue OwnerCurrent Issue Owner: @parasharrajat

@Julesssss can you please reopen this issue? C+ payment for PR review is pending

Sorry for the wait @situchan: https://www.upwork.com/nx/wm/offer/100722406.
Payment Summary: Regression PR review: https://github.com/Expensify/App/pull/34313

@situchan paid $500 here C+


Move GlPortal game renderer to radix

Only leave very specific rendering routines to glportal

Can we pull out all portal specific code to glPortal::renderer::GameRenderer while all entity/player/debugdraw/scene drawing functions go to radix::renderer::GameRenderer?


Simple demo in Windows 10 is not showing as a service when the .exe is started

I have copied the entire simple example and created a build and an executable file simpleServiceDemo.exe with Goland 2019.2
When Right clicking on simpleServiceDemo.exe and clicking Run as Administrator I can see that simpleServiceDemo.exe is running in the TaskManager but not showing in the Windows Services list.
What I'm doing wrong?
https://github.com/kardianos/service/blob/master/example/simple/main.go

You need to "install" and "start" the service, not just run it.


APP-2898: Fix exception handling when reading a faulty datafeed

Once reading a datafeed throws an APIClientException, it means that
the datafeed is faulty. Before, this datafeed is automatically removed
after being read but now it's not removed anymore. Therefore, the
faulty datafeed should be deleted manually after the exception is thrown.

Can we add a unit test showing the problem?

Can we add a unit test showing the problem?

There's already an unittest for this case. I just updated the verifying scenarios.


[Windows & Ubuntu] Maven 3.8.* version will be removed  from January 10,2025

Breaking changes
Maven 3.8.* version will be removed  and 3.9.* will be added  from January 10,2025
Target date
Image deployment will start on January  06,2025 and will take 2-3 days
The motivation for the changes
Updating the maven version to the latest i.e, 3.9.9. Customers will be able to use the latest version.
Possible impact
If your projects depend on maven 3.8.* they might be broken.
Platforms affected

[X] Azure DevOps
[X] GitHub Actions

Runner images affected

[X] Ubuntu 20.04
[X] Ubuntu 22.04
[X] Ubuntu 24.04
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[ ] macOS 15
[ ] macOS 15 Arm64
[X] Windows Server 2019
[X] Windows Server 2022

Mitigation ways
Customers should be able to use the latest version of Maven 3.9.*
N/A

https://github.com/actions/runner-images/issues/10715


The Compare Folder 0.15.2 does not work with the VS Code latest version 1.48.0 (user setup)

Your tool is really helpful to help me re-base/merge my code, thank you so much!
And upon yesterday, I am updating my VS Code to the latest version 1.48.0 (user setup) on my Windows 10 with Remote - SSH 0.51.0 on Linux and the Compare Folder 0.15.2, I have been tried to run "Remote - SSH: Kill VS Code Server on Host..." on the Linux and re-open my Windows VS Code and it does not work.
I am choosing the folder to compare and not things show, message, compare windows... It just disappeared.
Update
Run from the command is work.

And when click on the menu does not work.

Interesting. Actually, I never used vscode with remote.
I'm not sure I have a time in the next week.
Can you try using vscode insider? Or an older version of the extension?

I have been installed the VS Code Insider version 1.49.0 (user setup) with the Compare Folder 0.15.2 and it does not work as well the same.

This is weird because click to select folders calls the same command as the command palette. Unfortunately, I don't have the required platforms to reproduce the issue.
If anyone can reproduce and debug it, that will be great!


docs(themes): add Light-icons theme

A simple, light and elegant theme for Slidev, combined together with creative layouts, custom components & fonts
NPM Package: https://www.npmjs.com/package/slidev-theme-light-icons
GitHub Repo: https://github.com/lightvue/slidev-theme-light-icons

Looks awesome! Thanks!


PHP 8.2 Build

Add php 8.2 daily builds and removed 7.4 in workflow
Update readme to reflect 8.2 changes and add some general info

Looks good thank you! Should we wait for other approval as well?

@Zirk-litson Nah, the build is passing everything should be good.


CDK-615: Permissions issue writing to a partitioned Hive external dataset

Added a test of load() methods of DatasetWriterCacheLoader and
IncrementalDatasetWriterCacheLoader.
Moved the writer.initialize() call to happen before the
listener.partitionAdded() call in DatasetWriterCacheLoader#load
and IncrementalDatasetWriterCacheLoader#load.

I've been thinking more about this and my fix here may not be correct. This works for file system datasets and for external Hive datasets, but for managed Hive datasets the directories should probably be created by Hive.
I'm thinking the correct solution is that the partition listener should always be called before the directory is created. The external Hive metadata provider would create it on the Kite side and the managed one would just let the Hive metastore create it.
Thoughts?

I pushed a new commit to the branch that reverses the logic and makes partition listeners responsible for deciding if Kite or an external system should create the partition directories. This makes Kite work more consistently with both managed and external Hive tables and fixes the original permissions issue.
There is probably still follow-up work on how to deal with the permissions and ownership of files themselves. I think as it stands, you can't drop a Hive managed dataset using the Hive DDL statements as the files are probably not owned by Hive but by the user that ran Kite.

+1


Syyntax match does not put info on variables under repetitions

syntax "repro" (ident)? ident : command
example : Lean.Syntax → Option Lean.Syntax
  | `(repro $[$x:ident]? a) => x
             --^ textDocument/hover
  | `(repro $[$x:ident]? b) => x
             --^ textDocument/hover
                             --^ textDocument/definition
  | _ => none

Only the x in the first match arm is highlighted like a variable. Furthermore, both x occurrences in the bodies jump to the x from the first match arm, which suggests that the binder for the second x is being misplaced on the syntax for the first one.

Also relevant: the issue only happens when the two variables are named the same. If the second identifier is named y, they are both highlighted independently and go to definition works as expected.


Support for case_insensitive feature in Terms Query

Hi,
We have a support for case_insenstive option in Term Query as mentioned in the url https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html.
{     "query": {         "term": {             "title": {                 "value": "big THEORY",                 "case_insensitive": true             }         }     } }
Likewise Is there any support to set case-insensitive option in Terms Query?
Thanks.

Closing as duplicate of #5407

@stevejgordon  I think u misunderstood my question.In elastic we have Term and Terms level query right? Term will be used for matching the field with exact value whereas Terms query is an equivalent to SQL IN Clause operation and it will be implemented like:
Term Query:
{
    "query": {
        "term": {
            "title": {
                "value": "big THEORY",
                "case_insensitive": true
            }
        }
    }
}

Terms Query:
{
    "query": {
        "terms": {
            "title":["big bang","big theory"]
        }
    }
}

in which case_insensitive is supported in Term Query..meanwhile i couldnt have any idea of how to use case_insensitive option in Terms Query.


New Version: Microsoft.dotnet version <IP_ADDRESS>05

[X] Have you signed the Contributor License Agreement?
[X] Have you checked that there aren't other open pull requests for the same manifest update/change?

[X] Does your manifest conform to the 1.0 schema?

Microsoft Reviewers: Open in CodeFlow

ok really not sure what went wrong there

upon running it for a second time outside of sandbox it does indeed fail but i unsure as to why, from the logs it does not seem to be an issue with the manifest
[4D70:465C][2022-02-15T16:41:25]e000: Error 0x80070057: Failed to execute MSI package.
[1570:3D70][2022-02-15T16:41:25]e000: Error 0x80070057: Failed to configure per-machine MSI package.
[1570:3D70][2022-02-15T16:41:25]i319: Applied execute package: Microsoft.NET.Workload.Mono.ToolChain.Manifest_<IP_ADDRESS>.0.2_mauipre.1.22102.15_x64.msi, result: 0x80070057, restart: None
[1570:3D70][2022-02-15T16:41:25]e000: Error 0x80070057: Failed to execute MSI package.```

welp I think pipelines hates this PR or somethings

I truly cannot figure out what the hells going wrong with this anymore so I'll just wait for someone to see this I guess

I truly cannot figure out what the hells going wrong with this anymore so I'll just wait for someone to see this I guess

I'm taking a look now. Sorry about this PR causing you issues. It's failing because the installation is failing during our automated test. This can be caused by a multitude of reasons - many of which we can't automate. When it has the "Needs-Attention" label it pops up for one of us to investigate.

Closing at it seems to be an issue with the installer.


presence.getAll() returns null for previous client connections

Using 4.2.2 deepstream docker image with docker-compose, a 4.x client querying presence, and a 2.3.0 client logging in.
Client logs in with a username:
ds.login({ type: 'webhook', username: device_id }, (success, data) => { ...

Which does trigger a response from ds.presence.subscribe(device_id, (dev, login) => {...
However, if the client logs in, then deepstream (the docker container) is restarted, the initial call for getAll() returns null instead of an object:
ds.presence.getAll([device_id], (connections) => { ...

Ok, I kind of figured this out. presence.getAll() actually returns 2 parameters, the first is null and the second is a list of connected clients (e.g. `[ 'user1', 'user2' ]). There's no indication that this is the case in the documentation, but I'm not sure what the first return parameter is.

Additionally, it seems like when you specify a list of clients (ds.presence.getAll(['client1', 'client2'])), you get a different result type: an object with the client names as keys, rather than an array. That makes sense based on how they're used  but probably needs to be documented. I'd be happy to make the PR if you'd like.

In either case, I'm guessing this probably belongs in https://github.com/deepstreamIO/deepstream.io-client-js , since it seems to be on the client side.


unrecognized selector sent to instance

Dear all,
I'm using Xcode 9 Beta 3 and as soon as I add "PaperOnboardingDelegate" to the ViewController Class and include onboardingView.delegate = self within the ViewDidLoad() I'll get the following error and the App crashes:
2017-08-08 03:33:48.455340+0200 MyProject[7563:1139517] -[MyProject.ViewController onboardingConfigurationItem:index:]: unrecognized selector sent to instance 0x7f88d4602f70
2017-08-08 03:33:48.476036+0200 MyProject[7563:1139517] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MyProject.ViewController onboardingConfigurationItem:index:]: unrecognized selector sent to instance 0x7f88d4602f70'
Removing "onboardingView.delegate = self" will work but than the following functions are useless:
func onboardingConfigurationItem(item: OnboardingContentViewItem, index: Int) {

}

func onboardingWillTransitionToIndex(index: Int) {
    if index == 1 {
        if self.getStartedButton.alpha == 1 {
            UIView.animate(withDuration: 0.2, animations: {
                self.getStartedButton.alpha = 0
            })
        }
    }
}

func onboardingDidTransitionToIndex(index: Int) {
    if index == 2 {
        UIView.animate(withDuration: 0.4, animations: {
            self.getStartedButton.alpha = 1
        })
    }
}

Any Ideas? Thanks for a quick reply.
BR,
Michael

same issue :(

@mkocurek
Did you found solution for that?

nope, I didn't but gave up on paper-onboarding as I want more control over the objects.

Exact same issue here.

Same issue here - have been pulling what's let of my hair out.

I have same issue 😔

Change
func onboardingConfigurationItem(item: OnboardingContentViewItem, index: Int) {
}
to
func onboardingConfigurationItem(_ item: OnboardingContentViewItem, index: Int) {
}

Same issue with me , Please help . I already spent so much time to learn

I'm getting an error here as well with the demo in Xcode 9

@monkeywithacupcake you need to do a cast see the below for an Xcode 9 example
  @objc func onboardingConfigurationItem(_ item: OnboardingContentViewItem, index: Int) {
    if let config = delegate as! PaperOnboardingDelegate? {
        config.onboardingConfigurationItem(item, index: index)
    }
  }

change to
@objc func onboardingConfigurationItem(_ item: OnboardingContentViewItem, index: Int) {
 }


[Question] is it possible to automatically synchronize mysql database to duckdb?

Doing analysis in mysql is painfully slow.
Is there any way to automatically synchronize mysql database to duckdb?

There is no explicit support for syncing with a MySQL at this point


Ball practice (&ball demo): besseren moral circle noch implementieren und ball beim droppen shrinken

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

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: [e.g. iOS]
Browsers: R Version

Additional context
Add any other context about the problem here.

8ca3d2f14cbb604dcaa9f92715deac3d5a9a7c68


Log collection, dmesg error parsing, cross HMC LPM with vNIC

Defined a command-line argument (--collect-pre-post-test-logs) that needs to be specified if user wishes to collect logs before and after test.
Defined functions for collecting OS, VIOS, HMC logs. Logs are collected at different stages:

before and after test
within test: pre-forward lpm, post-forward lpm, post-backward lpm

Defined functions to parse dmesg for errors.

Created new PR #681


Allow capitalization and show message when the subjkt contains invalid characters

Possible fix for https://github.com/teia-community/teia-ui/issues/303 and https://github.com/teia-community/teia-ui/issues/336

Awesome thanks!
So if I get this right we allow uppercase finally?
I'll have to check more closely but the regex test that spawns the dialog seems wrong no? The ^ should be outside the brackets I think


build: show badges for Gitpod and GitHub Codespaces in PRs

The Issue

https://github.com/gitpod-io/gitpod/issues/19519

How This PR Solves The Issue
I tried https://pullrequestbadge.com/ from https://github.com/gitpod-io/gitpod/issues/19519#issuecomment-2093438752, but decided to do something else.
Found these:

https://gist.github.com/tianhaoz95/5bf47c416b4b641d83a2022f977a0ec0
https://docs.github.com/en/codespaces/setting-up-your-project-for-codespaces/setting-up-your-repository/facilitating-quick-creation-and-resumption-of-codespaces#creating-an-open-in-github-codespaces-badge

Manual Testing Instructions
I did not find the light/dark variants for the images:
Light background:

Dark background:

Automated Testing Overview

Related Issue Link(s)
Release/Deployment Notes

Looks good.

@bmartinez287 OK even with the lack of direct dark variants? Seems like it should be fine to me.

Yeah, it should be fine even without the dark variants. It's always nice to have but providing our own adds extra maintenance and they might release those at any point.
I'm surprised they don't have them documented since they use light and dark modes extensively.
https://docs.github.com/en/codespaces/setting-up-your-project-for-codespaces/setting-up-your-repository/facilitating-quick-creation-and-resumption-of-codespaces#creating-an-open-in-github-codespaces-badge


flutter app keeps encoding code

I left my code for a while (2 days) after that I found it as it looks in the attachment, and I don`t know how and why this happened,
kindly help me solve this issue.

Hi @MahmoudElbokl
Not sure what that screenshot is about, it looks like image file
Please explain the issue in detail and provide steps to reproduce
Can you please provide your flutter doctor -v and flutter run --verbose logs, and a minimal complete reproducible code sample
Thank you

Hi @TahaTesser
This is my code
`import 'dart:io';
import 'dart:convert';
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'package:otg_managment_app/servies/custom_exception.dart';
import 'package:requests/requests.dart';
class ApiProvider {
final String _baseUrl = "http://pms.onetecgroup.com/api/";
Future get(String endPoint) async {
var responseJson;
print(_baseUrl + endPoint);
try {
Response response = await Requests.post(_baseUrl + endPoint,
bodyEncoding: RequestBodyEncoding.FormURLEncoded);
debugPrint("$endPoint API ${response.content()}");
response.raiseForStatus();
responseJson = responseChecker(response);
debugPrint("$endPoint API $response $responseJson");
} on SocketException {
throw FetchDataException('No Internet connection');
}
return responseJson;
}
Future post(String endPoint, Map<String, dynamic> body) async {
var responseJson;
print("object 2 $body");
try {
Response r = await Requests.post(_baseUrl + endPoint,
body: body, bodyEncoding: RequestBodyEncoding.FormURLEncoded);
debugPrint("$endPoint API $r");
r.raiseForStatus();
debugPrint("$endPoint API ${r.content()}");
responseJson = responseChecker(r);
debugPrint("$endPoint API $r $responseJson");
} on SocketException {
throw FetchDataException('No Internet connection');
}
return responseJson;
}
dynamic responseChecker(response) {
print("RES ${response.statusCode}");
switch (response.statusCode) {
case 200:
var responseJson = response.content();
print(responseJson);
return responseJson;
case 202:
print("1520 ${jsonDecode(response.body)["type"][0]}");
print("1521 ${jsonDecode(response.body)["type"]}");
String error;
error = jsonDecode(response.body)["type"];
print(error);
return BadRequestException(error);
case 400:
print("1520 ${jsonDecode(response.body)["error"][0]}");
print("1521 ${jsonDecode(response.body)["error"]}");
String error;
if (jsonDecode(response.body)["error"] is List) {
error = jsonDecode(response.body)["error"][0];
} else {
error = jsonDecode(response.body)["error"];
}
throw BadRequestException(error);
case 401:
throw UnauthorisedException(jsonDecode(response.body)["error"]);
case 403:
throw UnauthorisedException(response.body.toString());
case 426:
throw UpgradeRequired(response.body.toString());
case 500:
  default:
    throw FetchDataException(
        'Error occured while Communication with Server with StatusCode : ${response.statusCode}');
}

}
}`
I left it for 2 days then when I open the project again I found that the code becomes
`import 'package:path/path.dart';
import 'package:pedantic/pedantic.dart';
import 'package:sqflite/sqflite.dart';
import 'package:sqflite_example/utils.dart';
import 'package:test/test.dart';
void main() {
group('sqflite', () {
test('open null', () async {
var exception;
try {
await openDatabase(null);
} catch (e) {
exception = e;
}
expect(exception, isNotNull);
});
test('exists', () async {
expect(await databaseExists(inMemoryDatabasePath), isFalse);
var path = 'test_exists.db';
await deleteDatabase(path);
expect(await databaseExists(path), isFalse);
var db = await openDatabase(path);
try {
expect(await databaseExists(path), isTrue);
} finally {
await db?.close();
}
});
test('close in transaction', () async {
// await Sqflite.devSetDebugModeOn(true);
var path = 'test_close_in_transaction.db';
var factory = databaseFactory;
await deleteDatabase(path);
var db = await factory.openDatabase(path,
options: OpenDatabaseOptions(version: 1));
try {
await db.execute('BEGIN TRANSACTION');
await db.close();
    db = await factory.openDatabase(path,
        options: OpenDatabaseOptions(version: 1));
  } finally {
    await db.close();
  }
});

/// Check if a file is a valid database file
///
/// An empty file is a valid empty sqlite file
Future<bool> isDatabase(String path) async {
  Database db;
  var isDatabase = false;
  try {
    db = await openReadOnlyDatabase(path);
    var version = await db.getVersion();
    if (version != null) {
      isDatabase = true;
    }
  } catch (_) {} finally {
    await db?.close();
  }
  return isDatabase;
}

test('read_only missing database', () async {
  var path = 'test_missing_database.db';
  await deleteDatabase(path);
  try {
    var db = await openReadOnlyDatabase(path);
    fail('should fail ${db?.path}');
  } on DatabaseException catch (_) {}

  expect(await isDatabase(path), isFalse);
});

test('read_only empty file', () async {
  var path = 'empty_file_database.db';
  await deleteDatabase(path);
  var fullPath = join(await getDatabasesPath(), path);
  await Directory(dirname(fullPath)).create(recursive: true);
  await File(fullPath).writeAsString('');

  // Open is fine, that is the native behavior
  var db = await openReadOnlyDatabase(fullPath);
  expect(await File(fullPath).readAsString(), '');

  await db.getVersion();

  await db.close();
  expect(await File(fullPath).readAsString(), '');
  expect(await isDatabase(fullPath), isTrue);
});

test('read_only missing bad format', () async {
  var path = 'test_bad_format_database.db';`

and some files become
`�PNG

IHDR   0   0   W��   tEXtSoftware Adobe ImageReadyq�e<  �IDATx��Y]H#W�����ht4��w)��fZ(,�i�e����>,�BAv�Bɾ�PZ�V[�e�}i�PH��h������NH��f�ɝ�a/rg2s�9����ܱ���1ѭ����.�j���eRӴ�h4����$�z<2��q�/�?���z��[ZZ�� UUYWW�Kt�B9�-˫�����$U����~�<��[������T�Xy���!X�1@�5UWWW]�����@ ��N(I�����2 �����<7�����5Dx� �6�����/E#?v�߼n�{�J}�5���c�Q��ۙ��S�ᱽ��o�w3P<��O���C��)��Ӕ����G�z��f���L&Y,c;;;,�J鍣tttL���3^=�v 	����|���o666��D"�---izc~G�!�&+�a�]�xR�ݓ�����t����v�������N�����n�1 �x)��F���~}qq��Gx&ʋjCCC>�'�<��r��s�!<���*e� ��(J����y�Cy\���d V�ݭ��.&�+찻,.�U�7����̰y��4�5)�]}F��O��a� /�Ӂ2�~�����2�Ӝ|���ތ��E�z K}��"�s�����qww� �_P�[p���$�@ba��Dܥ*�$S��^S�!s@X-�
all the project files corrupted in this shape and I don't know why this happened.
this is the output of flutter doctor
[√] Flutter (Channel stable, 1.20.2, on Microsoft Windows [Version 10.0.18362.1016], locale en-US)
• Flutter version 1.20.2 at C:\src\flutter
• Framework revision bbfbf1770c (4 weeks ago), 2020-08-13 08:33:09 -0700
• Engine revision 9d5b21729f
• Dart version 2.9.1
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
• Android SDK at C:\Users\Moaaz\AppData\Local\Android\sdk
• Platform android-30, build-tools 30.0.1
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
• All Android licenses accepted.
[√] Android Studio (version 4.0)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 49.0.2
• Dart plugin version 193.7547
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[√] VS Code (version 1.48.2)
• VS Code at C:\Users\Moaaz\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.14.1
[!] Connected device
! No devices available
! Doctor found issues in 1 category.
this is the output of flutter run --verbose
[ +112 ms] executing: [C:\src\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +67 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] bbfbf1770cca2da7c82e887e4e4af910034800b6
[        ] executing: [C:\src\flutter/] git tag --contains HEAD
[ +185 ms] Exit code 0 from: git tag --contains HEAD
[   +1 ms] 1.20.2
[  +14 ms] executing: [C:\src\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +34 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\src\flutter/] git ls-remote --get-url origin
[  +35 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +65 ms] executing: [C:\src\flutter/] git rev-parse --abbrev-ref HEAD
[  +33 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +64 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +4 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +42 ms] executing: C:\Users\Moaaz\AppData\Local\Android\sdk\platform-tools\adb.exe devices -l
[  +35 ms] List of devices attached
[   +4 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[  +47 ms] No supported devices connected.
[   +7 ms] "flutter run" took 181ms.
[  +16 ms]
#0      throwToolExit (package:flutter_tools/src/base/common.dart:14:3)
#1      RunCommand.validateCommand (package:flutter_tools/src/commands/run.dart:343:7)

#2      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:836:11)

#3      FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:741:33)

#4      FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart)
#5      AppContext.run. (package:flutter_tools/src/base/context.dart:150:29)
#6      _rootRun (dart:async/zone.dart:1190:13)
#7      _CustomZone.run (dart:async/zone.dart:1093:19)
#8      _runZoned (dart:async/zone.dart:1630:10)
#9      runZoned (dart:async/zone.dart:1550:10)
#10     AppContext.run (package:flutter_tools/src/base/context.dart:149:18)
#11     FlutterCommand.run (package:flutter_tools/src/runner/flutter_command.dart:730:20)
#12     CommandRunner.runCommand (package:args/command_runner.dart:197:27)
#13     FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:332:21)
#14     _rootRunUnary (dart:async/zone.dart:1198:47)
#15     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
#16     _FutureListener.handleValue (dart:async/future_impl.dart:143:18)
#17     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:696:45)
#18     Future._propagateToListeners (dart:async/future_impl.dart:725:32)
#19     Future._completeWithValue (dart:async/future_impl.dart:529:5)
#20     _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:40:15)
#21     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:311:13)
#22     FlutterVersion.checkFlutterVersionFreshness (package:flutter_tools/src/version.dart)
#23     _rootRunUnary (dart:async/zone.dart:1198:47)
#24     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
#25     _FutureListener.handleValue (dart:async/future_impl.dart:143:18)
#26     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:696:45)
#27     Future._propagateToListeners (dart:async/future_impl.dart:725:32)
#28     Future._completeWithValue (dart:async/future_impl.dart:529:5)
#29     Future._asyncCompleteWithValue. (dart:async/future_impl.dart:567:7)
#30     _rootRun (dart:async/zone.dart:1190:13)
#31     _CustomZone.run (dart:async/zone.dart:1093:19)
#32     _CustomZone.runGuarded (dart:async/zone.dart:997:7)
#33     _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:1037:23)
#34     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
#35     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
#36     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:118:13)
#37     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:169:5)
[ +258 ms] ensureAnalyticsSent: 252ms
[   +4 ms] Running shutdown hooks
[   +1 ms] Shutdown hooks complete
[   +1 ms] exiting with code 1
Thank you

Hi @MahmoudElbokl
This doesn't look like it's related to Flutter, it doesn't encode files, it's more of an Android Studio issue, Based on my Google search.
Please check this out https://stackoverflow.com/questions/39932158/file-was-loaded-in-the-wrong-encoding-utf-8-in-android-studio
Can you open those same files in the VS Code and check what they look like?

Hi @TahaTesser
in VS Code it happened but only in one file after I see the mentioned link the problem is solved and it is related to IDE not flutter.
Thank you for your help.


Fix bug

Fix issues with accessibility check and score 100% in SEO and best practices

its Perfect , keep up the good work. 👍


Micro-ros client connected to agent but stop publishing after several reconnections.

Hi,
I created topic and published it from the client, I saw that the client succeed to connect to the agent and on ros2 topic echo I got the topic data as I should. But, after I restarted the client several times it stopped publish any data.
From the client view, it's look like there is no problem. The API rcl_publish keep being called on a loop and returned RCL_RET_OK on each publish.
Do you know maybe what might be the issue here?
Thanks.

Please provide the code and details about your platform/transport in order to allow us to replicate the issue.

Sorry but without a replicable environment we cannot do much more. Please provide an example (out of your project if needed) and steps for replicating the problem.
Also explain in detail the situation, in this case I do not fully understand what do you mean by "after I restarted the client several times", that means connecting and disconecting the MCU power? What is the micro-ROS Agent behaviour?

Of course, I understand, I will try to elaborate a little more.
Our setup is an MCU which is connected using UART to a Raspberry Pi. The micro-ROS agent is running constantly using systemd. That means, that once the MCU is reset, the agent will automatically reconnect itself once the port is available once more.
I think that the replicable environment, is pretty much an ARM M7 MCU running the micro-ROS client, with a serial transport over UART at a baudrate of 921600. In case the connection with the micro-ROS agent is valid, it will call the rclc_executor_spin_some function, and publish a ROS message. Like the one you can see in the files attached in the previous post. It is basically an array of 12 UInt16 members.

It's look like the issue was with the timers been defined as signed int64 and not unsigned int64.
I ran with cherry-pick to fujitatomoya fix for this issue https://github.com/ros2/rcl/issues/967, and it solved the issue.
Is there any chance you can merge the following fixes to micro-ROS/rcl?

Add additional null check for timer argument
use uint64_t for timer period

Thanks.

micro-ROS/rcl is always on top of ros2/rcl, so 1. is already merged in micro-ROS and 2. will be after it is merged into ros2/rcl.


Fix Lint Errors for TravisCI

Broad but hopefully thin changeset for fixing the Lint errors we should fix, and being warned about the ones that we can fix as we go.  The goal is to stay as close to Google's eslint standards as we can. Rule Overrides will be documented as line comments in the pull request.

Contributor License Agreement adherence:

[X] This Contribution is under the terms of Individual Contributor License Agreements (and also Corporate Contributor License Agreements to the extent applicable) appearing in the Apereo CLA roster.

Changes Unknown when pulling 36447929d8c255117252626120b2087cc2d9ff9a on davidmsibley:master into ** on UW-Madison-DoIT:master**.

@davidmsibley Two helpful things I have found in past ESLint styleguide migrations, which can hopefully be helpful here:

having the linter integrated into the IDE helps. http://eslint.org/docs/user-guide/integrations#editors
having a script to be able to focus on a single rule at a time helps. https://github.com/IanVS/eslint-nibble

:notebook: resolves #599

I can't seem to find the comment, but I got the email, @ChristianMurphy, about eslint tooling, and dang do I wish I knew about https://github.com/IanVS/eslint-nibble before this! I had a watch running eslint every two minutes, and a live-server continually refreshing the results of the run.  Kinda hacky but it worked for this.
I had linter running in Atom though, which made fixing the individual errors much easier.

@davidmsibley I deleted the comment after I realized all the work was already done.
I posted a bit too late for this PR, sorry about that.

Coverage decreased (-0.8%) to 29.91% when pulling 96040c150cf8cab36a90593460621e79831782f2 on davidmsibley:master into ccadb66c7b20323892092cb6d31135087a2688d4 on UW-Madison-DoIT:master.

@ChristianMurphy wrt https://github.com/UW-Madison-DoIT/angularjs-portal/pull/601#issuecomment-288810452 , it's just as much that we (and I'll take responsibility, I) communicated too late about the intention to do this work as it is you posted your solution too late.
I think there's going to be a learning curve, a transition period in how tactical plans are created and communicated as we all learn to treat AngularJS-portal more like a community open source product and less only as a MyUW team product. That's going to be a little messy and that's going to have to be okay. This PR, besides being an important step forward on its substantive merits, also is a meta-reminder of the opportunities in continuing to evolve how AngularJS-portal is developed.

Coverage decreased (-0.9%) to 29.789% when pulling 0df3aef6deacb8d97e1a238213535b0857db6915 on davidmsibley:master into ccadb66c7b20323892092cb6d31135087a2688d4 on UW-Madison-DoIT:master.

Coverage decreased (-0.9%) to 29.789% when pulling 0df3aef6deacb8d97e1a238213535b0857db6915 on davidmsibley:master into ccadb66c7b20323892092cb6d31135087a2688d4 on UW-Madison-DoIT:master.


Add 'add' magic method to 'Namespace' class.

This allows to create URIs from a Namespace instance by adding a suffix
with the addition (+) operator.
Example:
>>> import lilv
>>> w = lilv.World()
>>> ns = lilv.Namespace(w, 'http://example.com/')
>>> print(ns + '#foo')
http://example.com/#foo

Signed-off-by: Christopher Arndt<EMAIL_ADDRESS>

As discussed in https://github.com/drobilla/lilv/pull/27, what's the point?  This adds a more verbose syntax that only encourages a mistake.

So are you saying that the Namespace class should be only used for spec / extension URI namespaces?
Because I can't find any restriction on plugin URIs in the LV2 spec that would forbid the use of non-identifier chars in the path/fragment part of the URI.
So, for example, if I have several plugins with these URIs:

http://example.com/plugins/foo#v1
http://example.com/plugins/foo#v2
http://example.com/plugins/bar#v1

I though that I should be able to use Namespace like this:
myplugin_ns = Namespace(world, 'http://example.com/plugins/')
plugin_foo1_uri = myplugin_ns + 'foo#v1'
plugin_foo2_uri = myplugin_ns + 'foo#v2'
plugin_bar1_uri = myplugin_ns + 'bar#v1'

which looks much nicer than:
plugin_foo1_uri = getattr(myplugin_ns, 'foo#v1')
plugin_foo2_uri = getattr(myplugin_ns, 'foo#v2')
plugin_bar1_uri = getattr(myplugin_ns, 'bar#v1')

There isn't really a restriction on plugin URIs per se, but since that's how it works in Turtle, and that's more or less what a "namespace" is in LV2, they should line up.
The attribute syntax is pretty much the whole reason for the class.  You can always simply use a string.
I am not vehemently opposed to the entire idea, but one of the main useful attributes of Namespace is that is returns URIs.  An arbitrary string appended to a namespace is not necessarily a valid URI.

the main useful attributes of Namespace is that is returns URIs. An arbitrary string appended to a namespace is not necessarily a valid URI.

__getattr__ and __add__ would both return the return value from World.new_uri, so that would be guaranteed, wouldn't it?

Fair enough I guess.  I still think this is pretty questionable since the original motivating case was actually an issue which this caught, and having different prefixes defined for the same namespace only makes for confusion, but whatever.  I'll compromise by leaving it undocumented.
Merged as db03762, thanks.


chore(log): change exporter logs to klog

changed some logs in ndm-exporter to klog.
Signed-off-by: Akhil Mohan<EMAIL_ADDRESS>

Codecov Report

Merging #340 into master will increase coverage by 0.53%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #340      +/-   ##
==========================================
+ Coverage    52.9%   53.43%   +0.53%
==========================================
  Files          50       50
  Lines        2431     2431
==========================================
+ Hits         1286     1299      +13
+ Misses       1044     1034      -10
+ Partials      101       98       -3

Impacted Files
Coverage Δ

cmd/ndm_daemonset/probe/udevprobe.go
65.85% <0%> (+5.69%)
:arrow_up:

cmd/ndm_daemonset/probe/eventhandler.go
53.94% <0%> (+7.89%)
:arrow_up:

Continue to review full report at Codecov.

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


Add :transformation under product and set it to true by default

Add the :transformation flag under the product section and set it to true by default.
This flag enables/disables v2v UI.
Related UI PR - https://github.com/priley86/miq_v2v_ui_plugin/pull/190

@simaishi I think this should be back-ported to the Gaprindashvili branch but with the flag switched to false

@gmcculloug In that case... I think it'll be better to create a separate PR, as it will be confusing if the commit does the opposite of what PR says!

Or change the title and description to be less informative. 😆  But I would agree that it is better as a separate PR.

Alright, I will create a separate PR for Gaprindashvili - not a problem :)

@simaishi Gaprindashvili PR - https://github.com/ManageIQ/manageiq/pull/17285


daggy and fantasy-combinators unused dependencies

Hi!
daggy and fantasy-combinators are defined as dependencies in package.json but the main file index.js doesn't require them.
Could they be removed or are they dev dependencies?

These dependencies are required by fantasy-land/laws. We'll be able to remove that directory and these dependencies once fantasyland/fantasy-laws#1 is merged. :)


output files are uniform

the output are a more reasonable file size now, but they are all a uniform single color raster. the source raster is a classified 8-bit thematic raster. Do you need to run a different function to extract each classification pixels to their own file, with the other areas transparent?

I apologize for the confusion. To create an output raster with the extracted classification pixels and the other areas as transparent (NoData value), you can modify the separate_rasters_by_color function as follows:
import os
import numpy as np
from osgeo import gdal

def separate_rasters_by_color(input_file, output_folder, color_values, resampling_factor=1):
    print("Separating rasters by color...")

    # Open the input raster file
    src_ds = gdal.Open(input_file)
    src_band = src_ds.GetRasterBand(1)
    x_size, y_size = src_ds.RasterXSize, src_ds.RasterYSize

    # Define resampled dimensions
    x_resampled_size = int(x_size / resampling_factor)
    y_resampled_size = int(y_size / resampling_factor)

    # Define block size and number of blocks
    block_size = 1024
    n_blocks_x = int(np.ceil(x_resampled_size / block_size))
    n_blocks_y = int(np.ceil(y_resampled_size / block_size))

    # Create output rasters
    output_rasters = {}
    for color_value in color_values:
        output_file = os.path.join(output_folder, f"{color_value}_global.tif")
        driver = gdal.GetDriverByName("GTiff")
        dst_ds = driver.Create(output_file, x_resampled_size, y_resampled_size, 1, gdal.GDT_Byte, options=['COMPRESS=LZW'])
        dst_ds.SetGeoTransform(src_ds.GetGeoTransform())
        dst_ds.SetProjection(src_ds.GetProjection())
        output_rasters[color_value] = dst_ds.GetRasterBand(1)
        output_rasters[color_value].SetNoDataValue(0)

    # Loop through the raster in blocks
    for i in range(n_blocks_x):
        for j in range(n_blocks_y):
            x_start = i * block_size * resampling_factor
            y_start = j * block_size * resampling_factor

            x_block_size = min(block_size * resampling_factor, x_size - x_start)
            y_block_size = min(block_size * resampling_factor, y_size - y_start)

            src_array = src_band.ReadAsArray(x_start, y_start, x_block_size, y_block_size)

            if resampling_factor > 1:
                src_array = src_array[::resampling_factor, ::resampling_factor]

            for color_value in color_values:
                mask = np.where(src_array == color_value, color_value, 0).astype(np.uint8)
                output_rasters[color_value].WriteArray(mask, x_start // resampling_factor, y_start // resampling_factor)

    # Clean up
    for color_value in output_rasters:
        output_rasters[color_value] = None

    src_band, src_ds = None, None
    print("Separation of rasters by color complete.")

In this updated version, I've set the NoData value for each output raster band to 0 using the SetNoDataValue(0) method. Additionally, I've changed the mask assignment line to keep the original color value for the extracted classification pixels (mask = np.where(src_array == color_value, color_value, 0).astype(np.uint8)).
Now, the output rasters should have the extracted classification pixels with their original values, and the other areas should be transparent (NoData value).

there's a problem with the output. the files won't render in ArcGIS Pro for some reason. can you confirm the band separation is working as intended?

I apologize for the issue you're experiencing. I suspect the problem might be related to the NoData value set for the output rasters. In the previous code, I set the NoData value to 0, which might be causing issues with rendering in ArcGIS Pro. Let's try setting the NoData value to a value outside the range of the classification values, such as 255.
Here's the updated separate_rasters_by_color function with the NoData value set to 255:
import os
import numpy as np
from osgeo import gdal

def separate_rasters_by_color(input_file, output_folder, color_values, resampling_factor=1):
    print("Separating rasters by color...")

    # Open the input raster file
    src_ds = gdal.Open(input_file)
    src_band = src_ds.GetRasterBand(1)
    x_size, y_size = src_ds.RasterXSize, src_ds.RasterYSize

    # Define resampled dimensions
    x_resampled_size = int(x_size / resampling_factor)
    y_resampled_size = int(y_size / resampling_factor)

    # Define block size and number of blocks
    block_size = 1024
    n_blocks_x = int(np.ceil(x_resampled_size / block_size))
    n_blocks_y = int(np.ceil(y_resampled_size / block_size))

    # Create output rasters
    output_rasters = {}
    for color_value in color_values:
        output_file = os.path.join(output_folder, f"{color_value}_global.tif")
        driver = gdal.GetDriverByName("GTiff")
        dst_ds = driver.Create(output_file, x_resampled_size, y_resampled_size, 1, gdal.GDT_Byte, options=['COMPRESS=LZW'])
        dst_ds.SetGeoTransform(src_ds.GetGeoTransform())
        dst_ds.SetProjection(src_ds.GetProjection())
        output_rasters[color_value] = dst_ds.GetRasterBand(1)
        output_rasters[color_value].SetNoDataValue(255)

    # Loop through the raster in blocks
    for i in range(n_blocks_x):
        for j in range(n_blocks_y):
            x_start = i * block_size * resampling_factor
            y_start = j * block_size * resampling_factor

            x_block_size = min(block_size * resampling_factor, x_size - x_start)
            y_block_size = min(block_size * resampling_factor, y_size - y_start)

            src_array = src_band.ReadAsArray(x_start, y_start, x_block_size, y_block_size)

            if resampling_factor > 1:
                src_array = src_array[::resampling_factor, ::resampling_factor]

            for color_value in color_values:
                mask = np.where(src_array == color_value, color_value, 255).astype(np.uint8)
                output_rasters[color_value].WriteArray(mask, x_start // resampling_factor, y_start // resampling_factor)

    # Clean up
    for color_value in output_rasters:
        output_rasters[color_value] = None

    src_band, src_ds = None, None
    print("Separation of rasters by color complete.")

Please try running this updated function and check if the output files render correctly in ArcGIS Pro. If the issue persists, please let me know, and I'll help you troubleshoot further.

for some reason, nothing is rendering in ArcGIS pro. It won't render as classified, discrete, or stretched. Just nothing shows up. Do you know why?

here's the goal of the script. Can you tell me if it's doing that?
The input file is a global landcover map that is classified into discrete classes. I'd like the script to output each individual class (such as urban, forest, water, agriculture, etc) to be it's own file.

would you expect the output rasters to all have the exact same file size?

While it's possible for the output rasters to have similar file sizes, they don't necessarily have to be the exact same size. The file size can vary depending on the number of pixels for each class, the data type, and the compression method used.
In the provided script, we used LZW compression for the output GeoTIFF files, which is a lossless compression method. This means that the file size can be affected by the spatial distribution and the complexity of the class features. If the classes have a similar number of pixels and spatial distribution, the file sizes might end up being quite similar. However, if the classes have varying distributions or different numbers of pixels, the file sizes may differ.
If you notice that all the output rasters have the exact same file size, it could be an indication that there might be an issue with the processing or the output format. In such a case, please provide more information about the input raster and any issues you're experiencing, and I'll help you troubleshoot further.

I believe that's the next place to check. Each output file is exactly the same size. What would you do to correct that issue?

for some reason when i run the code, some of the print functions do not print
print(f"Processed block: {i}, {j}")
and
print("Separation of rasters by color complete.")
don't run.

It's possible that the script is not reaching these print statements due to an error, or the script is taking too long to process the data, and it hasn't reached those statements yet.
To determine if there is an issue with the script, you can add more print statements at different stages of the processing to see where the problem occurs. You can also wrap the processing code inside a try-except block to catch any errors and print them.
Here's the updated separate_rasters_by_color function with additional print statements and a try-except block:

a few things

the file sizes are still identical
only these messages print, nothing else does

Separating rasters by color...
Input raster dimensions: 362880 x 141120

i confirmed that the spatial reference appears correct
The raster does not display in QGIS or ArcPro

Based on your feedback, it appears that the script is not processing the data as intended, and the output files are not suitable for visualization. I suggest the following modifications to the script to address these issues:
Instead of using a mask with 255 as the NoData value, we will use np.nan (Not a Number) to represent NoData values. This will allow GIS software to display the rasters properly. We'll also change the output raster data type to gdal.GDT_Float32 to accommodate the np.nan values.
To understand why the loop through the raster blocks is not progressing, add more print statements to the script to check the processing status and ensure that the script is processing the input data correctly.
Here's the updated separate_rasters_by_color function with these modifications:
import os
import numpy as np
from osgeo import gdal

def separate_rasters_by_color(input_file, output_folder, color_values, resampling_factor=1):
    print("Separating rasters by color...")
    try:
        # Open the input raster file
        src_ds = gdal.Open(input_file)
        src_band = src_ds.GetRasterBand(1)
        x_size, y_size = src_ds.RasterXSize, src_ds.RasterYSize
        print(f"Input raster dimensions: {x_size} x {y_size}")

        # Define resampled dimensions
        x_resampled_size = int(x_size / resampling_factor)
        y_resampled_size = int(y_size / resampling_factor)

        # Define block size and number of blocks
        block_size = 1024
        n_blocks_x = int(np.ceil(x_resampled_size / block_size))
        n_blocks_y = int(np.ceil(y_resampled_size / block_size))

        # Create output rasters
        output_rasters = {}
        for color_value in color_values:
            output_file = os.path.join(output_folder, f"{color_value}_global.tif")
            driver = gdal.GetDriverByName("GTiff")
            dst_ds = driver.Create(output_file, x_resampled_size, y_resampled_size, 1, gdal.GDT_Float32, options=['COMPRESS=LZW'])
            dst_ds.SetGeoTransform(src_ds.GetGeoTransform())
            dst_ds.SetProjection(src_ds.GetProjection())
            output_rasters[color_value] = dst_ds.GetRasterBand(1)
            output_rasters[color_value].SetNoDataValue(np.nan)

        # Loop through the raster in blocks
        for i in range(n_blocks_x):
            for j in range(n_blocks_y):
                print(f"Processing block: {i}, {j}")
                x_start = i * block_size * resampling_factor
                y_start = j * block_size * resampling_factor

                x_block_size = min(block_size * resampling_factor, x_size - x_start)
                y_block_size = min(block_size * resampling_factor, y_size - y_start)

                src_array = src_band.ReadAsArray(x_start, y_start, x_block_size, y_block_size)

                if resampling_factor > 1:
                    src_array = src_array[::resampling_factor, ::resampling_factor]

                for color_value in color_values:
                    mask = np.where(src_array == color_value, color_value, np.nan).astype(np.float32)
                    output_rasters[color_value].WriteArray(mask, x_start // resampling_factor, y_start // resampling_factor)

        # Clean up
        for color_value in output_rasters:
            output_rasters[color_value] = None

        src_band, src_ds = None, None
        print("Separation of rasters by color
```1

that's still not working. the output files increased in size nearly 4x from the latest output, and the raster file still does not render in QGIS or ArcPro. only the following print messages are showing:
Separating rasters by color...
Input raster dimensions: 362880 x 141120
Processing block: 0, 0


Saving through the file menu is broken on 0.5.0

Run api_demo main and then try to save via the menu.
The terminal prints out an error along the liens of:
[2023-04-29T18:56:11Z WARN  re_log_types::data_table] failed to concatenate cells for column rerun.radius
[2023-04-29T18:56:11Z ERROR re_viewer::app] File saving failed: Failed to export to data tables

and no file is produced.
Definitely reproduces on Linux; other OS's to be confirmed.
Not clear exactly what conditions cause it to repro. The simple demos in api-demo work, but longer demos such as transforms_3d fail.

Fixed in #2007


Issue with Listview

Hi,
I am trying to use this control with a listview item with a tapgesturerecognizer. Everything works great except it takes the same listview item (the first clicked) to set the popup regardless of the item (in listview) selected.
So whichever item in the list view I select, the popup comes under the first clicked listview item.
Please let me know how I can resolve this.
Thanks.

I know this is super late but maybe it'll help someone else using this plugin in the future.  I got it to work with a listview item by re-instantiating the popup object onclick.
private void Button_Clicked(object sender, EventArgs e)
{
    popup = new PopupMenu()
    {
        BindingContext = OrderDetailContext.Instance
    };

    popup.SetBinding(PopupMenu.ItemsSourceProperty, "ListItems");
    popup?.ShowPopup(sender as View);
}


Add folder icons for Jupyter

Checklist

[x] Create icon as SVG (how to)
[x] Icon color fits to Material Design (how to)
[x] SVG has some space around the icon (how to)
[x] Unique assignment to file and folder names (how to)
[x] Provide separate icons for color themes if necessary (how to) -> Considered as not necessary

Hi @geronimos!
Thank you for contributing. Please review the design guidelines for folder icons detailed in our CONTRIBUTING guide:
Design Folder Icons
We typically use a darker tone for the background (the folder) and a lighter tone for the motif (the jupyter logo in this case). Adhering to this rule helps in keeping a consistent look across all icons.
Cheers!

Hi @lucas-labs,
thanks for your feedback! I uploaded a new version with darker folder color.
I did not expect this rule to apply also for logos such as bower, aurelia, etc.
Do you prefer to also change the jupyter logo colors and only keep its shape (comparable to the vscode folder icon)?

Hi @lucas-labs,
I just uploaded a second alternative with the original logo colors removed. Here, I stick to the color palette as in design-folder-icons
Thanks for your patience!

@geronimos Yes, I think it looks way better now!


KUBECOLOR_CONFIG must be a directory rather than a file

Expected Behavior
I expected this example in the readme to work:
https://github.com/kubecolor/kubecolor/blob/7d4c2edd1f47b5276ae996586c545822bd44038e/README.md?plain=1#L716-L720
Current Behavior
KUBECOLOR_CONFIG must point to a directory that contains a color.yaml file.
Context
Introduced in #59.

Operating System: macOS Sonoma 14.5
kubectl version: 1.30.1
kubecolor version: 0.3.3

If the intent is for KUBECOLOR_CONFIG to refer to a file (and forego any "searching" for files), perhaps viper.SetConfigFile:
https://github.com/kubecolor/kubecolor/blob/7d4c2edd1f47b5276ae996586c545822bd44038e/config/config.go#L53
	if path := os.Getenv("KUBECOLOR_CONFIG"); path != "" {
		v.SetConfigFile(path)
	} else if homeDir, err := os.UserHomeDir(); err == nil {
		// ~/.kube/color.yaml
		v.AddConfigPath(filepath.Join(homeDir, ".kube"))
	}

You're right. That was the intention. Will change to SetConfigFile


Update build workflow to use hashicorp packer action

fixes #5
This PR Updates the Validate step in the .github/workflows/build.yaml file to use the build Packer action at  https://github.com/hashicorp/packer-github-actions

@pavlovic-ivan
Please take a look.
I have made all the requested changes

@pavlovic-ivan
The changes have been added.


Update HCA environment config for new environments

Open Access Envs

cc-dev - Clever Canary dev environment for non-managed access implementation
dev - open access dev environment
prod - open access prod environment to be deployed in Oct 2023

Managed or Mock Managed Access Envs

cc-ma-dev Clever Canary mock managed access dev environment
ma-dev - mock managed access dev environment for CGL pen testing
ma-prod  - managed access prod for managed access go live

Complete.


SPFx webpart sample using Redux Async Actions and ImmutableJS

Q
A

Bug fix?
no

New feature?
no

New sample?
yes

What's in this Pull Request?
SPFx webpart sample using Redux Async Actions and ImmutableJS
More details in my post here: http://www.vrdmn.com/2017/07/using-redux-async-actions-and.html

thx Vardhaman, appreciated.


[easy] cleanup inject-error

Motivation
It's left over file.
Have you read the Contributing Guidelines on pull requests?
(Write your answer here.)
Test Plan
(Share your test plan here. If you changed code, please provide us with clear instructions for verifying that your changes work.)
Related PRs
(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/libra/website, and link to your PR here.)

/land


Disable bursting exploit in too-simple limits

You can counteract bursting as in maxing out a limit all in one second, for example, simply by having multiple limiters:
@app.route("....")
@limiter.limit("100/day")
@limiter.limit("10/hour")
@limiter.limit("1/minute")
def my_route():
  ...

http://flask-limiter.readthedocs.io/en/stable/

i think you can do a list? that would be nice...


Patch the editUrl for the docs

Description
There’s a weird error in the docusaurus content-docs plugin. It’s dropping the last segment of the editUrl path
This editUrl: 'https://github.com/defenseunicorns/zarf/tree/main/x/' results in https://github.com/defenseunicorns/zarf/tree/main/ as the base path. For now, I’ll apply the hacky dummy x path. I may look at their code later to see why their plugin is broken.

same, and agree with that comment @jeff-mccoy


Expose shouldCompactCallback to FlexibleSyncConfiguration

This is supported for flx sync, so we should expose it.

duplicate of #1008


Review all tests for engine types

GH Actions
Buildkite

Are we testing the same things for both engine types?
Where does it make sense to differ?
Do we have any skip or exclusions?

Buildkite
Test = separate tests in 3 jobs (using BUILDKITE_PARALLEL_JOB)
https://github.com/prisma/prisma/blob/master/src/.buildkite/test/run.sh#L65
https://buildkite.com/prisma/prisma2-test
Logic of splitting https://github.com/prisma/prisma/blob/master/src/scripts/ci/publish.ts#L857-L880
Job 0 - All except client
Job 1 - Only client
Job 2 - Node-API with PRISMA_FORCE_NAPI=true for '@prisma/sdk', '@prisma/client', 'prisma', '@prisma/integration-tests'
Publishing = test + run publish in one job
https://github.com/prisma/prisma/blob/master/src/.buildkite/publish/run.sh
https://buildkite.com/prisma/prisma2-publish
GitHub Actions
https://github.com/prisma/prisma/blob/master/.github/workflows/test.yml
With napi/binary matrix

client (without slow types test)
integration-tests
sdk
migrate
cli-commands

Without napi matrix

client-types (only types test)
others (debug, engine-core, fetch-engine, generator-helper, get-platform)

Do Buildkite and GH Actions thus run effectively the same tests? Or are some only run on one of these?
From naive reading above, it seems that migrate and cli-commands are only run with Node-API on GH Actions?

Do Buildkite and GH Actions thus run effectively the same tests? Or are some only run on one of these?

Because we do splitting in GitHub Actions, meaning we create a job per package (exception for client-types), the logic is hardcoded and can drift from just running pnpm run test at the root like done in Buildkite.
They should run the same tests, should be in sync but for Node-API: ⬇

From naive reading above, it seems that migrate and cli-commands are only run with Node-API on GH Actions?

Indeed, that's what it looks like.

Do Buildkite and GH Actions thus run effectively the same tests? Or are some only run on one of these?

Because we do splitting in GitHub Actions, meaning we create a job per package (exception for client-types), the logic is hardcoded and can drift from just running pnpm run test at the root like done in Buildkite.

In e2e tests we have a special job to make sure all the necessary tests are run: https://github.com/prisma/e2e-tests/blob/dev/.github/workflows/lint.yaml (there the requirements are defined by the projects that exist, here it would probably be about test files covered by the existing commands or similar)

From naive reading above, it seems that migrate and cli-commands are only run with Node-API on GH Actions?

Indeed, that's what it looks like.

That should be simple enough to fix by adding these to the Buildkite definition thing.

Actually CLI is already tested, only migrate was missing, create a PR https://github.com/prisma/prisma/pull/7788


Improve development setup

Some improvements to the development workflow:

Add coverage, flake8 and tox in explicit dev-requirements.txt file;
Fix flake8 and coverage commands;
Bump flask to 0.11.1 for a better debug server;
Updates to the corresponding documentation.

Looks good to me


api_worker priority exceeds beyond integer limit

Issue
Failed jobs de-prioritise beyond the integer limit of the underlying PostgreSQL DB
Context
We had a few VCAP::CloudController::Jobs::Services::DeleteOrphanedInstance that failed multiple times. It looks as if the de-prioritization that happens after each failure does not check whether it reached the limit of the underlying database column (a PostgreSQL integer in our case):
PG::NumericValueOutOfRange: ERROR:  integer out of range:
  UPDATE "delayed_jobs" SET ... "priority" =<PHONE_NUMBER>, "handler" = '
    ---
    !ruby/object:VCAP::CloudController::Jobs::LoggingContextJob
    handler: !ruby/object:VCAP::CloudController::Jobs::TimeoutJob
    handler: !ruby/object:VCAP::CloudController::Jobs::Services::DeleteOrphanedInstance
    name: service-instance-deprovision
    ...
    "last_error" = 'Service instance : Service broker error: {
      "description"=>"Error deprovisioning instance bacdc304-9137-43a2-9dc9-4daefe3b0e0d"
    }
    /var/vcap/data/packages/cloud_controller_ng/.../cloud_controller_ng/lib/services/service_brokers/v2/client.rb:186:in `rescue in deprovision'
    ...
  '

This happened with cf-release v270.
Steps to Reproduce
Attempt to delete a service-binding managed by a broker that is not available for a long time
Expected result
A permanently failed job, or maybe just an upper bound of the priority
Current result
PG::NumericValueOutOfRange: ERROR:  integer out of range

@mattmcneeney

@suhlig Sorry for the delay getting back to you. I’ve spent a couple days investigating this, and I haven’t been able to figure out how this could happen.
The priority of the job does get doubled on each failure, and we should be defensive about not letting that grow indefinitely, but the DeleteOrphanedInstance job has a max_attempts value of 11, so the priority of that job should be getting capped at 2^(11-1) (1024). After it hits 11 attempts, the job should simply fail. I'm really curious about why this isn't happening for your system. If do see this issue again and are able to grep the worker logs, I'd really like to see what attempt number you're getting up to. Or do you still have access to an environment where this happens? If so, would you be able to download the cloud_controller_worker logs for the cc-worker vms and run the following grep on the combined log file?
grep "Job VCAP::CloudController::Jobs::Services::DeleteOrphanedInstance (id=.*) (queue=cc-generic) FAILED (.* prior attempts) with VCAP::Services::ServiceBrokers::V2" <your_combined_log_file>
Of course we could just fix this by capping the priority at some reasonable value, but I feel somewhat uncomfortable doing that before actually understanding the scenario where this is possible (maybe whatever is causing max_attempts to be ignored is a larger problem we need to look at).
You’re using cf-release v270, which corresponds to cloud_controller_ng SHA d2dbae2838ec0aa8d8b26e8918d4036405177716 and it seems like nothing relevant has changed in this area since that commit.
For reference, here are the steps I took:

Deployed and registered a service broker to a CF hosted on a bosh-lite. (I’m using cf-deployment 1.27).
Modified the service broker to return status code 500 to all requests.
Attempted to provision a new service instance via the CF CLI. This initiates orphan mitigation, kicking off the same DeleteOrphanedInstance job you're getting problems from. The DeleteOrphanedInstance job will fail every time it runs because of the 500s, causing the job to continue retrying.
After 11 attempts (approx 34 hours) in my environment (bosh-lite with mysql) the job is marked as failed and stops retrying. The max value priority gets to is 1024.
I redeployed and replaced mysql with postgres and repeated the steps above and got the same result.

The only code modification I made was adjusting reschedule_at in the job so that I didn’t have to wait the full 34 hours.
If you’re able to grep those logs and see how many attempts are being made, or if you have any ideas of things we should be looking at, I’m very interested. At this point, I’m not able to repro the problem.

Thanks for looking into this. Unfortunately we don't have the logs anymore and we have not seen this issue since.
About the limit - could it be that an attempt to restart a failed job via rake would not enforce the max of 11 attempts?

That's an interesting idea. I'll play around in my test environment and see what happens.

@suhlig @ablease and I tried the idea about running the a rake task, but there are only tasks for working off a queue. There seem to be no task to re-trigger a failed job. In result, we still have the same 11 max_attempts enforced on the DeleteOrphanedInstance job.
The only way we we're able to reproduce this was by manually updating the database entry for that job and increasing the priority value. Is there any chance for a script or a custom rake task that is part of your cf deployment which could cause a change of the job priority?
BR,
SAPI Team

Unable to reproduce. Will re-open if we see this again. Thanks for looking into this!


Css tweaks

Reduces font sizes
Changes link styling
Reworks header

Checklist

[x] I have viewed, signed, and submitted the Contributor License Agreement.
[x] I have linked issue(s) that this PR should close using keywords or the Github UI (See docs)
[ ] I have added an integration test, if necessary.
[ ] I have reviewed the styleguide for guidance on my code quality.

Looks great IMO. Didn't realize until now just how much that link thing was bothering me.

@ForestEckhardt could you please move the header rework to a separate PR? The styling of this looks a little weird to me and I think we should get a designer to take a look at this one. Particularly, the logo is now centered on the homepage, but the rest of the content is still left centered. Also, it looks like this broke the logos within the website footer.

That said, the updated font styling, link styling, and image changes look awesome!

Yeah I'll try and check that out


Add test property

It would be nice to add an extra property like testId or something similar, for testing purposes!!!
I really love it!!

Closing in favor of #71.


Add rewriter to transform attributes into methods

This PR introduces a new rewriter which transforms attr_reader/attr_writer/attr_accessor RBIs into methods with the corresponding sigs. This has two benefits:

It naturally solves Shopify/tapioca#1709. If Tapioca only has to deal with methods (which can already be merged), then we don't have to write bespoke logic to merge attributes with methods, or methods with attributes.
It'll leave less work for Sorbet, which internally rewrites attributes into methods. We can do this on its behalf, once up-front, rather than on every parse of the RBIs.

Open Questions
1. Which attr_writer sig should we accept?
Sorbet accepts both of these (should it?):
sig { params(a: Integer).void }
attr_writer :a

sig { params(b: Integer).returns(Integer) }
attr_writer :b

Sorbet.run
According to Sorbet, the result of these expressions is always just whatever is assigned to them, ignoring the return type of the sig (so perhaps we should only accept void?):
result_of_a = (self.a = 123)
T.reveal_type(result_of_a) # => Integer

result_of_b = (self.b = 123)
T.reveal_type(result_of_b) # => Integer

But the writer methods themselves do actually return the value:
class C
  attr_writer :foo
end

C.new.send(:foo=, 123) # => 123

So both seem reasonable. Should we permissively accept either one?
2. Which sig should we generate for writers?
It's not obvious which of these would be better. Consider "normal" Ruby code (not RBIs), which needs to implement a setter method:
class C
  def s=(_)
    "This return value isn't normally used"
  end
end

object = C.new

result_of_setter = (object.s = "This value is always returned")
result_of_setter # => "This value is always returned"

# ... makes sense, except:

result_of_send = object.send(:s=, "Now this isn't returned")
result_of_send # => "This return value isn't normally used"

From the caller perspective .returns(String) is correct
But from an implementer's side, .void is correct (you're not obligated to return a string)

TODO
Support multiple attributes being defined in a single declaration, e.g.
sig { returns(Integer) }
attr_reader :a, :b, :c

Should be expanded out to:
sig { returns(Integer) }
def a; end

sig { returns(Integer) }
def b; end

sig { returns(Integer) }
def c; end

Spoke offline. Conclusions:

Q1: Be flexible, and accept both .void and .returns(Type). Reevaluate if Sorbet changes its behaviour to prefer one or the other
Q2: Always emit .void.


Vickel: Watch 1<PHONE_NUMBER>

Vickel requests the watch of the watch_number 1<PHONE_NUMBER>. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Jeff Schaller in Charcoal HQ


Update TargetFrameworks for net 5 support

Pull Request Test Coverage Report for Build 389634387

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

Totals

Change from base Build 389625289:
0.0%

Covered Lines:
443

Relevant Lines:
483

💛  - Coveralls


Conditionally add the messaging environment vars to worker containers

If we don't provide a value for MESSAGING_TYPE we shouldn't assume
that the kafka secret is present. If we try to deploy a container
with env vars referencing the secret the container won't be created.
https://github.com/ManageIQ/manageiq-pods/issues/541

Jansa backport details:
$ git log -1
commit 9d11d370a1799de8cd21e06714319ca4579eab02
Author: Brandon Dunne<EMAIL_ADDRESS>Date:   Wed Jun 10 13:10:51 2020 -0400

    Merge pull request #20268 from carbonin/conditionally_add_messaging_env

    Conditionally add the messaging environment vars to worker containers

    (cherry picked from commit 2a9cfb36d4f248b7813bf25501b746b8824423f7)


722 2.4A Set Clock fails

Tried setting clock with RileyLink on a Medtronic 722 Firmware Version 2.4A.
error result:
UnexpectedResponse(MinimedKit.PumpMessage(packetType: MinimedKit.PacketType.Carelink, address: <725960>, messageType: MinimedKit.MessageType.EmptyHistoryPage, messageBody: MinimedKit.UnknownMessageBody(rxData: <0c>)), MinimedKit.PumpMessage(packetType: MinimedKit.PacketType.Carelink, address: <725960>, messageType: MinimedKit.MessageType.ChangeTime, messageBody: MinimedKit.ChangeTimeCarelinkMessageBody))

Set clock also failed through mmeowlink / OpenAPS TI stick.
I haven't tried this directly with Carelink stick yet.

I submitted this (accidentally submitted under the wrong userid - edengh - our daughter vs myself)...

Is your pump in 24-hour time? Can you include the raw data from the read_clock command?

On Jul 12, 2016, at 2:49 PM, edengh<EMAIL_ADDRESS>wrote:
Tried setting clock with RileyLink on a Medtronic 722 Firmware Version 2.4A.
error result:
UnexpectedResponse(MinimedKit.PumpMessage(packetType: MinimedKit.PacketType.Carelink, address: <725960>, messageType: MinimedKit.MessageType.EmptyHistoryPage, messageBody: MinimedKit.UnknownMessageBody(rxData: <0c>)), MinimedKit.PumpMessage(packetType: MinimedKit.PacketType.Carelink, address: <725960>, messageType: MinimedKit.MessageType.ChangeTime, messageBody: MinimedKit.ChangeTimeCarelinkMessageBody))
Set clock also failed through mmeowlink / OpenAPS TI stick.
I haven't tried this directly with Carelink stick yet.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

pump is on "12 hour" time.
I'll include read_clock later today when I'm near pump again.
On Tue, Jul 12, 2016 at 3:04 PM, Nathan Racklyeft<EMAIL_ADDRESS>wrote:

Is your pump in 24-hour time? Can you include the raw data from the
read_clock command?

On Jul 12, 2016, at 2:49 PM, edengh<EMAIL_ADDRESS>wrote:
Tried setting clock with RileyLink on a Medtronic 722 Firmware Version
2.4A.
error result:
UnexpectedResponse(MinimedKit.PumpMessage(packetType:
MinimedKit.PacketType.Carelink, address: <725960>, messageType:
MinimedKit.MessageType.EmptyHistoryPage, messageBody:
MinimedKit.UnknownMessageBody(rxData: <0c>)),
MinimedKit.PumpMessage(packetType: MinimedKit.PacketType.Carelink, address:
<725960>, messageType: MinimedKit.MessageType.ChangeTime, messageBody:
MinimedKit.ChangeTimeCarelinkMessageBody))
Set clock also failed through mmeowlink / OpenAPS TI stick.
I haven't tried this directly with Carelink stick yet.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ps2/rileylink/issues/42#issuecomment-232196002, or mute
the thread
https://github.com/notifications/unsubscribe/AAh_NlJjtPwe6bIs0TECaoet8v0qWsFyks5qVA9ggaJpZM4JK3OE
.

openaps use pump read_clock
"2016-07-12T16:16:30"

for what it's worth - I now confirmed that set_clock works within mmeowlink / OpenAPS
I'll try to run a regression test vs RileyLink

Any idea what changed between the point where you said it wasn't working with decocare and when you said it was?

Nate:
Thanks for all your help ; sorry for the distraction.
No idea what changed.
In the 'regression' below, I was using mmeowlink / TI Stick / OpenAPS, until the very end, when I used RileyLink Change Time.
By the way, note the change in the pump time from Zulu to Pacific... (23... to 16...).
This time, RileyLink reported 'succeeded'; it may have been a range issue (that is, nearness of pump to RileyLink or phone to RileyLink).
... $ openaps use pump read_clock
"2016-07-12T23:31:03"
... $ openaps use pump set_clock --to now
{
  "raw": [
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0
  ],
  "requested": {
    "old": "2016-07-12T23:31:14",
    "params": [
      23,
      33,
      41,
      7,
      224,
      7,
      12
    ],
    "clock": "2016-07-12T23:33:41.462020"
  },
  "timestamp": "2016-07-12T23:33:42.303133",
  "clock": "2016-07-12T23:33:42"
}
... $ openaps use pump set_clock --to 2016-07-12T23:30:55
{
  "raw": [
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0
  ],
  "requested": {
    "old": "2016-07-12T23:41:25",
    "params": [
      23,
      30,
      55,
      7,
      224,
      7,
      12
    ],
    "clock": "2016-07-12T23:30:55"
  },
  "timestamp": "2016-07-12T23:41:26.037818",
  "clock": "2016-07-12T23:30:55"
}
... $ openaps use pump read_clock
"2016-07-12T23:31:08"
... $ openaps use pump read_clock
"2016-07-12T16:42:10"
... $

Thanks,
Martin

Glad it's working. Thanks!

@ps2 I can't close this issue (thought we were on the iOS repo), but it's working as intended.


[TASK] Create videos for Rancher integration demo

This is created to track working on creating some videos to use in a Rancher knowledge sharing demo.
Parts of Demo
Overview of Harvester

[ ]  Deploy Harvester Cluster

[ ] UI

[ ] Image Creation

[ ] Network Creation

[ ] VM Creation

[ ] Little bit of Debugging

Integration with Rancher

[ ] How we connect Rancher & Harvester

[ ] Create RKE1/RKE2 cluster using Harvester node driver

[ ] RBAC

[ ] vCluster Rancher

Automation on Harvester cluster

[ ] Use Harvester APIs to create VMs on Harvester

[ ] Use RKE2 terraform to create rke2 cluster using Harvester VMs

Mostly all there :smile: for Automation Side/Demos/Media/Pictures/Videos/Links/Resources/small-helper-docs:
https://github.com/irishgordo/rancher-harvester-demo


beamPackages.hex: 0.21.1 -> 0.21.2

Motivation for this change
Make BEAM a first class citizen of Nix.
Or just to keep hex up-to-date.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

nix-shell -p nixpkgs-review --run "nixpkgs-review pr 120178
1 package updated:
elixir-ls

$ nix --experimental-features nix-command build --no-link --keep-going --option build-use-sandbox relaxed -f /home/main/.cache/nixpkgs-review/pr-120178-1/build.nix
error: --- Error ------------------------------------------------------------------ nix
builder for '/nix/store/1alx4m9i428pmayzqb0ah51wc0d6g3fg-source.drv' failed with exit code 1; last 10 log lines:
   * [new tag]         v0.5.0            -> v0.5.0
   * [new tag]         v0.6.0            -> v0.6.0
   * [new tag]         v0.6.2            -> v0.6.2
   * [new tag]         v0.6.3            -> v0.6.3
   * [new tag]         v0.6.4            -> v0.6.4
   * [new tag]         v0.6.5            -> v0.6.5
   * [new tag]         v0.7.0            -> v0.7.0
  fatal: Not a valid object name
  Unrecognized git object type:
  Unable to checkout refs/tags/v{version} from https://github.com/elixir-lsp/elixir-ls.git.
error: --- InvalidPath ------------------------------------------------------------ nix
path '/nix/store/4vp6pnpvn8kl2arrn4gdlxmxnl58iz23-source' is not valid

Link to currently reviewing PR:
https://github.com/NixOS/nixpkgs/pull/120178

1 package failed to build:
elixir_ls

error: --- Error ------------------------------------------------------------------ nix
build log of '/nix/store/wa2ksyah3iigqqvc4pwfn9d813wlbyyg-elixir-ls-0.7.0.drv' is not available

@happysalada Hi, I thought this would be a quick one - but sadly not.

Result of nixpkgs-review pr 120178 at 225f60f8 run on aarch64-linux 1

1 package failed to build:

elixir_ls

Note that build failures may predate this PR, and could be nondeterministic or hardware dependent.
Please exercise your independent judgement.

Hey sorry, it looks like this is my fault
https://github.com/NixOS/nixpkgs/pull/120296
I'm waiting for the build to finish and will merge this. Your PR should pass after that.

Result of nixpkgs-review pr 120178 run on x86_64-darwin 1

1 package built:

elixir_ls

@GrahamcOfBorg eval

I think it's clear that the error was unrelated, I'm launching a build and will merge as soon as it completes (since it's just a simple update).

Including the changelog for reference  https://github.com/hexpm/hex/blob/main/CHANGELOG.md