Upgrade packages

Codecov Report

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

@@          Coverage Diff          @@
##           master   #266   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           5      5
  Lines          43     43
  Branches        9      9
=====================================
  Hits           43     43

Continue to review full report at Codecov.

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


Improve DB performance

Tweaking indexes for better DB performance.
Its far from perfect, but this is a good start and a vast improvement.
Summary:

Modified identity key (id) to be non-clustered
Added clustered indexes on semantic key columns
Add non-clustered indxes on columns included in JOIN/WHERE clauses
Improved naming convention of index names

@consindo see semicolons are good

Nice! I love semi colons

^ crap diagram, but this is way better.

it still works and imports data fine
less steps
lots of clustered index scans instead
it seems faster

I'll merge now, and rebuild the databases tomorrow 👍


Remove Duplicate Element From Array Code

This is a Java program to Remove the Duplicate Elements from an array , please merge my request.

@dipanshumishra
Your PR has been successfully merged Thank you so much for your valuable contribution. Do give a star to the repo if it helped you and check other repo too for more contributions. Keep hacking


Adds button to invert color ramps

This PR:

Adds button to invert color ramps
Fixes an issue that occurred when the user changed the number of bins and the default ramps didn't have ramps for them, showing empty lines (https://github.com/CartoDB/cartodb/compare/8479-invert?expand=1#diff-b26fb5195151db7c1829f0f0e59e0544R94)

Example of the invert button:

As you can see in the gif, once you flip the ramp and open the component again, the switched ramp will became a "custom" ramp. After I created the PR, I thought that we could iterate over the list of ramps and check if any given ramp is the reversed of the current one. In that case, we could simply show the reversed ramp. I'm adding a issue to improve the behaviour.
Closes #8479

CR: @xavijam

Updated branch with the changes proposed here /cc @arianaescobar

Ok, ready to merge if there aren't any other comments.

Ok, merging with master and releasing this thing.


After switching from jasmine-marbles to jest-marbles jest spyOn stopped to work

After switching from jasmine-marbles to jest-marbles jest spyOn stopped to work:
https://stackoverflow.com/questions/55705040/marble-test-fails-with-jest-but-equivalent-test-succeeds-with-jasmine
With Jasmine is runs successful:
import { JasmineMarble } from './jasmine-marble';
import { cold } from 'jasmine-marbles';
import { switchMap } from 'rxjs/operators';
import { EMPTY, Observable } from 'rxjs';

class Service {
  foo(): Observable<any> {
    return EMPTY;
  }

  bar(a): Observable<any> {
    return EMPTY;
  }
}

describe('JasmineMarble', () => {
  it('should create an instance', () => {
    const service = new Service();

    spyOn(service, 'foo').and.returnValue(cold('a|', { a: 'A' }));
    spyOn(service, 'bar').and.returnValue(cold('a-b-c|', { a: 'A', b: 'B', c: 'C'}));

    const result$ = service.foo().pipe(switchMap(a => service.bar(a)));

    expect(result$).toBeObservable(cold('a-b-c|', { a: 'A', b: 'B', c: 'C'}));
    expect(service.bar).toHaveBeenCalledWith('A');
  });
});

With Jest it fails with this error trace:
expect(jest.fn()).toHaveBeenCalledWith(expected)

Expected mock function to have been called with:
  ["A"]
But it was not called.

The Jest code:
import { JestMarble } from './jest-marble';
import { cold } from 'jest-marbles';
import { switchMap } from 'rxjs/operators';
import { EMPTY, Observable } from 'rxjs';

class Service {
  foo(): Observable<any> {
    return EMPTY;
  }

  bar(a): Observable<any> {
    return EMPTY;
  }
}

describe('JestMarble', () => {
  it('should create an instance', () => {
    const service = new Service();

    jest.spyOn(service, 'foo').mockReturnValue(cold('a|', { a: 'A' }));
    jest.spyOn(service, 'bar').mockReturnValue(cold('a-b-c|', { a: 'A', b: 'B', c: 'C'}));

    const result$ = service.foo().pipe(switchMap(a => service.bar(a)));

    expect(result$).toBeObservable(cold('a-b-c|', { a: 'A', b: 'B', c: 'C'}));
    expect(service.bar).toHaveBeenCalledWith('A');
  });
});

You can find an example repository here: https://github.com/stijnvn/marbles The Jasmine example can be run with ng test jasmine-marbles. The Jest one with ng test jest-marbles.

If you run it in a clear Jest repository (no Jasmine stuff installed) it still reproduces?

Seems there is no jasmine dependency:
{
  "name": "project1",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve --aot  --base-href /applications/project1_dev/",
    "build": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --base-href /applications/project1/ --configuration=deva",
    "build-mock": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --aot --base-href /applications/project1mock/ --configuration=devaMock",
    "build-deva": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --base-href /applications/project1_deva/ --configuration=deva",
    "build-devb": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --base-href /applications/project1_devb/ --configuration=devb",
    "build-devc": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --base-href /applications/project1_devc/ --configuration=devc",
    "build-prod": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --base-href /applications/project1/ --prod",
    "test": "jest",
    "test-ci": "jest",
    "lint": "ng lint",
    "lint-ci": "ng lint --format tslint-teamcity-reporter",
    "bundle-report": "webpack-bundle-analyzer dist/project1/stats.json",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "=7.2.15",
    "@angular/common": "=7.2.15",
    "@angular/compiler": "=7.2.15",
    "@angular/core": "=7.2.15",
    "@angular/forms": "=7.2.15",
    "@angular/http": "=7.2.15",
    "@angular/platform-browser": "=7.2.15",
    "@angular/platform-browser-dynamic": "=7.2.15",
    "@angular/router": "=7.2.15",
    "@angular/material": "=7.3.7",
    "@angular/cdk": "=7.3.7",
    "@angular/flex-layout": "=7.0.0-beta.24",
    "@angular/material-moment-adapter": "=7.3.7",
    "@ngrx/effects": "=7.4.0",
    "@ngrx/router-store": "=7.4.0",
    "@ngrx/store": "=7.4.0",
    "@ngrx/store-devtools": "=7.4.0",
    "@ngx-translate/core": "=11.0.1",
    "@ngx-translate/http-loader": "=4.0.0",
    "core-js": "=2.5.7",
    "error-stack-parser": "=2.0.2",
    "hammerjs": "=2.0.8",
    "lodash": "=4.17.11",
    "moment": "=2.24.0",
    "ngx-take-until-destroy": "=5.4.0",
    "node-sass": "=4.12.0",
    "rxjs": "=6.5.2",
    "ts-md5": "=1.2.4",
    "web-animations-js": "=2.3.1",
    "zone.js": "=0.8.29"
  },
  "devDependencies": {
    "@angular-builders/jest": "=7.4.2",
    "@angular-devkit/build-angular": "=0.13.9",
    "@angular/cli": "=7.3.9",
    "@angular/compiler-cli": "=7.2.15",
    "@angular/language-service": "=7.2.15",
    "@ngrx/schematics": "=7.4.0",
    "@types/jest": "=23.3.14",
    "@types/lodash": "=4.14.125",
    "@types/node": "=8.10.36",
    "angular2-template-loader": "=0.6.2",
    "browser-sync": "=2.26.5",
    "codelyzer": "=4.5.0",
    "istanbul-reports": "=2.2.5",
    "jest-marbles": "2.3.1",
    "jest": "=24.8.0",
    "jest-cli": "=24.1.0",
    "jest-preset-angular": "=6.0.2",
    "jest-sonar-reporter": "=2.0.0",
    "jest-teamcity-reporter": "=0.9.0",
    "json-loader": "=0.5.7",
    "ngx-wallaby-jest": "=0.0.2",
    "protractor": "=5.4.1",
    "rxjs-tslint-rules": "=4.23.1",
    "ts-node": "=7.0.1",
    "tslint": "=5.16.0",
    "tslint-eslint-rules": "=5.4.0",
    "tslint-microsoft-contrib": "=6.1.1",
    "tslint-teamcity-reporter": "=3.2.2",
    "typescript": "=3.2.4",
    "wallaby-webpack": "=3.9.15"
  },
  "jest": {
    "preset": "jest-preset-angular",
    "moduleNameMapper": {
      "@core/(.*)": "<rootDir>/src/app/core/$1",
      "@shared/(.*)": "<rootDir>/src/app/shared/$1",
      "@views/(.*)": "<rootDir>/src/app/views/$1",
      "@app/(.*)": "<rootDir>/src/app/$1",
      "environments/(.*)": "<rootDir>/src/environments/$1"
    },
    "setupFilesAfterEnv": [
      "<rootDir>/src/setupJest.ts"
    ],
    "testResultsProcessor": "jest-teamcity-reporter"
  }
}

npm ls
...
+--<EMAIL_ADDRESS>| +--<EMAIL_ADDRESS>| +--<EMAIL_ADDRESS>| +--<EMAIL_ADDRESS>| +--<EMAIL_ADDRESS>| | `--<EMAIL_ADDRESS>| +--<EMAIL_ADDRESS>| | `--<EMAIL_ADDRESS>| |   +--<EMAIL_ADDRESS>| |   | `--<EMAIL_ADDRESS>| |   |   `--<EMAIL_ADDRESS>| |   `--<EMAIL_ADDRESS>| |     `--<EMAIL_ADDRESS>| +--<EMAIL_ADDRESS>deduped
| +--<EMAIL_ADDRESS>deduped
| +--<EMAIL_ADDRESS>| | +--<EMAIL_ADDRESS>deduped
| | +--<EMAIL_ADDRESS>deduped
| | `--<EMAIL_ADDRESS>| +--<EMAIL_ADDRESS>...

If you create a simple test case with no marbles but with spyOn does it work? If it doesn't what happens when you remove the jest-marbles package?
I'm asking because jest-marbles is an extension to jest matcher and it shouldn't affect spyOn in any way...

I'm experiencing the same issue.

Can you create a minimal reproduction please?

I actually failed creating a reproduction. It seems to work just fine in a fresh project. However in my existing project the call stack seems to be different. It feels like the test is being finished before the observable is initialised.
Given this test:
let consoleLog;

beforeEach(() => {
  consoleLog = jest.spyOn(console, 'log').mockImplementation();
});

afterEach(() => {
  console.warn('restore');
  consoleLog.mockRestore();
});

it('logs to console', () => {
  const input = new GetTouchpointSuccess({ } as any);

  actions.next(input);

  expect(effects.doSomething$).toBeObservable(cold('a', { a: input }));
  expect(consoleLog).toBeCalled();
  console.warn('end');
});

The output with jasmine-marbles is
 PASS  src/app/state/custom.effects.spec.ts
  CustomEffects
    .doSomething$
      ✓ logs to console (15ms)

  console.error src/app/state/custom.effects.ts:12
    call

  console.warn src/app/state/custom.effects.spec.ts:35
    end

  console.warn src/app/state/custom.effects.spec.ts:24
    restore

However as soon as I switch over to jest-marbles the call stack is:
 FAIL  src/app/state/custom.effects.spec.ts
  CustomEffects
    .doSomething$
      ✕ logs to console (16ms)

  ● CustomEffects › .doSomething$ › logs to console

    expect(jest.fn()).toBeCalled()

    Expected mock function to have been called, but it was not called.

      32 |
      33 |       expect(effects.doSomething$).toBeObservable(cold('a', { a: input }));
    > 34 |       expect(consoleLog).toBeCalled();
         |                          ^
      35 |       console.warn('end');
      36 |     });
      37 |   });

      at src/app/state/custom.effects.spec.ts:34:26
      at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (node_modules/zone.js/dist/zone.js:391:26)
      at ProxyZoneSpec.Object.<anonymous>.ProxyZoneSpec.onInvoke (node_modules/zone.js/dist/proxy.js:129:39)
      at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (node_modules/zone.js/dist/zone.js:390:52)
      at Zone.Object.<anonymous>.Zone.run (node_modules/zone.js/dist/zone.js:150:43)
      at Object.<anonymous> (node_modules/jest-preset-angular/zone-patch/index.js:52:27)

  console.warn src/app/state/custom.effects.spec.ts:24
    restore

  console.error src/app/state/custom.effects.ts:12
    call

  console.log src/app/state/custom.effects.ts:13
    This should not appear in tests

I've also been seeing this. I've actually been just avoiding using expect.toHaveBeenCalledWith assuming it was a limitation of jest-marbles, but I just switched to jasmine-marbles and it works fine!
Jest:

FAIL  src/pages/Workbench/epics/list-users.test.ts (51.932s)
epics
× a list users call is fired when the location changes (35ms)
● epics › a list users call is fired when the location changes
expect(jest.fn()).toHaveBeenCalledWith(expected)

Expected mock function to have been called with:
  ["organisation-123"]
But it was not called.

  88 |     // Assert
  89 |     expect(output$).toBeObservable(listUsers$);
> 90 |     expect(mockListUsersAction).toHaveBeenCalledWith("organisation-123");
     |                                 ^
  91 |   });
  92 | });

After trying to find out any work-around I stumbled upon this and using jasmine-marbles works fine!

@hanvyj would you mind providing a minimal reproduction repo? If you can also recreate the same repo but with jasmine-marbles it would be even better!

The problem is that as I mentioned previously, the test scheduler is flushed after each test in jest-marbles. Therefore effectively the observables run after the test is executed.
In jasmine-marbles the scheduler is flushed after each expect. In my opinion this is wrong, because when you do multiple assertions within a single test only the first one will pass, the others will fail because of the messed time frame. Thus, such a trivial test would fail in jasmine-marbles and pass in jest-marbles:
  it("Should pass the two expects", () => {
    const hotInput = hot("  ---^--a|");
    const coldInput = cold("---a|");
    const expected = cold("---a|");

    expect(hotInput).toBeObservable(expected);
    expect(coldInput).toBeObservable(expected);
  });

I would recommend you to test your code in a way that you could assert on the output stream.
However, if you have to assert on a side effect you could use this workaround.

Please use toSatisfyOnFlush, available since 2.5.0.
Let me know if it solves your problem and the issue can be closed.

Please use toSatisfyOnFlush, available since 2.5.0.
Let me know if it solves your problem and the issue can be closed.

sorry but, why??

Does anyone have any updates on this? I'm seeing the same issue and it's a pretty serious limitation to using jest-marbles.

@mcblum Does satisfyOnFlush work for you?

@henriquezago I explained the reasoning here.
I think it's better to have a special matcher for side effects rather than making a simple test case (like in the example) fail.

@just-jeb I can give it a try but TBH the syntax is really confusing and on first glance feels like it clutters up the code base a ton and makes it difficult for future developers to know what's happening.

@mcblum I agree the syntax is confusing, but I think it's better to have a confusing syntax for edge cases rather than having fully legitimate test flow to fail, don't you think?
I'll try to come up with a better solution, but for the meanwhile working and confusing is better than not working and clear.

toSatisfyOnFlush solved it for me but it took several hours until I figured out why toHaveBeenCalled...() didn't work.

toSatisfyOnFlush solved it for me but it took several hours until I figured out why toHaveBeenCalled...() didn't work.


🚀 Feature: Able to pass --quiet for eslint to suppress rules marked as warnings

🔖 Feature description
In backstage-cli repo lint a new option to pass --quiet globally to suppress eslint rules marked as warnings.
🎤 Context
We are introducing some global lint rule changes in our setup and would like to keep our CI running. These rules are introduced as warnings at first, and aren't mandatory for old code but are required for new changes. We have pre-commit hooks in place for new changes.
As linting is our gate in CI, failure is blocking. The --quiet option would allow our CI runs to pass and give us "annoying squiggly lines" in editor as a reminder to keep on cleaning.
✌ Possible Implementation
No response
👀 Have you spent some time to check if this feature request has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
None

I dug a bit deeper into this. It seems that eslint node.js API allows passing flags to it, but this has been introduced in eslint 9.
So options for this are to overwrite max-warnings (to have -1 when passing --quiet or upgrading to newer eslint.
https://github.com/backstage/backstage/blob/7c26bd2334b5d075127c358638a1f81f8e573b6d/packages/cli/src/commands/repo/lint.ts#L201

Hi @Glenf, would you be interested in giving it a try and open a pull request 🙂 ?

Yes, I can do a PR for this.

Awesome 🎉 , I assigned the issue to you.
Thanks in advance for the contribution 🙌🏻

Hi @Glenf, just so you know, we are at a reduced capacity this week, so it might take us a bit longer to review your pull request 🙂 .


My computer crashed when I build this project.

Please help me!

Works on my machine, problem might be your computer.
IMHO buy a new one.

 Everyone here has a beat up 15-inch MacBook Pro With a 1.
3 chip and only two gigs of RAM?


[question] Logitech G915 Reset Functions

Hello!
I'd like to preface my question by thanking ratbags & Piper teams for their amazing work implementing support for backlighting  configuration and key mapping effects on so many devices.
I've recently acquired a Logitech G915 and have been using ratbagctl and Piper to configure the G-Key macros. I seem to have made a mistake somewhere. The buttons recognised as buttons 5, 6, and 7 switch between profiles 0, 1, and 2 respectively (labelled on the keyboard as M1, M2, and M3). At some point while experimenting with my options, I appear to have done something to disable the functionality of button 7 (M3) when profile 0 is active. Consequently, if profile 0 is active, I cannot change to profile 2 directly, but have to change to profile 1 first. Only profile 0 is affected as I can change to any other profile from both 1 and 2. I don't seem to be able to do anything about this as the mapping of button 7 is labelled as "unknown" as if I'd never done anything.
Thus, my question is whether it is possible to reset the profiles to their default state or reset the function of an individual button to it's default state, such as to be as if I'd never made any changes.
Many thanks,
Mark

For additional context, here is the output from profile 0 get:
$ ratbagctl "Logitech G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD" profile 0 get
Profile 0: (active)
Name: n/a
Report Rate: 1000Hz
Button: 0 is mapped to macro '↕1'
Button: 1 is mapped to macro '↕2'
Button: 2 is mapped to macro '↓LEFTMETA ↕SPACE ↑LEFTMETA'
Button: 3 is mapped to macro '↓LEFTCTRL ↓LEFTALT ↕R ↑LEFTCTRL ↑LEFTALT'
Button: 4 is mapped to macro '↓LEFTCTRL ↓LEFTALT ↕T ↑LEFTCTRL ↑LEFTALT'
Button: 5 is mapped to 'unknown'
Button: 6 is mapped to 'unknown'
Button: 7 is mapped to 'unknown'
LED: 0, depth: rgb, mode: off
LED: 1, depth: rgb, mode: on, color: ffdc19

It is possible but libratbag does not support it. The easiest way to restore that mapping would be connecting the device to a Windows machine (or vm) and use the official software.

I had a look at this today. I plugged the keyboard into a Windows machine and the M3 button started behaving normally as soon as I opened the G-Suit. Unfortunately, it returned to the erroneous behaviour when I went back to my Linux PC. I didn't set any macros on Windows, I'll try that later, but I don't see any settings relating to the functionality of the profile section keys. Is there no way at all to permanently delete a profile in libratbag?


convert cluster.Mutex to goroutine level

This PR resolves the 'session expire' issue when the client sends API requests concurrently.
however, API processing becomes slower after the change.

Codecov Report

Merging #527 (a4083c2) into main (72065c9) will decrease coverage by 0.18%.
The diff coverage is 62.50%.

@@            Coverage Diff             @@
##             main     #527      +/-   ##
==========================================
- Coverage   80.59%   80.41%   -0.19%
==========================================
  Files          87       87
  Lines       10103    10110       +7
==========================================
- Hits         8143     8130      -13
- Misses       1510     1529      +19
- Partials      450      451       +1

Impacted Files
Coverage Δ

pkg/cluster/mutex.go
76.92% <62.50%> (-7.29%)
:arrow_down:

pkg/object/mqttproxy/session.go
74.23% <0.00%> (-7.98%)
:arrow_down:

pkg/cluster/cluster.go
51.87% <0.00%> (-1.03%)
:arrow_down:

pkg/object/mqttproxy/client.go
80.54% <0.00%> (+0.90%)
:arrow_up:

Continue to review full report at Codecov.

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


[Enhancement] Add more width options

Could you add some more width options or the ability to custom define them? I would love to use with Tailwind which has a lot of width options.

I've added all the default Tailwind options to the new release!


Remove Podfile.lock from the repo and ignore it

Result of Integration 1
Duration: 2 minutes and 26 seconds
Result: All 19 tests passed, but please fix 3 warnings.
Test Coverage: 23%.

What's your reasoning behind removing it? I like the Podfile.lock being checked in because it ensures that if you go to a certain version of the code and run pod install, you always get the same version of the dependencies as were when that version of the code was being developed. If you remove the Podfile.lock, suddenly the dependencies are not tied to the code any more and will always be the most recent ones.
Have you had an issue with Podfile.lock being checked in?

It maybe a matter of taste. But in my mind if you care about the version of a dependency, you put it in the Podfile itself. If you don't then you don't put it there.
Having the podfile.lock in the repo just looks untidy to me. like checking in .swp files into a repo.
But hey, this is totally your decision. if you like it the way it is, keep it the way it is.

I followed the instructions from thr CocoaPods people, see section about Podfile.lock in this guide: http://guides.cocoapods.org/using/using-cocoapods.html

Thank you. All clear. Closing the PR.

:+1:


CMake

Replace all Makefiles for different systems (Linux, Mac,...) and different installs of libconfig with one CMake file.

removed dependence on libconfig. now compiles with cmake


Open File/Folder/Workspace dialog opens in background after first time use

Issue Type: Bug
Hej all,
I am on Fedora Workstation 36 using the latest vscode version (1.68.1) and face a problem with the open dialogs opening in the background.
This error is reproducible all the time.
Steps to reproduce:

Open vscode
Open Folder/File/Workspace dialog. For the first time, it will open in the foreground and one can easily search the file/folder/workspace and open it.
Open Folder/File/Workspace dialog again. As this is the second time (or any other time after the first time usage), the dialog opens in the background and one has to switch the window to see it.

This is kind of annoying, as it worked with all previous versions on Fedora Workstation 36 like a charm.
Best Regards,
Tim
VS Code version: Code 1.68.1 (30d9c6cd9483b2cc586687151bcbcd635f373630, 2022-06-15T02:58:26.441Z)
OS version: Linux x64 5.18.5-200.fc36.x86_64
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-8665U CPU @ 1.90GHz (8 x 2100)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: enabled_onrasterization: disabled_softwareraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
1, 1, 1

Memory (System)
15.31GB (4.72GB free)

Process Argv
--unity-launch --crash-reporter-id b8e98bf0-3576-45d4-93f8-2edb058481a8

Screen Reader
no

VM
0%

DESKTOP_SESSION
gnome-xorg

XDG_CURRENT_DESKTOP
GNOME

XDG_SESSION_DESKTOP
gnome-xorg

XDG_SESSION_TYPE
x11

Extensions (10)

Extension
Author (truncated)
Version

vscode-markdownlint
Dav
0.47.0

gitlens
eam
12.1.1

vscode-pull-request-github
Git
0.44.0

terraform
has
2.23.0

python
ms-
2022.8.0

vscode-pylance
ms-
2022.6.30

jupyter
ms-
2022.5.1001601848

jupyter-keymap
ms-
1.0.0

jupyter-renderers
ms-
1.0.8

vscode-yaml
red
1.8.0

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonvspyt551cf:30345471
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscorecescf:30445987
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593cf:30376535
vsc1dst:30438360
pythonvs932:30410667
wslgetstarted:30449410
vscscmwlcmt:30465135
cppdebug:30492333
pylanb8912cf:30515787
vsclangdf:30486550
c4g48928:30515882

Same problem with Ubuntu Mate 20.4 and vscode 1.68.1

Merging to https://github.com/microsoft/vscode/issues/146422


Failed to produce desired output

Hi!
I tried to use image harmonization, but it seems like the model produces undesired output.
Could you tell me how can I improve the result?
Here's the code I executed.
`# image harmonization
PCTNet = ImageHarmonizationModel(device=3, model_type='CDTNet') # CDTNet
comp_img1  =  os.getcwd() + '/libcom/tests/source/composite/Comp1.png'
comp_mask1 = os.getcwd() + '/libcom/tests/source/composite_mask/Comp_mask1.png'
PCT_result1 = PCTNet(comp_img1, comp_mask1)
cv2.imwrite(os.getcwd()+'/libcom/temp.png', PCT_result1)`
And this is the result I got.

It seems that the issue arises from not loading the pretrained model. Could you please check this?


[Coverity CID :205663]Memory - corruptions in /tests/crypto/tinycrypt/src/sha256.c

Static code scan issues seen in File: /tests/crypto/tinycrypt/src/sha256.c
Category: Memory - corruptions
Function: test_sha256_6
Component: Tests
CID: 205663
Please fix or provide comments to square it off in coverity in the link: https://scan9.coverity.com/reports.htm#v32951/p12996

*** CID 205663:    (OVERRUN)
/tests/crypto/tinycrypt/src/sha256.c: 218 in test_sha256_6()
212        struct tc_sha256_state_struct s;
213
214        (void)memset(m, 0x00, sizeof(m));
215
216        (void)tc_sha256_init(&s);
217        tc_sha256_update(&s, m, sizeof(m));
     CID 205663:    (OVERRUN)
     Overrunning struct type tc_sha256_state_struct of 108 bytes by passing it to a function which accesses it at byte offset 111.
218        (void)tc_sha256_final(digest, &s);
219
220        result = check_result(6, expected, sizeof(expected),
221                                              digest, sizeof(digest), 1);
222
223        /**TESTPOINT: Check result*/
/tests/crypto/tinycrypt/src/sha256.c: 216 in test_sha256_6()
210        u8_t m[56];
211        u8_t digest[32];
212        struct tc_sha256_state_struct s;
213
214        (void)memset(m, 0x00, sizeof(m));
215
     CID 205663:    (OVERRUN)
     Overrunning struct type tc_sha256_state_struct of 108 bytes by passing it to a function which accesses it at byte offset 111.
216        (void)tc_sha256_init(&s);
217        tc_sha256_update(&s, m, sizeof(m));
218        (void)tc_sha256_final(digest, &s);
219
220        result = check_result(6, expected, sizeof(expected),
221                                              digest, sizeof(digest), 1);

We have spent some time on Security WG discussing these tinycrypt issues reported by Coverity and we concluded that they are false positive. It seems that coverity is getting confused with the way we running it with sanitycheck and multiple architectures.


WIP: Fix codecov  [skip appveyor]

/cc @chrisbra

Looks like the "Cannot open source file misc2.c" from gcov is not really fatal.
But it makes sense to use the same .gcov files as with coveralls anyway I guess.
But then I've also noticed with another project that gcov should be rather run per .gcno file (which is what codecov-bash appears to be doing (https://github.com/codecov/codecov-bash/blob/4678d212cce2078bbaaf5027af0c0dafaad6a095/codecov#L955)), not sure about cpp-coveralls - this could explain flaky coverage with coveralls.

Codecov Report

Merging #4032 into master will decrease coverage by 0.7%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #4032      +/-   ##
==========================================
- Coverage   79.16%   78.46%   -0.71%
==========================================
  Files         105      103       -2
  Lines      141127   140191     -936
==========================================
- Hits       111719   109995    -1724
- Misses      29408    30196     +788

Impacted Files
Coverage Δ

src/libvterm/src/vterm_internal.h
0% <0%> (-100%)
:arrow_down:

src/libvterm/src/rect.h
0% <0%> (-96.56%)
:arrow_down:

src/libvterm/src/mouse.c
0% <0%> (-96.43%)
:arrow_down:

src/libvterm/src/keyboard.c
28.57% <0%> (-53.25%)
:arrow_down:

src/libvterm/src/state.c
48.97% <0%> (-41.6%)
:arrow_down:

src/libvterm/src/pen.c
52.8% <0%> (-38.21%)
:arrow_down:

src/libvterm/include/vterm.h
0% <0%> (-37.5%)
:arrow_down:

src/libvterm/src/termscreen.c
58.51% <0%> (-32.77%)
:arrow_down:

src/libvterm/src/encoding.c
44.79% <0%> (-29.17%)
:arrow_down:

src/libvterm/src/parser.c
66.29% <0%> (-25.29%)
:arrow_down:

... and 11 more

Continue to review full report at Codecov.

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

Well, with codecov .gcov files might also overwrite themselves.
See https://github.com/awesomeWM/awesome/blob/c4ff89a5fe1a8829d801c196ff45319a75d8a9b1/.travis.yml#L178-L198 for a method to upload/generate them per .gcno file.
(I just noticed that it probably does not need multiple uploads with codecov)

what problem are you trying to fix here?

Have you read the comment and code with https://github.com/awesomeWM/awesome/blob/c4ff89a5fe1a8829d801c196ff45319a75d8a9b1/.travis.yml#L178-L198 ?
gcov generates multiple output files, which might overwrite themselves.
Therefore I think they should be put into subdirs.  But I am not really sure, it's just what I've noticed with another C project.

(This PR's code is not really relevant (yet) - I've just thought that the cd might be bad already in the first place).
Feel free to close this, I do not plan to work on this soon.
But I would say that this might help with flaky coverage.

Well, in it's current form this PR is not useful, so if you don't plan to work on this we might as well close it.
The codecov.io flakyness appears on individual pull requests, but on submitted patches it doesn't appear to be so bad.

Just for reference: on https://codecov.io/gh/vim/vim/branch/master/commits you can see that coverage is rather flaky.
I think https://github.com/gcovr/gcovr/ is a good tool for running gcov properly, and can generate a coverage.xml file to be uploaded to codecov then.  See https://github.com/neovim/neovim/blob/master/ci/common/submit_coverage.sh.


Update plugin framework

Since I've tested the content script support with your plugin, I thought I might as well create a pull request with the updated files.
Most of the changes are in /api, but the relevant one is the addition of the "content_scripts" key in manifest.json. I've tried the plugin and everything seems to work as expected.

webpack.config.js has also been overwritten but I believe the changes are equivalent to your previous ones, except that it's more generalised to support multiple content scripts.

webpack.config.js has also been overwritten but I believe the changes are equivalent to your previous ones, except that it's more generalised to support multiple content scripts.

Thanks @laurent22! This looks great

Thanks @laurent22! This looks great


Unable to verify secret hash for client, when testing locally

I'd prefer if this was a discussion rather than an issue but here it goes. Tried to use my own User Pool and my own AppClientID, which results in 9/23 test cases failing for the same reason NotAuthorizedException: Unable to verify secret hash for client qe19*****************53>. Did I misunderstand something?
As I am not using Vault by Hashicorp, I have no workaround as of yet for the generated env file so instead I am hardcoding the values in the test configuration
expect class AuthHandlerIntegrationTests : AbstractAuthHandlerIntegrationTests

abstract class AbstractAuthHandlerIntegrationTests {
    private val configuration = Configuration(
        Region.euCentral1,
        "qe19****************53"
    )

Running with ./gradlew test

It's basically because of this one here https://stackoverflow.com/a/41451596. Most of the api doesn't handle the client secret properly. I highly believe that's the reason while nearly all the Cognito client's for various platforms haven't emphasise that attribute.


v3.0.0a1: Bump IDOM to 1.0.0 pre-release

Description

Modify docs to use the upcoming IDOM-Core docs styling

Move docs python examples to individual files so we can run tests on them
CI for type checking + linting docs examples
Minor wording and section naming changes to feel more React-like

Bump IDOM to 1.0.0 pre-release

Use the new idom.html API
Update package.json to be compatible with idom>=1.0.0

Make the main requirements.txt be fully inclusive of all dev/user/docs dependencies to simplify development workflow
Update setup.py to automatically install the latest NPM, and be easier to debug when things fail/

Checklist:
Please update this checklist as you complete each item:

[X] Tests have been included for all bug fixes or added functionality.
[X] The changelog has been updated with any significant changes, if necessary.
[X] GitHub Issues which may be closed by this PR have been linked.

@rmorshea Can you pull down this branch and check out the new docs styling with mkdocs serve?

requirements.txt is a little out of date with the current requirements/*.txt files. Can you update it to:
-r requirements/build-docs.txt
-r requirements/build-pkg.txt
-r requirements/check-style.txt
-r requirements/check-types.txt
-r requirements/dev-env.txt
-r requirements/pkg-deps.txt
-r requirements/test-env.txt
-r requirements/test-run.txt

Overall, I think the docs look great. I'm excited to have the core docs done in this style. The only criticism I have at the moment is that there may be some over reliance on admonitions. I don't have any alternate suggestions at the moment, but this is a thought I had when looking at this particular case:

I'm realizing I completely forgot to checkout this branch when I checked out the docs. The similarity to React's docs is uncanny! In some ways I prefer the mkdocs styling. I always found this part of the sidebar in the beta docs to be busy and distracting for some reason:

and since mkdocs doesn't have that the left sidebar is much more readable.

I considered replicating the react docs sidebar while doing this styling. But ultimately agreed with you that I think mkdocs layout is better.
Additionally if we did that, we'd be changing the mkdocs jinja templates, which is more prone to catastrophically breaking under future updates of mkdocs.

requirements.txt is a little out of date with the current requirements/*.txt files. Can you update it to:

I left test-run.txt out since it seems like you already included it within dev-env.txt. I will re-add it for completeness.


Update sbt-mdoc to 2.6.0

About this PR
📦 Updates org.scalameta:sbt-mdoc from 2.3.8 to 2.6.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 (2.3.8).
You might want to review and update them manually.
website/yarn.lock

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "sbt-mdoc" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.scalameta", artifactId = "sbt-mdoc" }
}]

labels: sbt-plugin-update, early-semver-minor, semver-spec-minor, old-version-remains, commit-count:1

Superseded by #634.


Compilation warnings & errors using CDT 1.6.1

System Info:
Description:	Ubuntu 18.04.2 LTS
Release:	18.04

I had been using CDT 1.5 until today, when I upgraded to v1.6.1.
After adjusting for the fact that the CDT now installs in /usr/opt instead of /usr/local, I was able to build my contract wasm and abi files, but got these warnings (posting only a few)
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/transaction.hpp:6:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/transaction.h:8:2: warning: "<eosiolib/transaction.h> is deprecated use <eosio/transaction.h>. If you
      are using C++ the .h header files will be removed from inclusion entirely in v1.7.0" [-W#warnings]
#warning "<eosiolib/transaction.h> is deprecated use <eosio/transaction.h>. If you are using C++ the .h header files will be removed from inclu...
 ^
In file included from /tmp/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/transaction.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/serialize.hpp:7:2: warning: "<eosiolib/serialize.hpp> is deprecated use <eosio/serialize.hpp>"
      [-W#warnings]
#warning "<eosiolib/serialize.hpp> is deprecated use <eosio/serialize.hpp>"
 ^
In file included from /tmp/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/transaction.hpp:14:2: warning: "<eosiolib/transaction.hpp> is deprecated use <eosio/transaction.hpp>"
      [-W#warnings]
#warning "<eosiolib/transaction.hpp> is deprecated use <eosio/transaction.hpp>"

Here are the headers I have included in my contract's hpp:
#pragma once

#include <eosiolib/eosio.hpp>
#include <eosiolib/crypto.h>
#include <string>
#include <utility>
#include <vector>
#include <algorithm>
#include <iterator>
#include <list>
#include <chrono>
#include <time.h>
#include <eosiolib/asset.hpp>
#include <eosiolib/time.hpp>
#include <eosiolib/privileged.hpp>
//#include <eosio/native/intrinsics_def.hpp>
#include <eosio.system/eosio.system.hpp>
#include <eosiolib/transaction.hpp>

I then tried to switch over just one of the files, transaction.hpp, over to the new eosio library, just to see if the warning goes away.
Per my path, transaction.hpp is in two locations:
/usr/opt/eosio.cdt/1.6.1/include/eosiolib/transaction.hpp
/usr/opt/eosio.cdt/1.6.1/include/eosiolib/contracts/eosio/transaction.hpp
So, I added the /usr/opt/eosio.cdt/1.6.1/include/eosiolib/contracts path to my cmake includes and changed the include directive to
#include <eosio/transaction.hpp>
And it immediately broke. It appears that there are a lot of internal header references pointing to <eosiolib/XYZ.hpp> type includes.
Here is the entire log from the build attempt:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:6:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/core/eosio/check.hpp:41:16: error: redefinition of 'check'
   inline void check(bool pred, const char* msg) {
               ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/system.hpp:31:16: note: previous definition is here
   inline void check(bool pred, const char* msg) {
               ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:6:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/core/eosio/check.hpp:57:16: error: redefinition of 'check'
   inline void check(bool pred, const std::string& msg) {
               ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/system.hpp:47:16: note: previous definition is here
   inline void check(bool pred, const std::string& msg) {
               ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:6:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/core/eosio/check.hpp:73:16: error: redefinition of 'check'
   inline void check(bool pred, std::string&& msg) {
               ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/system.hpp:63:16: note: previous definition is here
   inline void check(bool pred, std::string&& msg) {
               ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:6:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/core/eosio/check.hpp:90:16: error: redefinition of 'check'
   inline void check(bool pred, const char* msg, size_t n) {
               ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/system.hpp:80:16: note: previous definition is here
   inline void check(bool pred, const char* msg, size_t n) {
               ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:6:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/core/eosio/check.hpp:107:16: error: redefinition of 'check'
   inline void check(bool pred, const std::string& msg, size_t n) {
               ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/system.hpp:97:16: note: previous definition is here
   inline void check(bool pred, const std::string& msg, size_t n) {
               ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:6:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/core/eosio/check.hpp:123:16: error: redefinition of 'check'
   inline void check(bool pred, uint64_t code) {
               ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/system.hpp:113:16: note: previous definition is here
   inline void check(bool pred, uint64_t code) {
               ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:41:7: error: redefinition of 'datastream'
class datastream {
      ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:44:7: note: previous definition is here
class datastream {
      ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:185:7: error: redefinition of
      'datastream<unsigned int>'
class datastream<size_t> {
      ^~~~~~~~~~~~~~~~~~
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:189:7: note: previous definition is here
class datastream<size_t> {
      ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:262:28: error: redefinition of 'operator<<'
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::list<T>& l) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:276:28: note: previous definition is here
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::list<T>& l) {
                           ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:278:28: error: redefinition of 'operator>>'
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::list<T>& l) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:293:28: note: previous definition is here
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::list<T>& l) {
                           ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:296:28: error: redefinition of 'operator<<'
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::deque<T>& d) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:312:28: note: previous definition is here
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::deque<T>& d) {
                           ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:312:28: error: redefinition of 'operator>>'
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::deque<T>& d) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:329:28: note: previous definition is here
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::deque<T>& d) {
                           ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:330:28: error: redefinition of 'operator<<'
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::variant<Ts...>& var) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:348:28: note: previous definition is here
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::variant<Ts...>& var) {
                           ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:338:6: error: redefinition of 'deserialize'
void deserialize(datastream<Stream>& ds, std::variant<Ts...>& var, int i) {
     ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:356:6: note: previous definition is here
void deserialize(datastream<Stream>& ds, std::variant<Ts...>& var, int i) {
     ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:361:28: error: redefinition of 'operator>>'
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::variant<Ts...>& var) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:380:28: note: previous definition is here
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::variant<Ts...>& var) {
                           ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:378:13: error: redefinition of 'operator<<'
DataStream& operator<<( DataStream& ds, const std::pair<T1, T2>& t ) {
            ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:398:13: note: previous definition is here
DataStream& operator<<( DataStream& ds, const std::pair<T1, T2>& t ) {
            ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:394:13: error: redefinition of 'operator>>'
DataStream& operator>>( DataStream& ds, std::pair<T1, T2>& t ) {
            ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:415:13: note: previous definition is here
DataStream& operator>>( DataStream& ds, std::pair<T1, T2>& t ) {
            ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:412:28: error: redefinition of 'operator<<'
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::optional<T>& opt) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:434:28: note: previous definition is here
inline datastream<Stream>& operator<<(datastream<Stream>& ds, const std::optional<T>& opt) {
                           ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:22:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/transaction.hpp:6:
In file included from /usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/action.hpp:9:
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/contracts/eosio/../../core/eosio/datastream.hpp:429:28: error: redefinition of 'operator>>'
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::optional<T>& opt) {
                           ^
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/datastream.hpp:452:28: note: previous definition is here
inline datastream<Stream>& operator>>(datastream<Stream>& ds, std::optional<T>& opt) {
                           ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
Warning, empty ricardian clause file
Warning, empty ricardian clause file
Warning, action <addprod> does not have a ricardian contract
Warning, action <deleteprod> does not have a ricardian contract
Warning, action <setdelay> does not have a ricardian contract
Warning, action <setthrhold> does not have a ricardian contract
Warning, action <castvote> does not have a ricardian contract
Warning, action <addprod> does not have a ricardian contract
Warning, action <deleteprod> does not have a ricardian contract
Warning, action <setdelay> does not have a ricardian contract
Warning, action <setthrhold> does not have a ricardian contract
Warning, action <castvote> does not have a ricardian contract
20 errors generated.
Error while processing /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp.
abigen error
CMakeFiles/smartproxy.dir/build.make:62: recipe for target 'CMakeFiles/smartproxy.dir/smartproxy.obj' failed
make[5]: *** [CMakeFiles/smartproxy.dir/smartproxy.obj] Error 255
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/smartproxy.dir/all' failed
make[4]: *** [CMakeFiles/smartproxy.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make[3]: *** [all] Error 2
CMakeFiles/smartproxy.dir/build.make:111: recipe for target 'smartproxy-prefix/src/smartproxy-stamp/smartproxy-build' failed
make[2]: *** [smartproxy-prefix/src/smartproxy-stamp/smartproxy-build] Error 2
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/smartproxy.dir/all' failed
make[1]: *** [CMakeFiles/smartproxy.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
Sat Mar 30 20:05:39 CDT 2019 Errors executing make.

It shouldn't be installing to /usr/opt for one thing, can you supply me the list of steps you used to install cdt?  For the other failures, these are listed in the migration guide from 1.5.x to 1.6.x.  The old header files are quarantined to eosiolib path and the new headers use eosio.  This was done to not immediately break compilation for your contract, but once you change one include to use the new path you will have to change all of them.  The new library should have no reference to eosiolib, so it appears that your contract is still including things from eosiolib.

Steps to install 1.6.1 CDT:

Run uninstall.sh from the directory where I had earlier clone 1.5
wget https://github.com/eosio/eosio.cdt/releases/download/v1.6.1/eosio.cdt_1.6.1-1_amd64.deb
sudo apt install ./eosio.cdt_1.6.1-1_amd64.deb

Also,

For the other failures, these are listed in the migration guide from 1.5.x to 1.6.x

Can you provide this link? I could not find it on the readme.md on the main CDT page in GH.

Note, try changing all occurrences of eosiolib include paths to eosio. The redefinition error you're getting is probably due to including different header files which contain the same function definitions.
Specifically,  function void check(bool pred, const char* msg) is defined in header files eosiolib/system.hpp and eosio/check.hpp.  This is due to compatibility issues between cdt <= 1.5 and cdt >= 1.6.
When you include eosiolib/eosio.hpp it includes eosiolib/system.hpp via eosiolib/action.hpp -> eosiolib/action.h. And if you include eosio/transaction.hpp it'll also include eosio/check.hpp. Compiler then tries to define check function from both files since it cannot distinguishes between them (header guards won't prevent this) and emits redefinition error when it encounters the second definition.

Thanks @smlu. I will try this approach and post here as to what happened.

Hi @smlu @larryk85 I think the issue is compounded by the fact that I am also using eosio.system.hpp for including system contracts.
This is just an extract of the errors being thrown (not the entire error log)
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:21:
/home/passwordis1234/eosio.contracts/eosio.system/include/eosio.system/eosio.system.hpp:247:21: error: unknown type name 'unsigned_int'; did you mean
      'eosio::unsigned_int'?
         void init( unsigned_int version, symbol core );
                    ^~~~~~~~~~~~
                    eosio::unsigned_int
/usr/opt/eosio.cdt/1.6.1/bin/../include/eosiolib/core/eosio/varint.hpp:22:11: note: 'eosio::unsigned_int' declared here
   struct unsigned_int {
          ^
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.cpp:6:
In file included from /home/passwordis1234/eosio_dev/smartproxy/contracts/smartproxy/smartproxy.hpp:21:
/home/passwordis1234/eosio.contracts/eosio.system/include/eosio.system/eosio.system.hpp:366:13: error: use of undeclared identifier 'eosio_assert'; did
      you mean 'eosio::internal_use_do_not_use::eosio_assert'?
            eosio_assert(itr != rm.end(), "system contract must first be initialized");
            ^~~~~~~~~~~~
            eosio::internal_use_do_not_use::eosio_assert

I will need to upgrade my system contracts' codebase to 1.6.0.


Editing Agent

Confirm this is a new agent request

[X] I've checked the current issues, and there's no record of this agent request

Describe the agent
Description: Use VideoDB's timeline functionality to create the edited programmatic stream. [1]
Proposed design:
Since combination of parameters required for editing can become complex for reasoning engine alone to pass directly we can have two layers of intelligence, first reasoning engine is going to create an editing prompt and pass it to editing agent and then editing agent can expose all the possible editing functions and parameters to LLM instance to generate the sequence of functions with required parameters.
[1] - https://docs.videodb.io/dynamic-video-stream-guide-44
Additional Context
Test prompts:

Compile all the above generated clips
Add audio x on top of y video
From x minute till y minute add image y with width and height
Add text asset with text 'xyz' style it with fun aesthetics (here llm should infer the styling params by given high level requirement)
Overlay x  for first 2 minutes just after that overlay y, add image x throughout the edited stream and add the video z as outro.

Closed by https://github.com/video-db/Director/pull/67


[Provider Audit] provider.akash01.rocklogic.at

Prerequisite Steps:
1. Make sure your provider has community provider attributes and your contact details (email, website):
  Example:
  $ provider-services query provider get akash1<REDACTED> -o text
  ...
  attributes:
  ...
  - key: host
  value: akash
  - key: tier
  value: community
  info:
    email: "<your email>"
    website: "<your website>"

Ref documentation:.
2. Make sure your provider *.ingress resolves to your provider IP (ideally worker node IP)
host <anything>.ingress.<yourdomain>

Example:
$ host anything.ingress.akash.pro
anything.ingress.akash.pro is an alias for nodes.akash.pro.
nodes.akash.pro has address <IP_ADDRESS>

More info on what DNS records should look like are available in the Akash Documentation here.

3. Please make sure your Akash provider doesn't block any Akash specific ports.

If you are using a firewall, please follow this doc:
https://akash.network/docs/providers/build-a-cloud-provider/akash-cloud-provider-build-with-helm-charts/#step-11---firewall-rule-review
If you are behind NAT, then you need to make sure these ports are open between your provider worker nodes and the internet.

Audit Steps:
1. Title the issue: " [Provider Audit]: Provider Address" (e.g. "[Provider Audit]: provider.europlots.com")
2. Wait for response via comments. If no issues during provider Audit, process will be complete, provider should start bidding on leases, and Audit ticket will be closed.
3. If there are issues during the provider Audit, debug those issues, and Audit will be complete.
4. Audit Issue will be closed by core team member.
Leave contact information (optional)

Stefan Kobrc
Discord: stefa2k.eth TG: stefa2k
<EMAIL_ADDRESS>

hi @stefa2k ,
First of all, very nice provider, welcome to Akash.
The provider seems to be working correctly. There are a few administrative things to do before it can get signed.
The provider attributes need to be correct and the contact information needs to be present.
If you used Praetor to install the provider:
edit the /root/praetor/provider.yaml file
If you used the standard Helm installation method, please edit the file /root/provider/provider.yaml
In both cases add the contact information (do not confuse that with attributes)
info:   email<EMAIL_ADDRESS> website: "https://www.rocklogic.at/"
Second, since your provider does not have persistent storage, the attributes pertaining to that need to be removed. Remove the following:
- key: capabilities/storage/3/class   value: beta3
When done, apply these changes with
helm upgrade --install akash-provider akash/provider -n akash-services -f provider.yaml --set bidpricescript="$(cat ~/provider/price_script_generic.sh | openssl base64 -A)"
After these steps have been completed, we can continue.
thank you!

@shimpa1 , thank you for your detailed review. I believe we are ready to proceed, the requested changes have been applied.

`provider-services query provider get akash17cpl96lyk69pg50ys0w8dqjkcu95hlj8fgxnce
attributes:

key: organization
value: RockLogic GmbH
key: arch
value: amd64
key: email
value<EMAIL_ADDRESS>key: website
value: https://www.rocklogic.at/
key: location-region
value: eu-central
key: country
value: AT
key: location-type
value: colo
key: capabilities/cpu
value: amd
key: capabilities/memory
value: ddr5ecc
key: network-speed-up
value: "500"
key: network-speed-down
value: "500"
key: tier
value: community
key: capabilities/cpu/arch
value: x86-64
key: host
value: akash
host_uri: https://provider.akash01.rocklogic.at:8443
info:
email: ""
website: ""
owner: akash17cpl96lyk69pg50ys0w8dqjkcu95hlj8fgxnceThe info: part needs to be populated as well (check my first message). Just append these lines to your provider.yaml:email<EMAIL_ADDRESS>website: "https://www.rocklogic.at/"
and then applyhelm upgrade --install akash-provider akash/provider -n akash-services -f provider.yaml --set bidpricescript="$(cat ~/provider/price_script_generic.sh | openssl base64 -A)"`

the file looks like this now:
info:
email<EMAIL_ADDRESS>website: "https://www.rocklogic.at/"
attributes:
    - key: organization
      value: RockLogic GmbH
    - key: arch
      value: amd64
    - key: email
      value<EMAIL_ADDRESS>    - key: website
      value: https://www.rocklogic.at/
    - key: location-region
      value: eu-central
    - key: country
      value: AT
    - key: location-type
      value: colo
    - key: capabilities/cpu
      value: amd
    - key: capabilities/memory
      value: ddr5ecc
    - key: network-speed-up
      value: 500
    - key: network-speed-down
      value: 500
    - key: tier
      value: community
    - key: capabilities/cpu/arch
      value: x86-64
    - key: host
      value: akash

I guess I got confused with the intendings, had the email and website as a sub of info.

Excellent,
`provider-services query provider get akash17cpl96lyk69pg50ys0w8dqjkcu95hlj8fgxnce
attributes:

key: organization
value: RockLogic GmbH
key: arch
value: amd64
key: email
value<EMAIL_ADDRESS>key: website
value: https://www.rocklogic.at/
key: location-region
value: eu-central
key: country
value: AT
key: location-type
value: colo
key: capabilities/cpu
value: amd
key: capabilities/memory
value: ddr5ecc
key: network-speed-up
value: "500"
key: network-speed-down
value: "500"
key: tier
value: community
key: capabilities/cpu/arch
value: x86-64
key: host
value: akash
host_uri: https://provider.akash01.rocklogic.at:8443
info:
email<EMAIL_ADDRESS>website: https://www.rocklogic.at/
owner: akash17cpl96lyk69pg50ys0w8dqjkcu95hlj8fgxnce`

@andy108369
Provider akash17cpl96lyk69pg50ys0w8dqjkcu95hlj8fgxnce ready to be signed.

No need to remove the audited flag, unless you plan to remove the provider permanently.
If you want to tell me about the issues you are having, we can get in touch on Discord or if you think it's more serious, you can open a GitHub issue explaining your concerns.

The issue is - as far as we can tell right now - with the akash services jumping servers and losing the ability to serve the public endpoint. We are now in the process of resolving this. The setup is currently a akash mgr server with one public ipv4 address and multiple worker servers without dedicated public ipv4 addresses.
Because we also want to offer public ipv4 addresses we anyway need to rethink the setup.
I'll keep you posted.

provider isn't alive, cannot sign it:
$ nc -vz provider.akash01.rocklogic.at 8443
nc: connect to provider.akash01.rocklogic.at (<IP_ADDRESS>) port 8443 (tcp) failed: No route to host

Closing for now...
Please feel free to reopen.


[PE-D][Tester A] Inconsistency in parameters shown in their example tables across the features in UG

Image of example table in Add Task

Image of example table in Edit Task

Main issue here would be for the title parameter, one of it shows CS2103T UG while the other shows "CS2103T UG". In fact, the correct implementation for it is "CS2103T UG". They should hence ensure the examples shown in various features are in the correct format and similar to the rest of the tables.

Labels: type.DocumentationBug severity.Low
original: MrTwit99/ped#11

Fix in commit 4f827e5862cd4810ac09aee0073d33dab3eb4d5f


titleSrc property

I'm trying to display captions for the popup images through 'titleSrc' property. The images (gallery) are creating dynamically and I need to take a 'title' or 'alt' value from them.
This function titleSrc: function(item) {return item.el.attr('title') is not working as well as a plain text: there's just nothing at all at the caption place.

I've solved the issue by myself! Great! Here is a function, I've added for generating dynamic titles while navigating between pictures:
function arrowclick (i)
{

   currentthumb = "thumb_" + i + "";

 document.getElementsByClassName("mfp-title")[0].innerHTML = document.getElementById(currentthumb).getAttribute('title')//+currentthumbid;
}

It is called from prev:function and next:function in my case as arrowclick(b.index+1)
And jQuery code for inserting title on popup load:
$(document).click(function(event) {
    $(".mfp-title").append(event.target.parentElement.getAttribute("title"));
});

Hope this would help someone and save his time!


Website is down

Just wanted to let you know that website has SSL error and it's down

Thanks. I've closed my blog and removed it from the description of the project. The Demo site is still valid.


Ensure RabbitMQ WithDataVolume/WithDataBindMount methods actually enable persistent storage

This updates the WithDataVolume and WithDataBindMount methods for RabbitMQ to set the RABBITMQ_NODENAME environment variable to a stable value so that RabbitMQ's internal storage is laid out with a stable storage directory. I also updated TestShop so that it uses persistent storage for its RabbitMQ messaging. I'm able to run TestShop with the orderprocessor resource commented out and make some "orders" by added items to the basket and then clicking the basket summary icon, then stop the session, uncomment orderprocessor, and start a new session, and see that orderprocessor processes the order messages from the previous session.
Fixes #2247
Microsoft Reviewers: Open in CodeFlow

Is it possible to add some tests?

/azp run


Improve findattr()'s value matching

Right now, findattr(id, col, val) coerces both val and the value found in the col attribute to strings and compares those for case-insensitive equality.
We've come across situations where character sheets are inconsistent in how they represent equivalent values – e.g. 1 vs true.
Make findattr()'s value matching more semantic by coercing the attribute's value to the reference value's type (e.g. bool if true is given, number if 1 is given, else case-insensitive string) instead of coercing both to string.

Notice that "false" doesn't coerce to bool false, but should obviously match.


Working with 'VanillaTweaks' ?

Does this work with 'VanillaTweaks' https://github.com/brndd/vanilla-tweaks/releases
If so, how do you combine them?

you tweak your exe then rename it exactl to WoW.exe. works

you tweak your exe then rename it exactl to WoW.exe

This works, you can also drag and drop WoW_tweaked.exe over VanillaFixes.exe.

Low fps then
With tweaks: https://imgur.com/JXiJIxQ
Without tweaks: https://imgur.com/Mkm2bNM

Can you add please autoloot option? And if is it possible option for nameplates range would be good.

Use the command lines of vanilla tweaks to generate and exe with only the hacks you want liek autoloot but not far view and other performance lowering mods.

Low fps then

I don't think VanillaFixes is being loaded in the first screenshot. Did you try to drag and drop WoW_tweaked.exe over VanillaFixes.exe? (you can see what executable is running in Task Manager)

Can you add please autoloot option? And if is it possible option for nameplates range would be good.

I'm not adding anything to VanillaFixes that could get you banned by Warden. I've already confirmed vanilla-tweaks works so there's no need for an option in VanillaFixes.

Rename wow.exe to enter the game login interface file corruption

It doesnt work to me, could u explain how to work wow_tweaked.exe into vanillafixes.exe?


fix: typos

Description

Fix Typos

Replaced programatically with programmatically.
Replaced perfomUpkeep with performUpkeep.

Thank you @Shiva-Sai-ssb!


tft example not working but TFT_Rainbow is working

Hello. I have received T-Display S3 development board. I have tried to flash some example programs to check how it works and I notices that when I flash the example "tft" I only get the black screen and the following is displayed in the serial terminal:
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x15 (USB_UART_CHIP_RESET),boot:0x8 (SPI_FAST_FLASH_BOOT)
Saved PC:0x4202619e
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3808,len:0x44c
load:0x403c9700,len:0xbe4
load:0x403cc700,len:0x2a38
entry 0x403c98d4
Hello T-Display-S3

However, when I flash the "TFT_Rainbow" example, everything seems to be working fine. The following is displayed on the serial terminal:
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x15 (USB_UART_CHIP_RESET),boot:0x8 (SPI_FAST_FLASH_BOOT)
Saved PC:0x42023f3e
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3808,len:0x44c
load:0x403c9700,len:0xbe4
load:0x403cc700,len:0x2a38
entry 0x403c98d4
E (14) gpio: gpio_set_level(226): GPIO output gpio_num error
E (15) gpio: gpio_set_level(226): GPIO output gpio_num error
Current running 3743 millis
Current running 4781 millis
Current running 5783 millis

What could be wrong with the tft example?

Could You copied from the git repo lib folder into your Ardiunio Lib folder?
After that, and choosed  the ESP32S3 Dev Module its worked for me, only an output error for gpio, on serial monitor, but the display works fine.


connect: Rewrite test to use hspec with fail-fast.

Rewrite tests to use hspec.
Update tests to match x-common.
Rename Color(Black,White) to Mark(Cross,Nought)
Patch the example and the stub solutions to use the new names.

Related to #211.
Now all the tests match x-common almost exactly. The only difference is that I kept the expected value as an ADT, not a String containing X or O.
Also, I had to change the ADT to have more meaningful names - how would anyone know that X was Black - so I borrowed them from Tic-tac-toe's Wikipedia page. The alternative would be to use X and O, but I'm not sure if it is a good idea to have single letter data constructors.
I can change the ADT if someone comes with better names.
Also, considering that we are breaking compatibility with old submissions, we could rename resultFor.

I do like the Black/White -> Cross/Nought change since I kept having to look at the README to remember which was which when I was doing this problem.

The fact that the board uses X and O - both in README.md and canonical-data.json - but the text in README.md explicitly call them Black and White is confusing.
I'm not sure if I should have changed that here, because I removed all the references to colors in the exercise. Maybe it's a decision to be taken to x-common...
Should we open an issue about it there?

I usually would have liked to put the Black/White -> Cross/Nought in its own commit

You are right! I'll rewrite it, as a little punishment for my lack of discipline! :smile:

What would you like for resultFor? winner?

I just had the feeling that resultFor was not good, but had no suggestion.
winner seems perfectly clear to me, and makes it obvious why it is a `Maybe. Nice choice!
I'm gonna change it in a separated commit.

I'm not sure if I should have changed that here, because I removed all the references to colors in the exercise. Maybe it's a decision to be taken to x-common...

Should we open an issue about it there?

Seems good. You probably have to do it as I will be occupied for a few hours.

Opened exercism/x-common#380.

Thanks for the review!
Rewrote the PR in 3 separated commits, @petertseng.


ci: add protolock image and job, include proto.lock file in vcs

protolock is a development & CI tool to help prevent changes from being added to proto definitions which break API compatibility.
See more from a recent talk I gave at gRPC conf: slides, plus some related users
The proto.lock file added in this PR is the result of running protolock init from the root of this repo.

Hi @nilslice,
Right now, these protos are a reflection of protos in internal source control, and while we need to get better about how we handle that, we are not there yet.
I am also a little concerned about the implementation here -- it seems like it would just enforce compatibility against right now, and we would have to manually update the golden test as we did releases. Again, that could be done, but I am not sure we are ready to commit to it yet. (Actually what I would want to do is diff against the next release.)
This is a really useful tool, though, that actually helps address a problem we have been thinking a lot about -- compatibility checking between protos over time. I am not sure I am ready to deploy this here, but I definitely want to use it. :-)

Hey @lukesneeringer -
Thanks for your review and comments! I see how this being mirrored from an internal source would make running protolock here less useful. Although, if this is the "import point" for external developers, I'd propose that it may be even more important to ensure this endpoint maintains compatibility. Solving that upstream would be better though, no doubt.

I am also a little concerned about the implementation here -- it seems like it would just enforce compatibility against right now, and we would have to manually update the golden test as we did releases. Again, that could be done, but I am not sure we are ready to commit to it yet. (Actually what I would want to do is diff against the next release.)

Typical use would require that a branch is checked against the proto.lock file checked in (which should represent the state of your .proto APIs from the base of the current branch), so that any updates to .proto files do not break compatibility between the previous release (assuming the previous release is the base branch of the current). I'm likely missing some context around your golden test and how releases are made :)
No problem at all if you decide to close this PR... I like testing protolock on large proto code bases for performance metrics and CI integration, so it was a good exercise for me nonetheless! Hope you find protolock useful in other projects, and consider some PRs if you encounter bugs, lacking features, or general sharp edges.

I am going to go ahead and close this for now. I am still interested in principle, but this is not something we can do right now since we are mirroring from an internal location.
We may revisit this in the future, however.


'Loading...' after Canary update?

I just updated my Chrome Canary version to 52.0.2735.0 (64-bit), and it appears Augury is stuck on 'Loading...' for me now. I can't exclude other causes yet, but was wondering if anyone else had experienced something similar. If not, I'm clueless atm and this can be closed.

Response on github issue is required

@igor-ka: Sorry, I'm a bit confused as to what you meant by response. Could you elaborate please?
I'm still experiencing this issue; neither browser restarts nor Augury reinstalls appear to be fixing it for me so far.

@tycho01 sorry for the confusing response :)
We will investigate this issue, as we need to figure out if this is a Chrome Canary issue (which seems to work for us) or if this is something else.
It would be great if you could tell us which version of angular2 you are using as well. We will be releasing a version that supports RC1 very soon. Otherwise, I we only support the beta for now.
PS. Also your app needs to run in dev mode for Augury to work

I am experiencing the same problem with Canary (latest version) too. No such problem with Chrome.

@tycho01 @st-clair-clarke In the latest update of the chrome window.postMessage has been deprecated this is the reason why it's not working see the message below. We will investigate if it's possible to support both the versions with the next Augury Release

'window.postMessage(message, transferables, targetOrigin)' is deprecated and will be removed in M54, around October 2016. Please use 'window.postMessage(message, targetOrigin, transferables)' instead. See https://www.chromestatus.com/features/5719033043222528 for more details.

Thank you for the update. Interestingly, I had been using Augury with ng2 RC1 in production mode. Only after the Canary update did I start experiencing issues. But this sounds hopeful; until resolved I'll try stable Chrome then. :)

It turns out this had nothing to do with the postMessage API being changed. It was a result of our recursive node-item component not working in Chrome Canary. First I determined that the promise being returned by bootstrap() was never resolved or rejected. Then I did some extensive debugging of runtime_compiler.js and was able to determine that ultimately the promise that was hanging the application was associated with node-info. From there, I took out the recursive reference in [directives] and in the .html file and it completely resolved the issue, and the application was able to start correctly. Then with some trial and error, I noticed that changing the component from using templateUrl to template actually resolves the problem. So there is something about the interplay of templateUrl and recursive components which does not work on Chrome Canary. It's not clear whether this is a Chrome bug or an Angular 2 bug, but nonetheless the issue is fixed by this PR: https://github.com/rangle/augury/pull/425


Upgrade to v0.8.1 breaks encryption

Bug Report
Description

I had installed version 0.7.0 of proxmox CSI plugin. LUKS encryption was enabled.
I created some volumes
Then I upgraded to v0.8.1.
After upgrading, restart of pods which used PVCs provided by this CSI plugin failed due to:0s          Warning   FailedMount              pod/loki-0         MountVolume.MountDevice failed for volume "pvc-398cb20e-1ba2-47c9-8b49-c758c9480045" : rpc error: code = Internal desc = encryption key rejected

Downgrade back to v0.7.0 fixed encryption
Logs
If needed I can perfom the upgrade again.
Controller: [kubectl logs -c proxmox-csi-plugin-controller proxmox-csi-plugin-controller-...]
Node: [kubectl logs -c proxmox-csi-plugin-node proxmox-csi-plugin-node-...]
Environment

Plugin version: v0.8.1
Kubernetes version: v1.30.5
CSI capasity:

CLASS                    AVAIL           ZONE
proxmox-data-ephemeral<PHONE_NUMBER>740   map[topology.kubernetes.io/region:homelab-proxmox-1 topology.kubernetes.io/zone:osiris]
proxmox-data<PHONE_NUMBER>740   map[topology.kubernetes.io/region:homelab-proxmox-1 topology.kubernetes.io/zone:osiris]

CSI resource on the node: [kubectl get CSINode <node> -oyaml]
Node describe: [kubectl describe node <node>]
OS version: Talos 1.8.0

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request

Thank you for bug report.
I've checked creating new pvc on latest version - everything work ok.  I need to check the different version...

I think this might happen only to "migration" scenario.

Hi, I released v0.8.2 i found the bug #262.
Also, unfortunately PV secrets can inadvertently appear in the logs, posing a potential security risk

Log from v0.8.3:
proxmox-csi-node-msjlh proxmox-csi-node I0929 19:28:27.921725       1 node.go:521] "NodeGetCapabilities: called"
proxmox-csi-node-msjlh proxmox-csi-node I0929 19:28:27.928527       1 node.go:521] "NodeGetCapabilities: called"
proxmox-csi-node-msjlh proxmox-csi-node I0929 19:28:27.929136       1 node.go:521] "NodeGetCapabilities: called"
proxmox-csi-node-msjlh proxmox-csi-node I0929 19:28:27.929810       1 node.go:92] "NodeStageVolume: called" args="{\"publish_context\":{\"DevicePath\":\"/dev/disk/by-id/wwn-0x5056432d49443033\",\"lun\":\"3\"},\"secrets\":\"***stripped***\",\"staging_target_path\":\"/var/lib/kubelet/plugins/kubernetes.io/csi/csi.proxmox.sinextra.dev/b5d00812b9ff38d8e032d351e8dac99d9e0fd3d7cf998ed96327064cb86f85a5/globalmount\",\"volume_capability\":{\"AccessType\":{\"Mount\":{\"fs_type\":\"ext4\",\"mount_flags\":[\"discard\"]}},\"access_mode\":{\"mode\":1}},\"volume_context\":{\"cache\":\"none\",\"ssd\":\"true\",\"storage\":\"local-lvm\",\"storage.kubernetes.io/csiProvisionerIdentity\":\"1708632090030-452-csi.proxmox.sinextra.dev\"},\"volume_id\":\"homelab-proxmox-1/osiris/local-lvm/vm-9999-pvc-a18d22ab-a369-4ea5-8315-d51a045d6323\"}"
proxmox-csi-node-msjlh proxmox-csi-node I0929 19:28:27.930142       1 node.go:127] "NodeStageVolume: mount device" device="/dev/sdc" path="/var/lib/kubelet/plugins/kubernetes.io/csi/csi.proxmox.sinextra.dev/b5d00812b9ff38d8e032d351e8dac99d9e0fd3d7cf998ed96327064cb86f85a5/globalmount"
proxmox-csi-node-msjlh proxmox-csi-node I0929 19:28:27.930165       1 node.go:181] "NodeStageVolume: volume is encrypted" device="/dev/sdc"
proxmox-csi-node-msjlh proxmox-csi-node E0929 19:28:29.770508       1 node.go:201] "NodeStageVolume: failed to open encrypted device" err="encryption key rejected" device="/dev/sdc"
proxmox-csi-node-msjlh proxmox-csi-node E0929 19:28:29.770531       1 main.go:122] GRPC error: rpc error: code = Internal desc = encryption key rejected

I think better to migrate to new version.

deploy old csi-plugin
scale up the kubectl statefulset loki --replicas=1 to get one copy of loki and the PVC can be unencrypted
upgrade the csi-plugin to lates
update the encrypted secret
scale up the loki to 2 pods kubectl statefulset loki --replicas=2 (make sure that all PVC allocated in one proxmox node), now you have two PVC in one proxmox node, new one has new secrets key
scale down kubectl statefulset loki --replicas=1 to one copy
deploy rsync pod with two attached PVC

apiVersion: v1
kind: Pod
metadata:
  name: debian
  namespace: kube-system
spec:
  containers:
  - image: debian
    command:
      - sleep
      - "14d"
    name: debian
    resources:
      limits:
        memory: "4Gi"
      requests:
        cpu: "100m"
        memory: "128Mi"
    securityContext:
      privileged: true
    volumeMounts:
    - name: src
      mountPath: /mnt/src
    - name: dst
      mountPath: /mnt/dst
  priorityClassName: system-node-critical
  tolerations:
    - operator: Exists
    - key: node.kubernetes.io/disk-pressure
      operator: Exists
      effect: NoSchedule
  volumes:
    - name: src
      persistentVolumeClaim:
        claimName: data-loki-0
    - name: dst
      persistentVolumeClaim:
        claimName: data-loki-1

rsync data rsync -av --delete /mnt/src/ /mnt/dst/
scale down loki kubectl statefulset loki --replicas=0, rsync again, and delete "rsync" pod
swap PVCs pvecsictl swap data-loki-0 data-loki-1 tool documentation pvecsictl
scale up loki kubectl statefulset loki --replicas=1
check the data
delete old block device kubectl delete pvc data-loki-1 do not forget delete pv too.

@sergelogvinov Thanx for the hint.
I guess now every newly created volume (with v0.8+) has encryption done "new way" so there is no good universal solution, right?
Do you maybe know which change between broke those encryption keys?

Hi, i've merged some useful command here
But in your case, the secret was mutated during creating process. So, better to make migration by rsync...

Thanx @sergelogvinov
I already restored data from "logical" backups.


Unable to delpoy Application on Kubernetes running on DCOS

Hello All,
I am deploying on Application on top of Kubernetes Cluster which is running on top of DC/OS Cluster.
But when I am executing below the command:
# kubectl create -f deploy.yaml
The container is not getting created and below the error I can see in describe command output.:
Events:
 Type     Reason            Age                    From               Message
  ----     ------            ----                   ----               -------
  Warning  FailedScheduling  4m41s (x156 over 49m)  default-scheduler  0/3 nodes are available: 3 node(s) had taints that the pod didn't tolerate.
Please let me know in case you need any further information.
Thanks in advance.
Regards,
Arnab

Taint of Kubernetes Nodes:
# kubectl describe nodes <Node_Name>
Output:
Taints:             kubelet-resource-watchdog.kubernetes.dcos.io/public=NodeDiskPressure:NoSchedule
I am not sure whether this should be .
Please suggest.
Regards,
Arnab

@pires

Any help on this please ?

Closed due to inactivity.

I am facing the same issue and I have cleaned up disk space but still couldn't get rid of taints and unable to deploy. If i check node details i can see nodiskpressure status to false and taint still there.
Anything else i should do apart from these ?


Runtime documentation is misleading

Documentation on Github front page suggests that "10.2" would be a valid value to pass as the -r param. In fact, the format "iOS 10.2" is required.

fixed in master


url's are messed up on the relay

slack->plug =
<pironic@slack> name our new bot everyone: <http://wiki.writhem.com/pages/viewpage.action?pageId=4980797>;
plug->slack =
:/ gets replaced with a face.
issue #1

Smilies:
Two issues that need fixing

with standard replace, only a single match gets replaced.
smilies must be separated from words (either start/end or a space, on both ends)

Fix:
function escape(text) {
    return (text).replace(/([\\\.\+\*\?\[\^\]\$\(\)\{\}\=\!\<\>\|\:])/g, '\\$1');
}

//and then actual replace:
var replace = new RegExp("(^|\\s)"+escape(smiley)+"($|\\s)", "g");
message.replace(replace, slacksmiley);

Links:
There's another issue in terms of links - slack wraps all links with < and >. Plug does not understand this and includes the > at the end of the link. Slack usernames are also encoded as links and there is also a bug with the current approach of replacing usernames which will be fixable in one go. Slack links also encode a name (which is useless for Plug) which can also be dealt with.
 This func can identify userids (prefixed by @) and match them up against users list to get name, else it's probably a link (which can just be dumped without the <``>).
message.replace(/<(.*?)>/g, function(match, contents) {
    var link = contents.split("|")[0]; //we don't care about name
    if(link[0] == "@") {
        var slackuser = //fetch slack user
        return<EMAIL_ADDRESS>    }
    else {
        return link;
    }
});


Programming OpenMote

For future earthlings trying to flash an OpenMote with OpenThread via the UART, the following worked for me:

ground the CTS/DI07 pin (labeled on the OpenBase)
run ~/bin/cc2538-bsl/cc2538-bsl.py -v -e -w -b 115200 -p /dev/tty.usbserial-A9040YSF arm-none-eabi-ot-cli-ftd.bin. Update the cc2538-bsl location and serial port
try hitting reset once or twice if it doesn't work initially

More details on the OpenMote site.

@beriberikix, Did you try to access the OpenMote via serial? I have got two OpenMotes based on the OpenUSB Board and Contiki is running fine with serial access. But I do not get any output with Openthread. As far as I've checked OT also uses the GPIO Pins 0/1 for TX/RX.


🐛 firebase_core CDN for cocoa is blocked in Egypt

Bug report
Describe the bug
I updated firebase_core and I got the following error on pod install for macOS
[!] CDN: trunk Repo update failed - 10 error(s):
CDN: trunk URL couldn't be downloaded: https://cdn.jsdelivr.net/cocoa/Specs/0/3/5/Firebase/10.10.0/Firebase.podspec.json Response: SSL connect error

Steps to reproduce
Steps to reproduce the behavior:

Add firebase_core to a new project
Use VPN and select Egypt
go to the macOS folder and try pod install

Expected behavior
cocoa pods get downloaded and installed
Additional context
The same CDN is partially blocked in China too
https://github.com/jsdelivr/jsdelivr/issues/18392

closed as it is cocoapods issue not flutter
https://github.com/CocoaPods/CocoaPods/issues/11939


The Same Javascript error even after installing BandagedBD

Different error.

Be warned that will delete any customCSS you had along with your favorited emotes.
Sidenote delete user.json as well as that's for the other error.

That worked, thanks !

didnt work because its garbage, can't uninstall because its garbage


chore: migrate light deferred shader  and cleanup usage of Sphere

finalizes changes introduced here: https://github.com/MovingBlocks/Terasology/pull/4729
gets rid of usages related to sphere and migrates rest of code referencing Sphere.java

 Expirmental rework of VertexData

 OpenGL migrations


The unused class variable warning appears even if variable used through autoload

Godot version:
3.1
Issue description:
I think its not correct to warn user if autoload variable used by other scripts

Minimal reproduction project:
WarningBug.zip

This is not a bug. The warning is about "not used in the script". Usage in other scripts are not considered.

So I need to supress that warning in every autoload ?

So I need to supress that warning in every autoload ?

Yes, or disable the "Unused class variable" warning.

Ok.. thanks

To clarify, there's no way to know if a class variable is used in other scripts, unless we scan every script in the project, which is inefficient. That's one reason I opened #19811.