Name in sqlc.embed() is not following the right pattern

Version
1.20.0
What happened?
I have a query with sqlc.embed(role) to generate an embed struct inside another bug the name is not following the camelcase pattern:
the name expected would be driveLicense not drivelicense
type GetEmployeeRow struct {
	ID           uuid.UUID    `json:"id"`
	FirstName    string       `json:"firstName"`
	LastName     string       `json:"lastName"`
	Birthdate    time.Time    `json:"birthdate"`
	Email        *string      `json:"email"`
	PhoneNumber  string       `json:"phoneNumber"`
	ImageUrl     *string      `json:"imageUrl"`
	State        bool         `json:"state"`
	Role         Role         `json:"role"`
	DriveLicense DriveLicense `json:"drivelicense"`
}

Relevant log output
No response
Database schema
No response
SQL queries
-- name: GetEmployee :one
SELECT
  employee.id,
  employee.first_name,
  employee.last_name,
  employee.birthdate,
  employee.email,
  employee.phone_number,
  employee.image_url,
  employee.state,
  sqlc.embed(role),
  sqlc.embed(drive_license)
FROM employee
LEFT JOIN role ON employee.role_id = role.id
LEFT JOIN drive_license ON employee.drive_license_id = drive_license.id
WHERE employee.id = $1 AND employee.deleted_at IS NULL LIMIT 1;

Configuration
---
version: "2"
sql:
  - engine: "postgresql"
    queries: "internal/databases/postgres/queries"
    schema: "internal/databases/postgres/migrations"
    gen:
      go:
        out: "internal/databases/postgres/sqlc"
        emit_json_tags: true
        json_tags_case_style: "camel"
        overrides:
          - db_type: "pg_catalog.varchar"
            go_type:
              type: "string"
              pointer: true
            nullable: true
          - db_type: "pg_catalog.text"
            go_type:
              type: "string"
              pointer: true
            nullable: true
          - column: "*.created_at"
            go_struct_tag: json:"-"
          - column: "*.updated_at"
            go_struct_tag: json:"-"
          - column: "*.deleted_at"
            go_struct_tag: json:"-"

Playground URL
No response
What operating system are you using?
MacOS 13.4 Ventura
What database engines are you using?
PostgreSQL
What type of code are you generating?
Go

Apparently my sqlc was not in version 1.20


Allow x-axis ticks to get inclined.

What is the purpose of this pull request? (Check any that's applicable)

[ ] Feature
[ ] Bug fix
[ ] Dependency updates
[ ] Documentation updates
[ ] Build related changes
[ ] Changes an existing functionality
[ ] Other, please explain:

Does this introduce a breaking change?

[ ] Yes
[ ] No

What changes did you make? (Give an overview)
Add any screenshots

Can you post some screenshots in the PR description with different orientations as well?
It will give a better perspective for our UX.


Update dependencies

This PR resolves issues in the unmerged Steward's PRs.
Changes:

update scalac to 2.12.12/2.13.3 and resolve new warnings
update dependencies to the latest versions and resolve incompatibilities with fs2 and zio
remove sbt-mdoc plugin as it's already in sbt-microsites to resolve bin incompatibility
fmt

closes #381 and closes #385 and closes #389 and closes #391 and closes #394

closes #381 and closes #385 and closes #389 and closes #391 and closes #394

I just edited your description because it doesn't work when you link them in a comment :smile: thanks!


Pytest cannot discover tests

Version: 1.39.2
Commit: 6ab598523be7a800d7f3eb4d92d7ab9a66069390
Date: 2019-10-15T15:33:00.827Z
Electron: 4.2.10
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Darwin x64 18.7.0
python.jediEnabled: False
Hello everyone,
The vscode cannot discover tests in my python project. I found that "Python Test Log" has empty error message (you can ignore tensorflow errors).
python /Users/artemav/.vscode/extensions/ms-python.python-2019.10.41019/pythonFiles/testing_tools/run_adapter.py discover pytest -- -s ./tests
Test Discovery failed:
Error: 2019-10-21 16:35:04.172030: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-10-21 16:35:04.182567: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x7f821b09eff0 executing computations on platform Host. Devices:
2019-10-21 16:35:04.182589: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): Host, Default Version
2019-10-21 16:35:04.744358: W tensorflow/python/util/util.cc:299] Sets are not currently considered sequences, but this may change in the future, so consider avoiding using them.

I have a pretty standard setup for the python project. You can check it here: https://github.com/GPflow/GPflow/tree/develop-2.0. If I run the script for discovering tests which is used by vscode, it works fine in the terminal and exists without an error:
→ python /Users/artemav/.vscode/extensions/ms-python.python-2019.10.41019/pythonFiles/testing_tools/run_adapter.py discover pytest -- -s ./tests
2019-10-21 16:56:25.587619: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-10-21 16:56:25.605854: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x7fae5c31c680 executing computations on platform Host. Devices:
2019-10-21 16:56:25.605880: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): Host, Default Version
2019-10-21 16:56:26.194016: W tensorflow/python/util/util.cc:299] Sets are not currently considered sequences, but this may change in the future, so consider avoiding using them.
[{"rootid": ".", "root": "/Users/artemav/code/GPflow", "parents": [{"id": "./tests", "kind": "folder", "name": "tests", "parentid": ".", "relpath": "./tests"}, {"id": "./tests/test_broadcasted_conditionals.py", "kind": "file", "name": "test_broadcasted_conditionals.py", "parentid": "./tests", "relpath": "./tests/test_broadcasted_conditionals.py"}...
→ echo $?
0

https://github.com/microsoft/vscode-python/blob/566d759340d527a0f5b628bcca95d1eecaf0c698/src/client/testing/common/services/discovery.ts#L43-L47
Looks like the throwOnStdErr: true causes this. @DonJayamanne I am guessing this is set to true to avoid issues with parsing/test runs after discovery? or can be be false. @luabud Should this be a option?

@karthiknadig  would this be solved by https://github.com/microsoft/vscode-python/issues/6594?


feat(Settings): Add settings layout

Stuck this as a separate component within the chatbot: https://chatbot-pr-chatbot-360.surge.sh/patternfly-ai/chatbot/ui/react/settings/
Docs: https://chatbot-pr-chatbot-360.surge.sh/patternfly-ai/chatbot/ui/#settings
I added a dropdown that can also toggle it, but unsure if we want other stuff in this demo. I know Nicole generally wants them simple, but we don't have any guidelines for this yet.

Preview: https://chatbot-pr-chatbot-360.surge.sh

They should be able to fill in whatever they would like! I can add this to the demo if you'd like it in there though.

A side thought that I had (which isn't a blocker) is if we should add one of the "back to bottom" buttons to the default overlay display?

Just because I couldn't initially tell that there were more items to scroll to, due to the scroll bar only appearing once you start scrolling:

Kind of a small thing that may not actually be a confusion for any real users, but thought I'd mention it to see thoughts/in case it's not a difficult add!

Let's add a scroll bar that shows on default if there is extra items


CommandBar button is only usable after an explicit page reload (identical to #6290): The value for "domElement" must not be undefined

Target SharePoint environment
SharePoint Online
What SharePoint development model, framework, SDK or API is this about?
💥 SharePoint Framework
Developer environment
Windows
What browser(s) / client(s) have you tested

[ ] 💥 Internet Explorer
[X] 💥 Microsoft Edge
[X] 💥 Google Chrome
[ ] 💥 FireFox
[ ] 💥 Safari
[ ] mobile (iOS/iPadOS)
[ ] mobile (Android)
[ ] not applicable
[ ] other (enter in the "Additional environment details" area below)

Additional environment details
SharePoint Framework version: 1.4.1
Node.js version: 10.17.0
Google Chrom version: 117.0.5938.150
Microsoft Edge version: 119.0.2151.2
Describe the bug / error
We have implemented several CommandBar buttons, packaged as a single ListViewCommandSet extension. They all inherit from the base class BaseDialog to display a custom dialog. Since about Oct 9 2023, if you visit one of our sites / doc libs and click on one of the buttons, the corresponding dialog does not open. Instead a message appears on the browser console:
listview-host-assembly_en-us_4eaecaa5e24a01d8756e667b8bb41ba0.js:3  Uncaught (in promise) Error: The value for "domElement" must not be undefined
at e.isNotNullOrUndefined (listview-host-assembly_en-us_4eaecaa5e24a01d8756e667b8bb41ba0.js:3:183747)
at e.get (listview-host-assembly_en-us_4eaecaa5e24a01d8756e667b8bb41ba0.js:74:530446)
at new e (sp-dialog_none_a126ebbd6f28c7c7cb2e.js:1:38336)
at Function.get (sp-dialog_none_a126ebbd6f28c7c7cb2e.js:1:38711)
at e.show (sp-dialog_none_a126ebbd6f28c7c7cb2e.js:1:8347)
at t. (dms-list-view-command-set_1e04919bbd80ba989615bb6010592e77.js:26:50566)
at dms-list-view-command-set_1e04919bbd80ba989615bb6010592e77.js:26:38666
at Object.next (dms-list-view-command-set_1e04919bbd80ba989615bb6010592e77.js:26:38771)
at dms-list-view-command-set_1e04919bbd80ba989615bb6010592e77.js:26:37715
at new Promise ()
Only a refresh of the page solves this - but loading the page twice is not an option for our customers.
Steps to reproduce
Basically the same as in #6290.
Here is one of our simpler dialogs:
import { BaseDialog, Dialog } from "@microsoft/sp-dialog";
import { override } from "@microsoft/decorators";
import {
    DefaultButton,
    PrimaryButton,
    DialogFooter,
    DialogContent,
    Spinner,
    autobind
} from 'office-ui-fabric-react';
import * as ReactDOM from "react-dom";
import * as React from "react";
import * as strings from 'GlobalSolutionStrings';
import ErrorDialog from "./ErrorDialog";
import OkCancelDialogContent from "./OkCancelDialogContent";
import { executeRequest } from "../../ApiRequests/ApiRequestExecutor";
import { HttpClientResponse } from '@microsoft/sp-http';
import { IClientSideComponentProperties } from "../../Models/IClientSideComponentProperties";
import { ExtensionContext } from '@microsoft/sp-extension-base';
import { IFindusResult } from "../../Models/IFindusResult";
import * as dialogStrings from 'DMSListViewCommandSetStrings';

export default abstract class OkCancelDialog extends BaseDialog {
    protected _cloudServiceBaseUrl: string;
    protected _cloudServiceClientId: string;
    protected _title: string;
    protected _okButtonText: string;
    protected _cancelButtonText: string;
    protected _errorClosesMainDialog: boolean;
    protected _showSpinner: boolean;
    protected _showError: boolean;
    protected _errorMessage: string;
    protected _errorObject: any;
    protected _contentComponent: OkCancelDialogContent;
    protected _reloadPageAfterOk: boolean;

    constructor(title: string, okButtonText: string, cancelButtonText?: string,  errorClosesMainDialog: boolean = true, reloadPageAfterOk: boolean = true) {
        super();
        this._title = title;
        this._okButtonText = okButtonText;
        this._cancelButtonText = cancelButtonText || strings.CancelButtonText;
        this._errorClosesMainDialog = errorClosesMainDialog;
        this._reloadPageAfterOk = reloadPageAfterOk;
    }

    /**
     * Put your submit code here. A spinner is shown while the promise is not yet resolved (or errors out).
     */
    protected abstract submit(): Promise<void>;

    /***
     * Action on Cancel Button click
     */
    @autobind
    protected cancel(): void {
        this.close();
    }

    protected abstract renderContent(): JSX.Element;

    @autobind
    protected renderErrorContent(error?: any): JSX.Element {
        let lines: string[] = [];

        lines.push(strings.UnexpectedErrorText);
        if (error) {
            if (typeof (error) === 'string') {
                const errorAsString = error as string;
                lines.push(...errorAsString.split('\n'));
            }
            else if (error instanceof Array) {
                lines.push(...error);
            }
        }

        if (lines.length === 1 && this._errorMessage) {
            lines.push(...this._errorMessage.split('\n'));
        }
        return (

                {lines.map(line =>
{line}
)}

        )
    }

    @autobind
    protected renderAdditionalButtons(showSpinner: boolean): JSX.Element {
        return null;
    }

    @autobind
    protected async onErrorDialogClose(): Promise<void> {
        if (this._errorClosesMainDialog) {
            this.close();
        }
    }

    @autobind
    protected showErrorMessage(error?): void {
        if (this._contentComponent) {
            this._contentComponent.showError(() => this.renderErrorContent(error));
        }
        else {
            this._showError = true;
            this._errorObject = error;
        }
    }

    @autobind
    protected async okButtonClick(): Promise<void> {
        await this.submit()
            .then(() => {
                this.close();
                if(this._reloadPageAfterOk){
                    window.location.reload();
                }
            })
            .catch(error => {
                this.showErrorMessage(error);
            });
    }

    @override
    protected onAfterClose(): void {
        super.onAfterClose();
        // Clean up the element for the next dialog
        ReactDOM.unmountComponentAtNode(this.domElement);
    }

    @override
    public render(): void {
        if (this._showError) {
            //error occured before content could be rendered
            ReactDOM.render(

                <ErrorDialog
                    title={strings.ErrorDialogDefaultTitle}
                    content={() => this.renderErrorContent(this._errorObject)}
                    closeAction={this.close}
                    isSecondary={false}
                />
                , this.domElement
            );
        }
        else {
            ReactDOM.render(
                <OkCancelDialogContent
                    title={this._title}
                    okButtonText={this._okButtonText}
                    cancelButtonText={this._cancelButtonText}
                    submit={this.okButtonClick}
                    cancel={this.cancel}
                    content={this.renderContent}
                    additionalButtons={this.renderAdditionalButtons}
                    onErrorDialogClose={this.onErrorDialogClose}
                    ref={c => this._contentComponent = c}
                />
                , this.domElement
            );
        }
    }

    protected async issueApiRequest(url: string, payload: any, context: ExtensionContext, options: IClientSideComponentProperties) {
        const response: HttpClientResponse = await executeRequest(url, payload, context, options);

        if (!response.ok)
        {
            if (response.headers.get("Content-Type") === "application/json; charset=utf-8") {
                const findusResult: IFindusResult = await response.json();

                if (findusResult) {
                    this._errorMessage = `Findus error code: ${findusResult.ErrorCode} - ${localize(findusResult)}`;
                }
            }
            else {
                this._errorMessage = 'Status code ' + response.status;
            }
        }
        else if ((response as any).redirected && response.url.includes('?ErrorText='))
            this._errorMessage = decodeURIComponent(response.url.substring(response.url.indexOf('?ErrorText=') + 11));
        else
            this._errorMessage = undefined;

        if (this._errorMessage) {
            throw this._errorMessage;
        }
    }
}

function localize(findusResult: IFindusResult): string {
  let result: string;

  switch (findusResult.ErrorCode) {
    case 10000:
      result = dialogStrings.Archive.FolderIsEmptyText;
      break;
    case 10001:
      result = dialogStrings.Archive.FolderContainsTooBigFiles;
      for (const detail of findusResult.ResultDetails) {
          result += '\n ● ' + detail.Context;
      }
      break;
    default:
      result = findusResult.Message;
      for (const detail of findusResult.ResultDetails) {
          result += '\n ● ' + detail.Message + ': ' + detail.Context;
      }
      break;
  }

  return result;
}

This is our package.json:
{
  "name": "quick-navigation",
  "version": "0.0.1",
  "private": true,
  "main": "lib/index.js",
  "engines": {
    "node": ">=0.10.0"
  },
  "scripts": {
    "build": "gulp bundle",
    "clean": "gulp clean",
    "test": "gulp test"
  },
  "dependencies": {
    "@microsoft/decorators": "~1.4.0",
    "@microsoft/sp-application-base": "~1.4.0",
    "@microsoft/sp-core-library": "~1.4.0",
    "@microsoft/sp-dialog": "~1.4.0",
    "@microsoft/sp-listview-extensibility": "~1.4.0",
    "@microsoft/sp-office-ui-fabric-core": "~1.4.0",
    "@pnp/common": "^1.0.1",
    "@pnp/logging": "^1.0.1",
    "@pnp/odata": "^1.0.1",
    "@pnp/sp": "^1.0.1",
    "@pnp/spfx-controls-react": "1.19.0",
    "@pnp/spfx-property-controls": "1.19.0",
    "@types/es6-promise": "0.0.33",
    "@types/webpack-env": "1.13.1",
    "jsoncrush": "^1.1.6",
    "react-input-mask": "^2.0.4",
    "react-masked-text": "0.4.1",
    "react-native-text-input-mask": "^2.0.0",
    "react-text-mask": "^5.4.3"
  },
  "devDependencies": {
    "@microsoft/sp-build-web": "~1.4.1",
    "@microsoft/sp-module-interfaces": "~1.4.1",
    "@microsoft/sp-webpart-workbench": "~1.4.1",
    "@types/chai": "3.4.34",
    "@types/microsoft-ajax": "0.0.35",
    "@types/mocha": "2.2.38",
    "@types/sharepoint": "^2016.1.8",
    "ajv": "~5.2.2",
    "css-loader": "^3.2.0",
    "gulp": "~3.9.1",
    "raw-loader": "^4.0.2",
    "sp-pnp-js": "^3.0.4",
    "style-loader": "^1.0.0",
    "terser-webpack-plugin-legacy": "1.2.3",
    "webpack-merge": "4.2.1"
  }
}

Expected behavior
I would expected the dialog to show instead of an exception.

Thank you @NinjaSciurus for reporting it.
Sound like a regression - will be looking into it.

@NinjaSciurus - I am unable to repro the issue with the simple test (attaching it for your reference).
dialog-1-4-1.zip
Could you please check if this solution is working on your end and check if there are differences with your solution?
Also, independently of the issue, I'd recommend to explicitly include React, ReactDom and office-ui-fabric-react packages as depedencies of your project.
Currently you're using shadow dependencies that can work unexpectedly.

@AJIXuMuK Thank you for investigating. I will check the simple test first thing when I am back in the office on monday morning.

@AJIXuMuK Here is our current status:
We found out that the error probability increases when you navigate into a subfolder of the current doc lib (our setup does not contain lists, our solution only runs on doc libs). This might be because only a partial page refresh happens and the domElement (selector is div[data-sp-placeholder="DialogContainer"]) might not be loaded correctly anymore. Still, we are not able to reproduce the issue in 100% of our tests but often enough so that it bothers our customer.
I followed your advice and explicitely included react, react-dom and office-ui-fabric-react in our project (for anyone finding this: a v1.4.1 SPFx solution needs react v15.6.2, react-dom v15.6.2 and office-ui-fabric-react v5.21). Please note that we never fiddled around with the content of the package.json manually and the original list was created by yeoman on initial project creation - to be fair, this was done years ago, so the explicit inclusions might have been missing then and could be fixed now (I did not check with a current version of yeoman). Interestingly, the simple test solution you uploaded also does not include the packages explicitely so I am unsure if this should be changed in yeoman or it is just a recommendation when things don't work in very special cases. Anyway, after building and deploying the new version, I have a really hard time to reproduce the issue - it might already be fixed and we need to test it now extensively.
I also deployed the simple test solution - it works fine (the button icon urls result in a HTTP 404 but that's irrelevant to this case). The main difference is that it's meant for lists and our solution works only on doc libs (CustomAction.RegistrationId = 101).
So I am a little unsure were we stand. I will test the updated solution thoroughly now and respond here if I find anything suspicious. For now, the issue seems to be fixed. Thank you for your help!

Thank you @NinjaSciurus for all the information provided.

Interestingly, the simple test solution you uploaded also does not include the packages explicitely

I did it for a purpose to align with your current solution as much as possible.
I will keep it open for a week or so if you find something else to share.
Hopefully, you're unblocked!

We haven't heard any further complaints from our customer - adding the react dependencies explicitely did indeed resolve the issue. Thanks again!


Update script-header.html

Improvement to code

Thanks @nadinequinr3 - is this still draft mode ?

I just wanted to check the build looked ok before putting it ready for review :) I keep discovering new things from those Hugo videos


How to set minimum time limit to 30 minutes forward to current time?

I tried it in this way but it didn't help. Kindly help. Thanks in advance.
timePicker.setMinTime(now.get(Calendar.HOUR_OF_DAY), now.get(Calendar.MINUTE) + 30, 0);

Manipulate the Calendar object up front.
Calendar now = Calendar.getInstance();
now.add(Calendar.MINUTE, 30);
timePicker.setMinTime(now.get(Calendar.HOUR_OF_DAY, now.get(Calendar.MINUTE), 0);

For reference: https://developer.android.com/reference/java/util/Calendar.html

Updated version of the answer:
Calendar now = Calendar.getInstance();
now.add(Calendar.MINUTE, 30);
            Timepoint timePoint = new Timepoint(now.get(Calendar.HOUR_OF_DAY), now.get(Calendar.MINUTE), 0);
            tpd.setMinTime(timePoint);


WIP: Save artifacts per pipeline

@firecow how can I make test to go find artifacts dynamically in a folder named after  ?

It's OK for now I'm working on a way to refacto tests.

@firecow help, I can't figure out why my test does not work :sos:

Both issues implementations works, except tests, due to my low competence in TS/JS :sweat_smile:

I managed to sort out my tests 🍾

@bcouetil I'll give it one last review, then we shall get this master piece into ze master

@bcouetil Let me know, when you done.. Then i shall merge it.

Change requested all done, final round of local test too ; merge when you want :smile:

@bcouetil I'm merging now. Lets test via master build for a while, and then I'll release a version.


Fix mmap flags for AOT loader on non-Linux SGX platforms

fix https://github.com/bytecodealliance/wasm-micro-runtime/issues/3883

LGTM


[Bug]

Is there an existing issue for this?

[X] Yes, I have searched the existing issues and none of them match my problem.

Product Variant
Cloud (http://rxresu.me)
Current Behavior
You removed or changed earlier templates- it deleted my additional element and broke my CV... I need to work on it again.  So, for future-please, don't change earlier templates.
Expected Behavior
No response
Steps To Reproduce
No response
What browsers are you seeing the problem on?
No response
What template are you using?
None
Anything else?
No response

Please host older version somewhere

Please donate so I can afford to host them somewhere. It's expensive 😢

@AmruthPillai Why do you even change/remove already exist template by knowing you will broke some CVs...

Same here, my resume is completely destroyed.

Removing great templates to replace by bland templates was really not the play

I am also really sad, now the background color does not work, it is really sad


Add leader selection

https://github.com/open-cluster-management/backlog/issues/10163
Signed-off-by: Dominique Vernier<EMAIL_ADDRESS>

/lgtm


Add note to documentation about memory consumption in python-cybox

See https://github.com/STIXProject/python-stix/issues/351#issuecomment-396643607 and CybOXProject/python-cybox#317.

@emmanvg can you make the same change in the 1.1.1.x branch?


Mducharme flysystem

Coverage decreased (-0.003%) to 11.227% when pulling 707f60eabbc5b545cb9e6f515104053fb5362661 on mducharme-flysystem into 952b35528d641f3bf5a96d12eaa5ad7825ae226c on master.


Upload normalized expression to S3 and R code to the repo

Need to upload normalized expression data for each dataset(CD4, CD8, CD14, etc) to S3
Need to upload Rcode (DEseq2) which was used to get DEG

added R code for normalization using DESeq2


Ensure inline_array keeps attributes

Currently inline_array won't keep attrs around for arrays that it inlines. This PR makes sure attrs are preserved.
cc @martindurant

We are hitting a hard crash here (on shutdown of the pytest session), which I can only imagine is coming from HDF5 or maybe grib. This will take some debugging...

Just checking, my guess is this failure is happening on main too. I don't see how that could be related to the changes here (though maybe I'm missing something)

this failure is happening on main too

Not locally :|

I just updated the test added here to use a more simple attrs. This seemed to help locally, let's see if it helps in CI. I don't know why the previous attrs were problematic, but the simplified attrs should still be sufficient

Since it's OK for py38 but crashed on py310, suggests a version problem. I note h5py 3.9.0 just came out.

Confirmed: pinning h5py makes tests pass https://github.com/fsspec/kerchunk/actions/runs/5978456412/job/16220596021?pr=349

^ cc @ajelenak

Pushing the temp fix here, and we can deal with whatever is the underlying problem separately.

Thanks @martindurant


Quarkus 3 upgrade

@markquintontulloch we got it!!!

@markquintontulloch we got it!!!

nice!

@markquintontulloch not sure why hibernate thinks it needs to recreate these... I will double check them all.

@markquintontulloch so I think with the new hibernate 6 we have to move the @Column(unique = true) to something like the following:
@Table(
	indexes = {
		@Index(name = "annotation_curie_index", columnList = "curie"),
		@Index(name = "annotation_uniqueId_index", columnList = "uniqueId"),
		@Index(name = "annotation_modEntityId_index", columnList = "modEntityId"),
		@Index(name = "annotation_modInternalId_index", columnList = "modInternalId"),
		@Index(name = "annotation_dataprovider_index", columnList = "dataProvider_id"),
	}, uniqueConstraints = {
		@UniqueConstraint(name = "annotation_modentityid_uk", columnNames = "modEntityId"),
		@UniqueConstraint(name = "annotation_modinternalid_uk", columnNames = "modInternalId"),
	}
)


refactor(JAVA-SDK) mm-5237 & mm-5239: refractory and adding tests

unit tests and integration tests

Can you add a .gitignore with basic stuff:
.idea/
target/
*.DS_Store
*.iml
pom.xml.versionsBackup
/config-override/
.classpath
.settings/
config.dump
.project

Some fixes to the readme.md:
1- Can you use only real markdown tags and remove the html like:
#4. Installation & Configuration
2- Remove empty section (with N/A)
3- Add documentation on how to use the example.

I think it would be clearer for users if the integration test suite is moved to its own project (examples) while the client stay is its own sub-project(clients).  Therefore, your project structure would change to:
mnubo-java-sdk
|-- example
|-- clients

If nobody has more comments I am going to accept my MR. I need to work on the next step of this issue...


Update HelloWorld.kt

Hi there! Please submit your solution via the Exercism CLI or website instead.


stderr.addError exits programs

Tested with DartVM-1.24.2 and DartVM-2.0.0-dev.44.0.
The following program exits with unhandled exception.
import 'dart:async';
import 'dart:io';

main() async {
  for (var i = 0; i < 5; i++) {
    print(i);
    try {
      await m();
    } catch (e) {
      print('error $i');
      print(e);
      stderr.addError(e);
    }
  }
}

Future m() async {
  print('m');
  throw 'throw';
}

It produces the following output.  I'll investigate.

It appears that this is consistent behavior with all streams which do not have error handlers registered, so I think this is working as intended.
import 'dart:async';

main() async {
  final c = new StreamController<String>();
  c.stream.listen((e) {
    print("Stream: $e");
  });
  c.add('Foobar');
  c.addError('Error!');
}

Which results in the following exception:
#0      _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart:1114)
#1      _microtaskLoop (dart:async/schedule_microtask.dart:41)
#2      _startMicrotaskLoop (dart:async/schedule_microtask.dart:50)
#3      _runPendingImmediateCallback (dart:isolate-patch/dart:isolate/isolate_patch.dart:113)
#4      _RawReceivePortImpl._handleMessage (dart:isolate-patch/dart:isolate/isolate_patch.dart:166)

Is there any reason why you want to call addError on stderr? If you're just trying to print to stderr you can use stderr.write to accomplish that.

I used addError because it was its signature was close to the catch (e,s). This behaviour is really unintuitive.


Update 00-get-started.md

because we'll have 2 project:
Blazor Server and WebAssembly (Client) for next up

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: trithanh07 sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

We don't actually use the Blazor Server project created in this step for the rest of the workshop, so I don't think these additional steps are really necessary. In general in this workshop we focus on the Blazor component model and not on the different hosting models. Thanks for the suggestion though!


Add volume mount support for job containers

This adds basic directory mount support for job containers. As any path on the host
is already accessible from the container, the concept of volume mounts is a bit funny
for job containers. However, it still makes sense to treat the volume mount point where
the container image is mounted as where most things should be found regarding the container.
The manner in which this is done is by appending the container mount path for the volume to
where the rootfs volume is mounted on the host and then symlinking it.
So:
Container rootfs volume path = "C:\C\123456789abcdefgh"
Example #1
{
"host_path": "C:\mydir"
"container_path": "\dir\in\container"
}
"C:\mydir" would be symlinked to "C:\C\123456789abcdefgh\dir\in\container"
Example #2
Drive letters will be stripped
{
"host_path": "C:\mydir"
"container_path": "C:\dir\in\container"
}
"C:\mydir" would be symlinked to "C:\C\123456789abcdefgh\dir\in\container"
Signed-off-by: Daniel Canter<EMAIL_ADDRESS>

Need to add a test here, will do shortly

@jsturtevant fyi

I have added the necessary PR in k/k to allow this code to work @jsturtevant  @dcantah PTAL https://github.com/kubernetes/kubernetes/pull/103434

@anmaxvl Removed the k8s workaround mentioned in the last round as it's no longer needed

@katiewasnothere updated, ptal


Feature request: Using rest parameter before other arguments in function signature

TypeScript Version:  2.2.1
It would be useful to support the following signature:
function fn(...args: string[], options: IOptions, callback?: () => void) {
}

Some examples of use cases:

head.js
hapi.js drop(arg1, arg2, ..., argn, callback)

Apologies if this is duplicated.  I'm sure it must be but I've got lost in the github issues

Actually, this will be rejected so that TypeScript remains a superset of Javascript; as ECMA2015 does not allow for the above mentioned functionality.  I'm closing this but it would be good to hear from anyone with anything to add to this issue / link it to an existing duplicate issue.


client is unaware of unhealthy server when getting response

Because client pins to one endpoint if possible, it will always make requests to one server. If the target server is isolated from etcd cluster and becomes unhealthy for a long time, the client will be outdated too for that long time. We don't provide way to handle it or warn it today.

/cc @mx2323 You might want to follow on this.

Is this still an issue?
Raft says:

The leader handles all client requests (if a client contacts a follower, the follower redirects it to the leader).

Can we use the same mechanism to notify client at least the target server is not reachable? When used with proxy, I see the error message of proxy endpoint is not available when the proxy is wrongly configured. Does etcd handle differently in this case?
Thanks,

@gyuho For watch and read, it gets the data from local store. It is allowed/normal for clients to get data from local store. We just don't provide way to handle or warn about unhealthy server today.

I see. Thanks,

@yichengq @gyuho if a client turns on client.GetOption.Quorum, reading from leader's store is enforced so the client can be aware of unhealthy server.
For example,

create a cluster with 3 nodes
create a key
kill 2 nodes
get the key with etcdctl get with the option --quorum (which turns on client.GetOption.Quorum)
in such a sequence, the get request in 4th step will fail because of losing quorum. So I think current etcd already has a solution for this issue.

The issue isn't on reads, it's when a watch is registered on an etcd server, but the server on which the watch is sent to is partitioned from the rest of the etcd cluster. In these situations, the client will sit with a watch untriggered when it could have gone to another server and gotten the new update.

@mx2323 thanks for your pointing, I couldn't consider the case of watch.

closed by https://github.com/coreos/etcd/pull/5332

The readme still says reads can be satisfied by unhealthy member, and references this issue. Is that still the case? If not, perhaps amend the readme?

Readme still seems to be out of date.


chore(deps): update common-dev-assets digest to f67a17c

This PR contains the following updates:

Package
Update
Change

common-dev-assets
digest
88d2291 -> f67a17c

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


stdlib: clean up framework depends

What's in this pull request?

Resolved bug number: (SR-)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

This is no longer necessary as the imports will correctly create the dependency.
Clean up the unnecessary dependencies.  Noticed by Dimitri Gribenko.

@swift-ci Please test and merge


[release-0.4] Update kube rbac proxy and disable http/2 on it

Mitigates HTTP/2 CVE
Backport of #262
ECOPROJECT-1731

/override e2e-k8s


The Chamfer Distance loss is still calculated like Neural Pull?

Hi, thanks for sharing the code.
In your paper, you mentioned you "look for the surface point pi in P which is the closest to zi and minimize the distance between zi and pi".
It means we need to find the nearest point after moving the query points, but in your code, I found you still use the nearest point found in the original query points, just similar with the Neural Pull did.
I am not sure whether I misunderstand.

Hi,
Thanks for your interest. Actually the difference lies in the calculation way of L1 and Chamfer Distance. The L1 loss force each query point to move to the unique point on P. (e.g. [a->A],[b->B],[c->C]. However, Chamfer Distance Loss is computed to minimize the distance between [a,b,c] and [A,B,C], where the consistency can be guaranteed since if moved a' is closer to B or C,  the loss can also descend. Please refer to Sec3.2 of our paper for more details and analysis.
For implementation, we use the same data preparation as Neural-Pull. The points here in calculating loss is actually a set of points sampled from raw point cloud P, which is practically equivalent to P in implementation.

Thank you for your reply.
I wonder why the L1 loss for the Neural Pull works well by just forcing the moved query points to be closer to the corresponding points in surface points. Is it because of the difference between UDF and SDF predictions?
From my perspective, if we use the L1 loss like Neural Pull, we can force the UDF to obtain more accurate gradients. And in Figure 3 of Sec3.2, the points on the surface are so sparse that the query points seem to find some conflict optimization direction, does the dense surface points could alleviate the consistency issue?

Hi,
Yes, it is more difficult for designing a proper optimization target for UDF than SDF, since SDF only focus on learning a watertight shape, while UDF can be used in reconstructing shapes and scenes with arbitrary architecture where the optimization target used in Neural-Pull fails in many complex situation.
The L1 loss can not guarantee the consistency of fields as we discussed in the paper, but if the point cloud is dense enough, I believe this issue can be partly alleviated. However, the point cloud is always a  discrete approximation of the surface and it is not possible for achieving a highly dense raw point cloud in the real world situation.

I'm closing this issue due to its inactivity. However, please feel free to reopen it if your problem persists.


Host browser fail 2.9.0

Bug description
After enabling host managemnt features, trying to acess "Browse"
error message:
Failure
open /host: no such file or directory
Expected behavior
A clear and concise description of what you expected to happen.
Portainer Logs
Provide the logs of your Portainer container or Service.
You can see how here
(Logs how to link is broken....)
Steps to reproduce the issue:

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

Technical details:

Portainer version: 2.9.0

Docker version (managed by Portainer): 20.10..8

Kubernetes version (managed by Portainer):

Platform (windows/linux): linux containers on windows

Command used to start Portainer (docker run -p 9443:9443 portainer/portainer):
docker run -d -p 8000:8000 -p 9000:9000 -p 9443:9443
--name=portainer --restart=always
-v /var/run/docker.sock:/var/run/docker.sock
-v portainer_data:/data
portainer/portainer-ce:2.9.0

Browser: Chrome

Use Case (delete as appropriate): Using Portainer at Home, Using Portainer in a Commerical setup.
Using Portainer at Home,

Have you reviewed our technical documentation and knowledge base? Yes/No
Yes

Additional context
Add any other context about the problem here.

Pl confirm if an agent is running on ce-2.9.0 as well, i am using 2.9.0 for portainer as well as agent on same machine

I have

Are you running the agent version 2.9.0 with a bind mount like:
    volumes:
      - /:/host

I had the same in 2.20.3. This is not a bug but misinformation. In documentation everything is clear, need to mount /host/ in your Portainer agent.
I think, instead of putting an error message, there should be clear information in Portainer GUI on how to do it e.g.

tooltip in Enable host management features feature - more details
instead of Failure Open /host no such file or directory - should be Directory /host not found - please make sure you have read the documentation / make sure the agent has mounted /host directory ...


Investigate LiDAR (via Arduino)

Resource Links:
https://github.com/FRCteam4909/2018-PowerUp/blob/master/src/main/java/org/team4909/bionicframework/hardware/core/Arduino.java
https://github.com/FRCteam4909/2018-PowerUp/blob/master/arduino/SLAVE_I2C/SLAVE_I2C.ino
http://first.wpi.edu/FRC/roborio/release/docs/java/edu/wpi/first/wpilibj/I2C.html

@ashwinc12 given that we have it working directly with the Rio, do we plan to look into this or are we good to close?

Can move this to #25 ... ended up using PWM rather than Arduino


kubelet targets down - context deadline exceeded

What did you do?
Open the targets list on prometheus web UI page, some kubelet targets are down.
Did you expect to see some different?
I expect all the targets are up unless something wrong.
Environment

Prometheus Operator version:
prometheus-operator:v0.31.1

Kubernetes version information:
v1.13.7-gke.19

Kubernetes cluster kind:
gke

Anything else we need to know?:
The down kubelet k8s nodes actually were removed before, so the ip addresses don't exist. But the scape list  not refreshed.

It happened to me also cause I was using preemptible VMs . Most likely those kubelets with state DOWN come from not existing Nodes . You can confirm it by cross checking IPs .

I had this error after upgrading the K8s version of my GKE nodepools. It was caching old nodes.
Just needed to delete the prom pod and wait for it to reload and populate the new node IPs.

I presume a good question to be asked here, is when are kubelet targets refreshed?  I am too running into this issue, and between a combination of node pools being rotated in and out of clusters, alongside preemptible instances, I have a lot of targets that are no longer available for scraping.  What configuration parameters are available to help assist the prometheus operator in refreshing the list of available kubelets that it should attempt to scrape from?

Kubelets are refreshed every 3min: https://github.com/coreos/prometheus-operator/blob/eea008c42a12ba3f050d840442c4bdd5942fb92f/pkg/prometheus/operator.go#L556. I wouldn't mind if this was moved to be informer based so it happens faster than delayed by up to 3 min.

Is this the only way, currently, that kublet targets are refreshed?
In looking at one of my clusters, it's got two nodes configured as targets that haven't been attached to the cluster for at least 7 days if not longer.  When viewing details on the service-discovery endpoints, there are even more nodes that haven't been around for awhile.  If we are refreshing this data every 3 minutes, presumably successfully, this can only mean that the data being given to the operator is potentially stale.
We're using GKE, and I ponder if this stale data is being held in the API for some reason and we need to find some way to filter it out perhaps?
Is there a debug log option I can enable that might help us shed light on this issue?  Or perhaps a method for which I can query the API in the same fashion that we are updating this data?

I have the same issue

I don’t know off the top of my head if debug mode prints much about node sync, but do give it a try.

Sure issue here

Same issue on GKE. All the UNHEALTHY endpoints have existed in the past but have been removed from the cluster since days.

Do you see those when you do kubectl get nodes as well?

Do you see those when you do kubectl get nodes as well?

Nope they are gone.

Nope, gone here too.

@brancz I'm using GKE and using user defined nodepools to spin up and down nodes. Even for the nodes that are existing and not using preemptible VM's also having the same issue. Similar to others, some of the nodes that are spin down also in the kubelet target list.
Please find below one of an existing node's info
status:
  addresses:
  - address: <IP_ADDRESS>
    type: InternalIP
  - address: ""
    type: ExternalIP
  - address: gke-mt-dev-us-east1-pool-1-XXXXXX.internal
    type: InternalDNS
  - address: gke-mt-dev-us-east1-pool-1-XXXXXX.internal
    type: Hostname
  conditions:
  - lastHeartbeatTime: "2020-05-26T07:10:43Z"
    lastTransitionTime: "2020-04-25T23:36:47Z"
    message: kubelet is posting ready status. AppArmor enabled
    reason: KubeletReady
    status: "True"
    type: Ready
  nodeInfo:
    architecture: amd64
    bootID: XXXXXX
    containerRuntimeVersion: docker://19.3.1
    kernelVersion: 4.19.104+
    kubeProxyVersion: v1.15.11-gke.5
    kubeletVersion: v1.15.11-gke.5
    machineID: XXXXXX
    operatingSystem: linux
    osImage: Container-Optimized OS from Google
    systemUUID: XXXXXXX

Please let me know for more details as well.

Could one of you try to put prometheus operator in debug mode and see if it prints something useful about the node sync?

Hi,
We had the same issue.
We are using GKE version v1.16.11-gke.5
Prometheus-operator version 0.40
We bumped the GKE and the prometheus-operator version to the last available ones, we updated the cluster role ressource to have access to ressources but we still have those info message (probably because a feature is not enabled inside GKE):
$ k logs -f prometheus-operator-6b75fc7c89-hgqkb
ts=2020-07-23T14:26:04.292184853Z caller=main.go:217 msg="Starting Prometheus Operator version '0.40.0'."
ts=2020-07-23T14:26:04.392873375Z caller=main.go:104 msg="Starting insecure server on [::]:8080"
level=info ts=2020-07-23T14:26:04.398954981Z caller=operator.go:295 component=thanosoperator msg="connection established" cluster-version=v1.16.11-gke.5
level=info ts=2020-07-23T14:26:04.399006446Z caller=operator.go:304 component=thanosoperator msg="CRD API endpoints ready"
level=info ts=2020-07-23T14:26:04.398967401Z caller=operator.go:200 component=alertmanageroperator msg="connection established" cluster-version=v1.16.11-gke.5
level=info ts=2020-07-23T14:26:04.399055047Z caller=operator.go:209 component=alertmanageroperator msg="CRD API endpoints ready"
level=info ts=2020-07-23T14:26:04.399196205Z caller=operator.go:461 component=prometheusoperator msg="connection established" cluster-version=v1.16.11-gke.5
level=info ts=2020-07-23T14:26:04.399249993Z caller=operator.go:470 component=prometheusoperator msg="CRD API endpoints ready"
E0723 14:26:04.495830       1 reflector.go:178] github.com/coreos/prometheus-operator/pkg/thanos/operator.go:311: Failed to list *v1.ThanosRuler: the server could not find the requested resource (get thanosrulers.monitoring.coreos.com)
E0723 14:26:04.591720       1 reflector.go:178] github.com/coreos/prometheus-operator/pkg/prometheus/operator.go:479: Failed to list *v1.PodMonitor: the server could not find the requested resource (get podmonitors.monitoring.coreos.com)
level=debug ts=2020-07-23T14:26:05.3913129Z caller=operator.go:401 component=prometheusoperator msg="successfully synced Prometheus cache"
level=debug ts=2020-07-23T14:26:05.391562542Z caller=operator.go:401 component=prometheusoperator msg="successfully synced ServiceMonitor cache"
level=debug ts=2020-07-23T14:26:05.399335545Z caller=operator.go:165 component=alertmanageroperator msg="successfully synced Alertmanager cache"
level=debug ts=2020-07-23T14:26:05.399371829Z caller=operator.go:165 component=alertmanageroperator msg="successfully synced StatefulSet cache"
level=info ts=2020-07-23T14:26:05.399381514Z caller=operator.go:171 component=alertmanageroperator msg="successfully synced all caches"
level=debug ts=2020-07-23T14:26:05.399463969Z caller=operator.go:338 component=alertmanageroperator msg="Alertmanager added" key=monitoring/main
level=warn ts=2020-07-23T14:26:05.399539357Z caller=operator.go:484 component=alertmanageroperator msg="alertmanager key=monitoring/main, field spec.baseImage is deprecated, 'spec.image' field should be used instead"
level=info ts=2020-07-23T14:26:05.399583117Z caller=operator.go:427 component=alertmanageroperator msg="sync alertmanager" key=monitoring/main
level=info ts=2020-07-23T14:26:05.597322998Z caller=operator.go:427 component=alertmanageroperator msg="sync alertmanager" key=monitoring/main

We removed the kubectl endpoint but it was not recreated, even if we deleted the prometheus-operator pod to force a "refresh" (as we thought).
From what we know, it should be updated every 3 minutes but it is not the case.
We found out the Kubernetes service kubelet is empty : ```
$ k describe service kubelet -n kube-system
Name:              kubelet
Namespace:         kube-system
Labels:            k8s-app=kubelet
Annotations:
Selector:
Type:              ClusterIP
IP:                None
Port:              https-metrics  10250/TCP
TargetPort:        10250/TCP
Endpoints:
Session Affinity:  None
Events:

Also, where should the `k8s-app=kubelet` should be present ? On each node ?

This is a blocking issue as some of our metrics are not available anymore.

Hi,
We had the same issue.
We are using GKE version v1.16.11-gke.5
Prometheus-operator version 0.40
We bumped the GKE and the prometheus-operator version to the last available ones, we updated the cluster role ressource to have access to ressources but we still have those info message (probably because a feature is not enabled inside GKE):
$ k logs -f prometheus-operator-6b75fc7c89-hgqkb
ts=2020-07-23T14:26:04.292184853Z caller=main.go:217 msg="Starting Prometheus Operator version '0.40.0'."
ts=2020-07-23T14:26:04.392873375Z caller=main.go:104 msg="Starting insecure server on [::]:8080"
level=info ts=2020-07-23T14:26:04.398954981Z caller=operator.go:295 component=thanosoperator msg="connection established" cluster-version=v1.16.11-gke.5
level=info ts=2020-07-23T14:26:04.399006446Z caller=operator.go:304 component=thanosoperator msg="CRD API endpoints ready"
level=info ts=2020-07-23T14:26:04.398967401Z caller=operator.go:200 component=alertmanageroperator msg="connection established" cluster-version=v1.16.11-gke.5
level=info ts=2020-07-23T14:26:04.399055047Z caller=operator.go:209 component=alertmanageroperator msg="CRD API endpoints ready"
level=info ts=2020-07-23T14:26:04.399196205Z caller=operator.go:461 component=prometheusoperator msg="connection established" cluster-version=v1.16.11-gke.5
level=info ts=2020-07-23T14:26:04.399249993Z caller=operator.go:470 component=prometheusoperator msg="CRD API endpoints ready"
E0723 14:26:04.495830       1 reflector.go:178] github.com/coreos/prometheus-operator/pkg/thanos/operator.go:311: Failed to list *v1.ThanosRuler: the server could not find the requested resource (get thanosrulers.monitoring.coreos.com)
E0723 14:26:04.591720       1 reflector.go:178] github.com/coreos/prometheus-operator/pkg/prometheus/operator.go:479: Failed to list *v1.PodMonitor: the server could not find the requested resource (get podmonitors.monitoring.coreos.com)
level=debug ts=2020-07-23T14:26:05.3913129Z caller=operator.go:401 component=prometheusoperator msg="successfully synced Prometheus cache"
level=debug ts=2020-07-23T14:26:05.391562542Z caller=operator.go:401 component=prometheusoperator msg="successfully synced ServiceMonitor cache"
level=debug ts=2020-07-23T14:26:05.399335545Z caller=operator.go:165 component=alertmanageroperator msg="successfully synced Alertmanager cache"
level=debug ts=2020-07-23T14:26:05.399371829Z caller=operator.go:165 component=alertmanageroperator msg="successfully synced StatefulSet cache"
level=info ts=2020-07-23T14:26:05.399381514Z caller=operator.go:171 component=alertmanageroperator msg="successfully synced all caches"
level=debug ts=2020-07-23T14:26:05.399463969Z caller=operator.go:338 component=alertmanageroperator msg="Alertmanager added" key=monitoring/main
level=warn ts=2020-07-23T14:26:05.399539357Z caller=operator.go:484 component=alertmanageroperator msg="alertmanager key=monitoring/main, field spec.baseImage is deprecated, 'spec.image' field should be used instead"
level=info ts=2020-07-23T14:26:05.399583117Z caller=operator.go:427 component=alertmanageroperator msg="sync alertmanager" key=monitoring/main
level=info ts=2020-07-23T14:26:05.597322998Z caller=operator.go:427 component=alertmanageroperator msg="sync alertmanager" key=monitoring/main

We removed the kubectl endpoint but it was not recreated, even if we deleted the prometheus-operator pod to force a "refresh" (as we thought).
From what we know, it should be updated every 3 minutes but it is not the case.
We found out the Kubernetes service kubelet is empty :
$ k describe service kubelet -n kube-system
Name:              kubelet
Namespace:         kube-system
Labels:            k8s-app=kubelet
Annotations:       <none>
Selector:          <none>
Type:              ClusterIP
IP:                None
Port:              https-metrics  10250/TCP
TargetPort:        10250/TCP
Endpoints:         <none>
Session Affinity:  None
Events:            <none>

Also, where should the k8s-app=kubelet should be present ? On each node ?
This is a blocking issue as some of our metrics are not available anymore.

Same issue with operator 0.29 and gke 1.16-gke.13
All kublet target are down and not reachable from prometheus

@brancz happens also on v0.38.1 prometheus operator on AWS (kops) - some kubelet targets are down for targets that are no longer exist

I am also facing the same issue any solution for this?

@maloochpich can you try with the latest Prometheus operator version + debug log level enabled?

I faced the same issue, and was able to debug it and find a solution. Probably, it won't help everyone, but my symptoms were exactly the same as for  @andybo .
So, ServiceMonitor uses the following selectors:
  namespaceSelector:
    matchNames:
    - kube-system
  selector:
    matchLabels:
      k8s-app: kubelet

It means, it tries to scrape data from all endpoints with the k8s-app: kubelet label in the kube-system namespace.
In my case, I had 3 endpoints:
# kubectl -n kube-system get ep -l k8s-app=kubelet

kube-prometheus-stack-kubelet        <IP_ADDRESS>:10255,<IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + 36 more...   2d
prometheus-operator-kubelet          <IP_ADDRESS>:10255,<IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + 27 more...   245d
prometheus-test-kube-prome-kubelet   <IP_ADDRESS>:10255,<IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + 24 more...   282d

And ServiceMonitor was trying to scrape data form all nodes with IP addresses from these 3 endpoints, but 2 endpoints left from previous installations of Prometheus Operator. As a result, some nodes were not existing anymore, and Prometheus showed the errors during reaching these targets. Mostly, they were GKE preemptible nodes, which were deleted long ago.
Sadly, I didn't save any screenshots from Prometheus for my case. But If you take a look at the screepshot from @andybo :

You can notice labels service. Those nodes, which are down, have service=prometheus-operator-kubelet, on the other hand, those nodes, which are up, have service=kubelet. It means that, first two nodes' IP addresses were taken from endpoint prometheus-operator-kubelet, and second two nodes' IP addresses were taken from endpoint kubelet. And I am sure, that # kubectl -n kube-system get ep -l k8s-app=kubelet will return something like that:
kubelet        <IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + some more...
prometheus-operator-kubelet          <IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + some more...

I my case, deletion of old endpoints helped, so Prometheus scrapes data only from existing nodes now.
As a suggestion for a fix, adding more labels to the endpoint and the selector with some dynamic values or values based on some kubernetes naming, to help prometheus identify to which installation related endpoints, e.g.:
  namespaceSelector:
    matchNames:
    - kube-system
  selector:
    matchLabels:
      k8s-app: kubelet
      installation-name: prometheus-operator-kubelet

I faced the same issue, and was able to debug it and find a solution. Probably, it won't help everyone, but my symptoms were exactly the same as for  @andybo .
So, ServiceMonitor uses the following selectors:
  namespaceSelector:
    matchNames:
    - kube-system
  selector:
    matchLabels:
      k8s-app: kubelet

It means, it tries to scrape data from all endpoints with the k8s-app: kubelet label in the kube-system namespace.
In my case, I had 3 endpoints:
# kubectl -n kube-system get ep -l k8s-app=kubelet

kube-prometheus-stack-kubelet        <IP_ADDRESS>:10255,<IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + 36 more...   2d
prometheus-operator-kubelet          <IP_ADDRESS>:10255,<IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + 27 more...   245d
prometheus-test-kube-prome-kubelet   <IP_ADDRESS>:10255,<IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + 24 more...   282d

And ServiceMonitor was trying to scrape data form all nodes with IP addresses from these 3 endpoints, but 2 endpoints left from previous installations of Prometheus Operator. As a result, some nodes were not existing anymore, and Prometheus showed the errors during reaching these targets. Mostly, they were GKE preemptible nodes, which were deleted long ago.
Sadly, I didn't save any screenshots from Prometheus for my case. But If you take a look at the screepshot from @andybo :

You can notice labels service. Those nodes, which are down, have service=prometheus-operator-kubelet, on the other hand, those nodes, which are up, have service=kubelet. It means that, first two nodes' IP addresses were taken from endpoint prometheus-operator-kubelet, and second two nodes' IP addresses were taken from endpoint kubelet. And I am sure, that # kubectl -n kube-system get ep -l k8s-app=kubelet will return something like that:
kubelet        <IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + some more...
prometheus-operator-kubelet          <IP_ADDRESS>:10255,<IP_ADDRESS>:10255 + some more...

I my case, deletion of old endpoints helped, so Prometheus scrapes data only from existing nodes now.
As a suggestion for a fix, adding more labels to the endpoint and the selector with some dynamic values or values based on some kubernetes naming, to help prometheus identify to which installation related endpoints, e.g.:
  namespaceSelector:
    matchNames:
    - kube-system
  selector:
    matchLabels:
      k8s-app: kubelet
      installation-name: prometheus-operator-kubelet


Cow: Watch jayeshvijay649(?:@gmail.com)?

Cow requests the watch of the watch_keyword jayeshvijay649(?:@gmail\.com)?. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

jayeshvijay649(?:@gmail\.com)? has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Dragonrage in Charcoal HQ


Make Containerfile license explicit

Relates to #44
Summary
Add an explicit license to the Containerfile. As a supporting artifact, like scripts, it's licensed more permissively than the project's main source code.

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

Comparison is base (3e8b173) 98.57% compared to head (bd7756a) 98.57%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #178   +/-   ##
=======================================
  Coverage   98.57%   98.57%
=======================================
  Files           4        4
  Lines         140      140
=======================================
  Hits          138      138
  Misses          2        2

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


[git commit message mode] Add and integrate

Add a simple mode to color the Parent, Author, AuthorDate, Commit,
CommitDate lines as keywords and any footers like Change-Id or
Signed-off-by as builtin style. This gives the screen a bit more color
than the flat black text.
Originally written by Shawn Pearce<EMAIL_ADDRESS>tweaked a little
bit by Michael Zhou<EMAIL_ADDRESS>to match the style of
other current modes. Also fixed matching of headers / footers when they
are indented.

Could you explain this header format ("Author: ...", etc)? Isn't the author/date/commit style metadata tracked outside of the commit message? Why would you want to put it in there?

@marijnh Our project (Gerrit) displays the metadata, eg.: https://gerrit-review.googlesource.com/#/c/75967/9//COMMIT_MSG

This is very Gerrit-specific then. I think it'd make more sense to keep it part of the Gerrit project.

Could you explain this header format ("Author: ...", etc)? Isn't the author/date/commit style metadata tracked outside of the commit message? Why would you want to put it in there?

They are technically outside of the message proper, but I think git show --format=fuller is a case legitimate enough to warrant a place in the general Git mode.

Sure, but hardly anyone types commit messages in in that format. I'm going to say no, I don't want to include this in my distribution.

@marijnh Well technically this is similar to the newly added mbox mode. Although rarely edited, the metadata is useful for viewing.

The mbox mode was a close call as well. In general, the way we're currently distributing modes is starting to hit its limits -- all the modes blow up the main package's size, and I am less and less interested in maintaining all the code for them (some of it downright awful). I'm looking at ways to push modes into separate packages, with separate maintainers, without making the burden for the user too large. Maybe NPM is widely used enough nowadays to just depend on that.

@marijnh That sounds good to me. The migration could be part of Version 6.

Agreed. 6 will happen somewhere this summer or early autumn.

(But note that it's already trivial to package up modes as NPM packages. Just no one seems to be doing it.)

We can start with some documentation to encourage people to do so.

So I assume that there will be a set of "official" modes/addons/keymaps that are recommended by CodeMirror?

The minification helper is going to go when I release 6.0. I feel almost everyone that cares about performance has their own build step nowadays, so I'm going to leave minification to that.
There'll probably be a naming convention for mode packages, so that you can search NPM for, say, "codemirror-mode-" to easily find such packages. I'll continue maintaining the modes that I wrote or consider very important -- but as packages.


Document Flux Telegram package

PR: https://github.com/influxdata/flux/pull/2857

The implementation now follows the flux contribution guide, the documentation is in README.ms inside the package along with the source code.


Add Digital Nepal School

@ednkapil Regrettably, this request has signs of fraud. I have to close it without merging.


Android: Story notifications

This is a big ticket feature. There are two parts to this feature, this ticket only focuses on the actual notification. Choosing notifications for feeds is the next ticket, but we can launch that later.

Go on the web and right-click feeds to setup "Notifications" for android. You should be able to see it as it's available to admins.

After /reader/feeds?flat=true is loaded, loop through every feed and check if 'android' is in any feed.notification_types. If so, request notification privileges on the device.

Once android gives you a notification token that can be used for pushing remote notifications, send that token to POST to /notifications/android_token/ with android_token as the key. This is idempotent, so you can submit this over and over again with the same token. That's what we do on iOS, to handle changing tokens. This endpoint is also device-aware, so multiple devices can submit different tokens to the same endpoint and each device will receive notifications.

Use http://www.newsblur.com/notifications/force_push?feed_id=X&count=N to test notifications. Feel free to hit it as much as you like.
Ideally I'd like to get images in the notification preview, as I did on iOS.

Mark read and Save story actions do not open the app, they just silently work. Tapping on the notification opens the feed and then finds the story.

Is there any background documentation on what a token is and the design rationale for this?  The app already has all the metadata needed to know when to post a notification that a feed has a new story without the whole extra round-trip to the server.  That is, if notification_types has the android flag, can't the app just post a notification when those feeds have a new story?
Also, from a system standpoint, one-notification-per-story will likely not work.  Individual notifications can be heavyweight to process on some devices and the system will limit them and/or break if they are overused.  The typical design pattern on Android for a UX like this is to have a single notification that says "you have N new stories" and it changes as the count does rather than stacking up notifications for each new story.

The server has to push the notification to Google's servers. I need that token to send. I looked this up, seems like the GCM is now Firebase.
And one notification per story is exactly what I'm going for here. People can choose which feeds are getting notifications. And they can limit them to Focus Stories only. This is not for all stories, just a few that a user is highlighting.

Here's the token I was referring to: https://firebase.google.com/docs/cloud-messaging/android/first-message

And if you take a look at the python library for FCM, it just takes a token and the message, exactly like I do for iOS: https://pypi.python.org/pypi/pyfcm/

From a design standpoint, using GCM is very overkill.  The app already gets all the necessary data when it does normal background syncs.  GCM is more for helping build apps that don't already have a working BG sync API.  We can issue notifications just fine with our existing sync loop, and adding GCM support would take the complexity of the app to a whole new level.
Also, bear in mind that not all Android devices support GCM, but the do all support basic notfications that would be built on your existing API infrastructure.

I don't want to use the bg sync, since that's not nearly as fast as GCM/FCM. I looked at how complicated it is to integrate and it seems like it'll take less than a day, same as it did on iOS. I'm not sure I see where the complexity is. NewsBlur servers send a FCM message with the story_hash, feed_id, title, and ~1.5k of content. The device displays those stories and when the user selects one, the app opens up, opens the feed, finds the story, and that's that.

GCM does slightly speed up notifications by a few seconds/minutes compared to our existing sync framework, but in a majority of cases it will be perceptually similar.  One tangible benefit of GCM is that it hides a fraction of our app's battery and network usage from the user.
The downsides are pretty rough, though:
On Android, you don't actually talk to the GCM API yourself; you are required to delegate syncs to a whole extra framework on the device and use a hybrid userspace/kernel library to communicate with it.  Built-from-source Android or non-GOOG-branded Android (read: most of Asia) don't support it. (none of my three daily-driver devices support GCM, though all 'stock' US/EU Nexus/Pixel devices should, so long as they are current on system updates)  Use of GCM would also make the app ineligible for distribution via F-Droid unless we create and maintain a GCM-free branch.

Ok, build it by scanning for 'android' in notification_types and then do a double-check for is_focus and only notify focus stories then. I'll see how that works in practice, since I have the stories coming in on iOS and web already. I'm not convinced that we shouldn't implement GCM, but I'd like to try this first.

If you like I have the last notification_date, although for your purposes it will always be wrong because by the time you get it, the notifications will have been sent and the date too far forward.

Pull #970 implements the notification lifecycle as discussed.  It is currently gated behind having the Download Stories option checked, since normal users don't have an enablement option yet.
Next we will have to discuss the actual style and content of the notifications.  The UI depicted in the iOS screenshots is, in a number of ways, incompatible with the Android platform that the vast majority of users are running.  We will have to design the UI around the platform limitations on notification grouping, amount of content that can be presented, etc.  As a placeholder, the notification shows the number of new stories and what feeds they are from.  Tapping it takes you into the app.  Let's discuss specific additional UI features one by one to figure out which can be done for which users.

One of the first issues to tackle is notification cardinality.
While it is easy to implement the posting of a separate notification for every new story, this is recommended against.  Multiple notifications will be grouped by the OS, showing a single, summary notification that often only shows the app name, which isn't a terribly clear UX.  Thus, the platform guidelines suggest internally handling a situation where we have more than one notification to show and creating and issuing a single summary notification that can still have working title / body / actions.  This grouped style is the boilerplate I used in the beta impl.  What needs to be explored is whether there is any utility in also having a specialized, more detailed notification style for single stories, or if the case of a single, new story will be rare compared to having n>=2 new stories at any given time.
It is also worth noting that Android 7 introduced a whole new framework for notifications that does allow for significantly better handling of high cardinality.  It is well suited for apps that post lots of small, individually consumable things like messages, or stories.  However, at present, about 0.3% of users are on Android 7+, and it will probably be at least a year before even a majority of our advanced users would see this impl.  Still worth looking ahead, to, though.

I've had the notifications build loaded all night but I'm not receiving many notifications. I got one that said "1 New Story  - Daring Fireball" but my iphone, which is configured with the same notifications, has received tons.
We should be splitting up each story into a single notification. This notification feature is not for general interest feeds, this is about high importance feeds that deserve immediate attention. This is also why I am starting from a position of not wanting the 10-minute background fetch. Turns out my phone had offline stories disabled. This should be auto-enabled for every phone. So if I had setup Android notifications, they wouldn't have worked. It's possible I turned it off, but I can't imagine why I would do that. People who are worried about their storage (and on iOS, a full 10,000 stories takes 1-2GB of space) can turn it off.
Notifications need a story title and a small excerpt of the story content. I've seen other notifications on Android that work this way, namely Messenger, the NYTimes, and Twitter. I don't mind if it only hits half of our users. It's incentive to upgrade their phones. I'm trying to make the experience for people on tech that supports the latest [2-3 versions] of OS features, even if that's only 50% of users. The rest can stick with an older, unmaintained version.

Like the "Screenshot captured" notification, I'd love to see the story image as the larger image and the feed favicon as the smaller icon. When no story image, use the favicon large. And the title can be a single line with both feed_title and story_title: "Publisher: Story Title"

I'm not receiving many notifications
Turns out my phone had offline stories disabled

Please see my release notes.  I temporarily gated notifications behind that option so you have a way to disable them without the public UI containing spoilers for the new feature.

This should be auto-enabled for every phone

Will do once the option is in place.

We should be splitting up each story into a single notification

As mentioned above, this has serious negative effects for the app when implemented for pre-Android 7 devices (currently 99.7% worldwide).  Showing a single notification for a single story is fine.  Showing one for each of 2 or 3 will be shown on some devices (mostly tablets) without problem.  More than that will get rolled up and the content hidden.  Significantly more than that may cause the system to stop showing your notifications.  As mentioned, the solution is to bundle up more than 1 (or 2, if you want to risk it) into a summary notification so you can at least stll get nontrivial data into the status bar.  This lets notifications keep going through with rich content over which we have control.

Notifications need a story title and a small excerpt of the story content

Yep, working out how to do this in the best-supported way once we tackle the cardinality issue.

Like the "Screenshot captured" notification, I'd love to see the story image as the larger image and the feed favicon as the smaller icon. When no story image, use the favicon large

Doable with some extra custom view code work for a subset of devices.  I will follow up with you with some time estimates for how much various degrees of support will take.

I'm seeing 4 NYTimes notifications in the same day. I realize they might be rolled up, I'm OK with that. I do not want to truncate the notifications, that's not the point of them. This is for immediate action stories.
"1 New Story" should be the "Feed Title: Story Title"
"Daring Fireball" should be the first 200 characters of the story.
The logo should be the story_image or the favicon, with NewsBlur app icon logo in lower right.

Took me a few days to get my hands on a genuine 7.1 device.  I just rolled back the smoke test code from mainline to support the bugfix release and to clean the slate to work on pretty much all of the things you mention.
My next goal is to get a second smoke test build with all of the above to show some examples of how high-cardinality notifications look on various platforms and to explore the difference in limits.

I've noticed that the NYT only shows the latest 4 or 5 stories. Can we retract story notifications so that we keep the number down to most recent 5 at all times?

Update on this: reworking the favico fetching system a bit so they can be used in notifications.  The existing fetcher was closely tied to handing them off to a View, but the notification system needs them as an in-memory Bitmap.  Cleaning things up so that the icons can be efficiently fetched and used by both subsystems.

Ok, I'm pushing out the current build as v5.0. Since notifications are not yet launched, we don't need to do anything about them then, since they aren't shown anywhere unless you have enabled notifications on the web.

Next PR contains the second alpha of notification support.  Note that it is still gated behind story sync being enabled so beta users don't get the confusing notification option when they have no way of actually turning them on from web.  I will expose the proper option when you are ready to launch.

I've noticed that the NYT only shows the latest 4 or 5 stories. Can we retract story notifications so that we keep the number down to most recent 5 at all times?

I did a ton of research into how many notifications an app can push on various platform versions before it encounters problems.  The behaviour, as you might expect, varies a ton from device to device.  In brief, though, so long as notification throughput doesn't exceed about 50 per wake cycle, we won't get banned.  Devices start rolling up notifications when more than about 6 are displayed (or how many will fit on screen), with varying visual effects.  I think the NYT folks have it spot on by limiting to 5, since that is about as many as can politely fit on screen for a high-percentile device size.  I've implemented the same limit of 5, giving priority to focus stories and newer stories over older ones.

The logo should be the story_image or the favicon, with NewsBlur app icon logo in lower right.

Favicons are now in place.  What background colour would you like for the overlay/default icon? (In your example, NYT was using black and Twitter was using a blue.  Android limits you to a solid colour with a while foreground.  The unset default varies by device and is usually a grey or off-blue.)
So far, all of this has been implemented for the 99% case of pre-Android 7.  We should definitely enhance the app to use v7+ features, though, because they greatly, greatly improve the UX for apps that push more than one notification at a time.  (on a personal note, I find the pre-7 Android UX for apps that push multiple notifications to be so ugly, I turn them off entirely)

This is awesome, I'm excited to play with it.

deployed to Prod


UUID

I would love to be able to use the uuid instead the mac, since my phone uses random mac dresses, is that posible?

Are you using a "beacon simulator" -app in your phone?


Sync error: tag the same image with lots of tags, can't see all the tags in destination

I tagged the hello-world from 1 to 100, and pushed them to the source host.  It displayed correctly in the UI of the source host. Also, I can see a lot of sync records. However, when I turned to the UI of the destination host, it only showed two tags of the image. See below:
src:

dst:

@ywk253100 I guess this is because the tags have the identical digests?  Could you revisit the logic so even the tags have same digest they should be synced to destination?

I will fix it.

fixed after check, closed.


Please Whitelist Reddit

@dwelle Hi, Currently, Reddit links are not allowed to be embedded. Could you please whitelist Reddit links to enable successful embedding?
The Reddit documentation may be helpful; you can find it here: Reddit Embed Documentation.
If no one is available to address this issue at the moment, I would be happy to create a pull request to resolve it.
Many thanks

Hi @dwelle @jiweiyuan , if no one is working on this issue then I can pick it and solve it.

Yeah, feel free to open a PR for reddit!
Look into embeddable.ts, add it to the necessary allowlists. If reddit needs a srcdoc or otherwise needs some custom renderer, then write a parser for it so that we don't paste whatever the user pastes verbatim (e.g. check twitter embed).

closed via #8099


Remove quotes and take only the table name

Some layers' table_name field have the following format "rilos-katia".alcohol_export_v2 and this could be parse with the actual method.
Please @Kartones take a look to this PR :)

Please try this with organization users who have visualizations with tables from other users of the same org.
Eg.: User B has a vis which has a layer with User A shared table. This will cause similar "conflictive names" and it should work...

@Kartones take a look to the change. I think this way is going to check for all the cases. ie.
"user_username": "ethervoid",
"visualization_table_names": [
"fl_insurance_sample",
"\"ethervoid-10\".alchohol_export_v2"
],`

Looks better, for the future, as soon as a rake becomes more complex than a mere query, I'd build cartodb class/helper/utility/whatever, both to keep rakes small (a defect from the past) and to be able to add tests to non-trivial parts (like yours)

:+1:

Yup I've thought about that and I come to the same conclusion, this rake is too complex for just a rake so I have to move logic to a helper or make a service for it


build: bump cosmos-sdk version to v0.44.3

Description
closes: #193

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[x] Appropriate labels applied
[x] Targeted PR against correct branch
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[x] Re-reviewed Files changed in the Github PR explorer
[x] Review Codecov Report in the comment section below once CI passes

Farming has a dependency on liquidity module for simapp, so need to bump liquidity module after https://github.com/tendermint/liquidity/pull/461 merged and released new version liquidity with SDK v0.44.3

We will hold the merge for a while until we are sure of Gaia v6 Vega's cosmos-sdk version.

Gaia Vega v6.0.0-rc3 confirmed using cosmos-sdk v0.44.3, so let me proceed this PR


Update mainargs to 0.5.0

About this PR
📦 Updates com.lihaoyi:mainargs from 0.4.0 to 0.5.0
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

🔍 Files still referring to the old version number
The following files still refer to the old version number (0.4.0).
You might want to review and update them manually.
build.sc
docs/modules/ROOT/pages/Library_Dependencies.adoc
docs/modules/ROOT/pages/Thirdparty_Plugins.adoc
example/scalabuilds/2-custom-tasks/build.sc
readme.adoc
scalanativelib/src/mill/scalanativelib/ScalaNativeModule.scala

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.lihaoyi", artifactId = "mainargs" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.lihaoyi", artifactId = "mainargs" }
}]

labels: library-update, early-semver-major, semver-spec-minor, version-scheme:early-semver, old-version-remains, commit-count:1

Superseded by #2452


Add missing extensionASTNodes

In my effort to port extendSchema from graphql-js to php, I noticed that some extensionASTNodes are currently not defined. This PR will add missing extensionASTNodes and also allows for extending the schema.
My big PR including "extendSchema" (with all the tests) will follow when this PR is merged.

I don't really know how to improve the test coverage of the static create method of SchemaConfig. I don't see any test for this method... could use some help here.

Great! Looking forward to the extendSchema feature!


Disable certain pan gestures

It would be nice to have the possibility to control whether you want the user to change the volume and brightness of the screen with a pan gesture or not.

@mittenimraum  Hi, thank you for your suggestion, the next version I will add.

panGesture  UIPanGestureRecognizer  control sound and brightness.

Hello, is there any update on this?


Some unresolved issues

Similarly to https://github.com/flutter-tizen/flutter-tizen/issues/60, here are some works to be done for the engine and our embedder. Please open a dedicated issue or PR if you are interested with any.

Alternative logging method on TVs (avoid using __dlog_print)
Advanced continuous integration (automated integration test and performance comparison)
Non-fatal error "xkbcommon: ERROR: couldn't find a Compose file for locale" on app launch
Endless thread creation on watch devices ("Thread added to display, Thread removed to display, ...")
Implement platform channel methods (setPreferredOrientations, vibrate, Clipboard.*)
Investigate why SkSL shaders cannot be collected on Tizen devices(#55)
Symbol resolution fails for system libraries in DevTools stack traces
Cupertino widget animation flickering issue on TM1 devices
Enable arm64 engine builds
Remove Tizen-specific texture APIs (#49)
Overall refactoring (should be detailed)

I checked about Endless thread creation, but I didn't see that case. Could you tell me how to reproduce it?
As a result of my checking, whether it is a flutter app or just an app, thread creation and deletion occurs several times.

@bbrto21 It occurs on my Galaxy Watch (R805) device usually after a long time from booting.  The same bug has previously been reported and fixed by #32 but it still occurs on my device occasionally. I'll show you when I manage to reproduce it.

Cupertino widget animation flickering issue on TM1 devices

I don't know what this means, somehow, it didn't occur with Evas GL.
But it happens in Evas GL direct mode, which may be because our PoC implementation is not perfect.
I'm not sure, but I leave this comment as it seems to be useful.

@bbrto21 When you start the Gallery app on a TM1 device (not emulator but real device) and open one of Cupertino widget examples, you will get what the problem is. I reported this issue for the first time in M Chat about months ago. It could be an issue with ecore_wl so it may not happen with the Evas GL backend.

@bbrto21 When you start the Gallery app on a TM1 device (not emulator but real device) and open one of Cupertino widget examples, you will get what the problem is. I reported this issue for the first time in M Chat about months ago. It could be an issue with ecore_wl so it may not happen with the Evas GL backend.

There seems to be some misunderstanding. I know that there is a problem with ecore_wl. What I'm trying to share is that I don't know why, but the problem goes away in Evas GL. Thanks for your interest!

=> Alternative logging method on TVs (avoid using __dlog_print)
Do you mean change '__dlog_print' to 'dlog_print' in tizen_log.h?
On TV 6.0 emulator, it should add '-b system' for dlogutil to print log when using __dlog_print, and add '-b apps' when using 'dlog_print'.

Yes, I was working on a method that globally works on TV, watch, and emulators. (https://github.com/swift-kim/engine/commits/dlog-internal)

On TV 6.0 test emulator, it should add '-b system' for dlogutil to print log when using __dlog_print, and add '-b apps' when using 'dlog_print'.

So this option can be enabled for test emulators only? I'll ask you how to get the test emulator personally later.

* Implement platform channel methods (`setPreferredOrientations`, `vibrate`, ~`Clipboard.*`~)

I have implemented HapticFeedback.vibrate() in this PR: https://github.com/flutter-tizen/engine/pull/75
In src/flutter/shell/platform/tizen/channels/platform_channels.cc, there's also unimplemented SystemSound.play. Is it on our TODO list? If so, I can implement it ;)

@pwasowski2 I'm not sure how often SystemSound.play is used by normal apps but of course you can implement it if you want. :)

I've marked this point as 'done'

Implement platform channel methods (setPreferredOrientations, vibrate, Clipboard.*, play)

because of PRs:

https://github.com/flutter-tizen/engine/pull/75
https://github.com/flutter-tizen/engine/pull/76
https://github.com/flutter-tizen/engine/pull/79
https://github.com/flutter-tizen/engine/pull/84

* Non-fatal error "xkbcommon: ERROR: couldn't find a Compose file for locale" on app launch (unrelated to Flutter)

@swift-kim, could you please tell how to reproduce the problem? I have launched the basic app, generated with flutter-tizen create on my TM1 device and haven't seen this error in dlog output. Have I been even looking in the right place? 😕

@pwasowski2

Launch Settings
Go -  Language and input
Go - Display language
Choose a language other than English
Launch flutter-app

I guess it's a problem with the Compose file. Actually, TM1 only has compose file of en_US.UTF-8 as below.
I don't think this is a serious problem, but I don't know why this error log doesn't occur when launch other normal Tizen apps.
sh-3.2# pwd
/usr/share/X11/locale
sh-3.2# ls
compose.dir  en_US.UTF-8  locale.alias

@bbrto21, thanks for showing how to reproduce the problem 👍  I'll look into it. I have opened a new issue for it #91

I don't know why this error log doesn't occur when launch other normal Tizen apps.

@bbrto21 The error occurs for non-Flutter apps as well. That's why I marked it "unrelated to Flutter".

@swift-kim, cc @pwasowski2
Under the same conditions, when I launched a simple native app, I didn't see this log.
How do I reproduce when I launch non-flutter apps?

@swift-kim, @bbrto21, I have run a web and native app and the problem didn't show up, too.

I used to see the message when I was launching .NET apps but I'm not sure about the native apps.

@swift-kim, could you please provide more info about this problem?

Symbol resolution fails for system libraries in DevTools stack traces

I haven't yet experienced this problem - could you please tell how to reproduce it?

@pwasowski2 If you run an app in profile mode and open the Performance view in Flutter DevTools, you will see this screen:

As you can see in the stack traces at the bottom of the view (CPU Flame Chart), symbols are resolved to their offsets within the shared objects (/proc/self/fd/35/lib/libflutter_engine.so+0x.....) but not their actual names. I'm not sure whether this is normal (because the symbols were stripped out).

@swift-kim, thanks for the detailed description. I'll look into the problem in #95.
For now, I guess that we'll at most be able to show the symbol names if "debug" RPMs for the libraries are installed.

Cupertino widget animation flickering issue on TM1 devices

This issue now occurs on watch devices too. We need to check why.

Every issue has been addressed by a separate issue or PR. Closing.


refactor(bench): reuse allocator in parser + lexer benchmarks

#3053  👈
main

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

Join @overlookmotel and the rest of your teammates on  Graphite


Make it possible to select text in posts etc

I would like all/most text to be selectable with the default system tools.
For example, on web, I can select parts of a post (by long-tapping), and then do anything with it, including (but not limited to) using the native translation feature.

On the iOS app, I would have to use the triple-dot menu to copy&paste the whole post into the notes app.
In addition to post text, I would also like alt-text of images to be selectable in app (it is on web). Maybe also profile descriptions?
Lastly, on iOS, there is automatic  (on-device!) OCR for images. I believe apps can opt into this. This would be great for images with text.
This is how it looks on web:

I’m not an iOS developer but found this article which seems to describe how to enable this: https://developer.apple.com/documentation/visionkit/enabling_live_text_interactions_with_images

I would love for this to be possible as well, unfortunately it is quite hard to implement in React Native. I got to a decent place in this branch #453 but the issue happens when you have links and rich text which makes it very difficult to do without having unintended side-effects.

would a toggle suffice as a compromise? I'd imagine when selecting text you wouldn't want to accidentally tap a link and ruin your selection

I'm available to work on this issue. Thanks

This got merged in 👍


Dev docs sweep

Description
Some small sweep changes, affecting how we talk about permissions and style for cURL is now curl.

@mmfred is this ready to merge did you need a quick set of eyes on it?


Subgraph deployment is persisted even if it fails

What is the current behavior?
Subgraphs deployments are persisted even if starting them fails.
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem.

Deploying an invalid subgraph.
Restart the node.
The node attempts to strat the invalid subgrpah.

What is the expected behavior?
Deployments of subgraphs that error on start are not persisted.

I think we'll fix this one by having a little state machine for each subgraph:

Initial processing: the initial catch up to the chain head
Streaming: caught up to chain head at least once, now just processing new blocks as they come in
Terminated: subgraph experienced an unrecoverable error during processing, will no longer process blocks

Subgraph that are terminated will not be started again on node restart, so you won't get the error again each time (we might want a way to force a retry though).

Can you give an example of how to make an invalid subgraph?

That's even better than I thought, I was just thinking of subgraphs that fail to resolve. Like in this issue @davekaj found https://github.com/graphprotocol/graph-cli/issues/166, where a space in the contract address causes a parse failure.

Ah I see, makes sense. Do you think there will be a class of errors that should cause the deployment to reject completely, but that we won't pick up on the graph-cli side? We could even block the deployment fully for those... it would take a bit more work though and I'm thinking we could handle most (all?) of them during compilation instead.
I'll plan on implementing the Terminated state either way

All right I'll see what I can do!

There is one problem with this: if the subgraph fails due to a bug in graph-node and we update graph-node, the node should try indexing the subgraph again.
So we may have to include some form of reliable graph-node versioning information in the failed -> retry or not logic.

@Jannis Don't agree with that, only a minority of failed subgraphs will have failed due to bugs, and we can't tell which ones.
This makes me think that if graph-node makes a breaking change, it should not try to redeploy any subgraphs. But making the cli and the node aware of their versions is an independent issue.

I think we probably don't want to do this, considering that it wouldn't make the failure visible on the explorer.


WIP: refact(driver): set driver name as rawfile.csi.openebs.io

Completed:

Updated the driver default name to rawfile.csi.openebs.io.
Added YAMLs to setup rawfile-csi driver using kubectl. The YAML is generated via helm template command.

Pending Tasks:

Make the provisioner name configurable via the helm value.
Change the docker image in yaml to pull master instead of ci.

Signed-off-by: kmova<EMAIL_ADDRESS>

This was resolved by @SeMeKh in 0.4.0.


Baidu Geocoder returns BD-09 geographic coordinate

The current Baidu provider[1] returned BD-09[2] coordinate (which encrypted GCJ-02 aka Mars Coordinates)[3], so it only works with Baidu Maps.
It would be nice to address it in the document[1]. Or even better if we put a translator in the module to convert it back to WGS-84 datums as the other geocoder provider.
[1] Baidu — geocoder 1.6.4 documentation http://python-geocoder.org/providers/Baidu.html
[2] Baidu Maps https://en.wikipedia.org/wiki/Baidu_Maps
[3] https://en.wikipedia.org/wiki/Restrictions_on_geographic_data_in_China#BD-09

火星坐标系统_百度百科 http://baike.baidu.com/view/3163334.htm

Awesome stuff, thanks for the information, I'll try to find an easy solution for this.

From the code, Baidu takes into account the desired type of coordinates.
With default coordtype = kwargs.get('coordtype', 'wgs84ll')
Closing the ticket :)


Flush VM Cache Before Pushing Contract Code

In our monkey-patching/duck-punching function for putContractCode, we pull the account from the state trie to put the code. However, putContractCode is called before the cache will be flushed, causing any balance in the account to be lost.
This PR flushes the VM cache before getting the account details.
This addresses #124 and should be merged in after #124.

The tests can be seen passing here:

https://travis-ci.org/trufflesuite/ganache-core/jobs/394351758#L2183
https://travis-ci.org/trufflesuite/ganache-core/jobs/394351759#L2180


packaging scripts typo fixes

Typos fixes needed to compile packages and deploy cfcr.

merged #377 which also covered this thank you for the contribution sorry for the delays


'class' instead 'className'

Hello!.
Im using:
"babel-preset-es2015": "^6.9.0"
"gulp-babel": "^6.1.2",
"babel-preset-react": "^6.5.0",
"react": "^15.1.0"

And in gulpfile.json the follow:
gulp.src('./src/assets/react/*.jsx').pipe(babel({
		presets: ['react']
	})).pipe(gulp.dest('./src/assets/js'));

In my index.jsx I have:
var Menu =  React.createClass({
  render: function() {
      return (

Element

    );
  }
});

ReactDOM.render(React.createElement(Menu, null), document.getElementById('application'))

After use gulp-babel give me that code:
var Menu = React.createClass({
  displayName: "Menu",

  render: function () {
    return React.createElement(
      "ul",
      { "class": "myClass" },
      React.createElement(
        "li",
        { "class": "selected" },
        "Element"
      )
    );
  }
});

ReactDOM.render(React.createElement(Menu, null), document.getElementById('application'));

Generated html is:

Element

No classes in html code. Thing is if I change manually 'class' attribute for 'className', html code render 'class' attrbute correctly.
Im doing something wrong?. Do you know is if version conflict between react version and gulp-babel version?
Kind regards.

I tried with:
gulp.src('./src/assets/react/*.jsx').pipe(babel({
        presets: ['react', 'es2015']
    })).pipe(gulp.dest('./src/assets/js'));

And still same issue.

This is expected behavior, JSX does not always correspond directly with HTML. To get a class attribute, you'd use className, and to get a for attribute, you'd use htmlFor.
This behavior is documented on https://facebook.github.io/react/docs/jsx-in-depth.html.

Right, I missunderstood documentation.
My apologize. Now works correctly.
Thanks for support!.
Kind regards.

No problem.