Histogram custom tags are not parsed correctly and not showing up.

Description

Histogram meter custom tags value are not parsed using correct separater "=", as when sending up Histogram (AggregatePercentilePayload) with custom tags to dotnet monitor, in file MetricStore.cs line, it's missing a case for "AggregatePercentilePayload", which caused the IsMeter method to return false, and using ":" to parse custom tags, as a result, it returns nothing as custom tags.
Configuration

What OS and version, and what distro if applicable?
MacOS 14.6.1 (23G93)
What is the architecture (x64, x86, ARM, ARM64)?
ARM64
Do you know whether it is specific to that configuration?
By looking at the source, I don't think it's specific to certain configurations.
Are you running in any particular type of environment? (e.g. Containers, a cloud scenario, app you are trying to target is a different user)
No
Is it a self-contained published application?
No
What's the output of dotnet info
`.NET SDK:
Version:           8.0.203
Commit:            5e1ceea679
Workload version:  8.0.200-manifests.205a5945

Runtime Environment:
OS Name:     Mac OS X
OS Version:  14.6
OS Platform: Darwin
RID:         osx-arm64
Base Path:   /usr/local/share/dotnet/sdk/8.0.203/
.NET workloads installed:
There are no installed workloads to display.
Host:
Version:      9.0.0-rc.2.24473.5
Architecture: arm64
Commit:       990ebf52fc
.NET SDKs installed:
6.0.418 [/usr/local/share/dotnet/sdk]
7.0.405 [/usr/local/share/dotnet/sdk]
8.0.203 [/usr/local/share/dotnet/sdk]
.NET runtimes installed:
Microsoft.AspNetCore.App 6.0.26 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 7.0.15 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.0-rc.2.24474.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.26 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 7.0.15 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.0-rc.2.24473.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Other architectures found:
None
Environment variables:
Not set
global.json file:
Not found
Learn more:
https://aka.ms/dotnet/info
Download .NET:
https://aka.ms/dotnet/download
`
Regression?

No, from the source code, this may never worked before for Histogram custom tags.
Other information

It seems the issue is in MetricStore.cs => IsMeter method, and adding additional case for AggregatePercentilePayload seems to do the trick.

many thanks for fixing it @kkeirstead 👍


TypeError: Cannot read property '$' of undefined

Bug Report or Feature Request (mark with an x)
- [ ] bug report -> please search issues before submitting
- [ ] feature request

Versions.

ng --version
@angular/cli: 1.0.2
node: 6.9.1
os: darwin x64
@angular/animations: 4.1.1
@angular/common: 4.1.1
@angular/compiler: 4.1.1
@angular/core: 4.1.1
@angular/forms: 4.1.1
@angular/http: 4.1.1
@angular/platform-browser: 4.1.1
@angular/platform-browser-dynamic: 4.1.1
@angular/router: 4.1.1
@angular/cli: 1.0.2
@angular/compiler-cli: 4.1.1
node --version
v6.9.1
npm --version
3.10.8
macOS Sierra
Repro steps.

ng build works fine in the browser.
ng serve works fine  in the browser.
ng build --prod fails in the browser in the time of loading.
ng serve --prod fails in the browser in the time of loading.
The log given by the failure.

vendor.c443c6f86922547e7af8.bundle.js:197 ERROR TypeError: Cannot read property '$' of undefined
    at new l (main.c37bff68dfaa8d8a8291.bundle.js:1)
    at n.get [as _ChannelService_74] (main.c37bff68dfaa8d8a8291.bundle.js:1)
    at n.getInternal (main.c37bff68dfaa8d8a8291.bundle.js:1)
    at n.t.get (vendor.c443c6f86922547e7af8.bundle.js:365)
    at un (vendor.c443c6f86922547e7af8.bundle.js:281)
    at sn (vendor.c443c6f86922547e7af8.bundle.js:281)
    at tn (vendor.c443c6f86922547e7af8.bundle.js:281)
    at Nn (vendor.c443c6f86922547e7af8.bundle.js:309)
    at An (vendor.c443c6f86922547e7af8.bundle.js:309)
    at Object.rr [as createRootView] (vendor.c443c6f86922547e7af8.bundle.js:309)

Mention any other details that might be useful.

The issue starts when I implemented signalR as a service in my application.
My package.json
{
  "name": "app",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "lint": "ng lint",
    "build": "webpack",
    "start": "webpack-dev-server --port=4200",
    "test": "karma start ./karma.conf.js",
    "prepree2e": "npm start",
    "pree2e": "webdriver-manager update --standalone false --gecko false --quiet",
    "e2e": "protractor ./protractor.conf.js"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^4.1.1",
    "@angular/common": "^4.0.0",
    "@angular/compiler": "^4.0.0",
    "@angular/core": "^4.0.0",
    "@angular/forms": "^4.0.0",
    "@angular/http": "^4.0.0",
    "@angular/platform-browser": "^4.0.0",
    "@angular/platform-browser-dynamic": "^4.0.0",
    "@angular/router": "^4.0.0",
    "adal-ts": "^0.6.0",
    "bootstrap": "^4.0.0-alpha.6",
    "core-js": "^2.4.1",
    "font-awesome": "^4.7.0",
    "moment": "^2.18.1",
    "primeng": "^4.0.0",
    "rxjs": "^5.1.0",
    "signalr": "^2.2.2",
    "zone.js": "^0.8.4"
  },
  "devDependencies": {
    "@angular/cli": "1.0.2",
    "@angular/compiler-cli": "^4.0.0",
    "@types/jasmine": "2.5.38",
    "@types/node": "~6.0.60",
    "autoprefixer": "^6.5.3",
    "codelyzer": "~2.0.0",
    "css-loader": "^0.27.3",
    "cssnano": "^3.10.0",
    "exports-loader": "^0.6.3",
    "expose-loader": "^0.7.3",
    "file-loader": "^0.10.0",
    "istanbul-instrumenter-loader": "^2.0.0",
    "jasmine-core": "~2.5.2",
    "jasmine-spec-reporter": "~3.2.0",
    "json-loader": "^0.5.4",
    "karma": "~1.4.1",
    "karma-chrome-launcher": "~2.0.0",
    "karma-cli": "~1.0.1",
    "karma-coverage-istanbul-reporter": "^0.2.0",
    "karma-jasmine": "~1.1.0",
    "karma-jasmine-html-reporter": "^0.2.2",
    "karma-sourcemap-loader": "^0.3.7",
    "less-loader": "^4.0.2",
    "postcss-loader": "^1.3.3",
    "postcss-url": "^5.1.2",
    "protractor": "~5.1.0",
    "raw-loader": "^0.5.1",
    "sass-loader": "^6.0.3",
    "script-loader": "^0.7.0",
    "source-map-loader": "^0.1.5",
    "style-loader": "^0.13.1",
    "stylus-loader": "^3.0.1",
    "ts-node": "~2.0.0",
    "tslint": "~4.5.0",
    "typescript": "~2.2.0",
    "url-loader": "^0.5.7",
    "webpack-dev-server": "~2.4.2"
  }
}

My ./src/app/app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';

import { DataTableModule,
         CalendarModule,
         MessagesModule,
         RadioButtonModule,
         DialogModule
} from 'primeng/primeng';

//import { AuthModule } from './auth/auth.module';
import { AppRoutingModule } from './app-routing.module';

import { AppComponent } from './app.component';
import { TaskTableComponent } from './tasks/task-table/task-table.component';
import { TaskFormComponent } from './tasks/task-form-deprecated/task-form.component';
import { WelcomeComponent } from './welcome/welcome.component';
import { HeaderComponent } from './header/header.component';

import { TaskService } from './tasks/task.service';
import { ActionLogService } from './action-logs/action-log.service';
import { AppConfigService } from './services/app-config.service';
import { ChannelService, ChannelConfig, SignalrWindow } from "./services/channel.service";
import { PageNotFoundComponent } from './not-found/not-found.component';
import { TaskDetailsComponent } from './tasks/task-details/task-details.component';
import { ActionLogTableComponent } from './action-logs/action-log-table/action-log-table.component';

// Statics
import 'rxjs/add/observable/throw';

// Operators
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/map';
import { SelectFormComponent } from './select-form/select-form.component';

let channelConfig = {
  url: "https://example.net/ws/signalr",
  hubName: "Hub"
}

@NgModule({
  declarations: [
    AppComponent,
    TaskTableComponent,
    WelcomeComponent,
    HeaderComponent,
    PageNotFoundComponent,
    TaskDetailsComponent,
    ActionLogTableComponent,
    SelectFormComponent,
    TaskFormComponent
  ],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    FormsModule,
    HttpModule,
    DataTableModule,
    CalendarModule,
    MessagesModule,
    RadioButtonModule,
    DialogModule,
    AppRoutingModule
  ],
  providers: [
    TaskService,
    ActionLogService,
    AppConfigService,
    ChannelService,
    { provide: SignalrWindow, useValue: window },
    { provide: 'channel.config', useValue: channelConfig }
  ],
  bootstrap: [AppComponent]
})
export class AppModule { }

My SignalR ChannelService
import { Injectable, Inject } from "@angular/core";
import { Subject } from "rxjs/Subject";
import { Observable } from "rxjs/Observable";
import { Task } from "../tasks/task.interface";

/**
 * When SignalR runs it will add functions to the global $ variable
 * that you use to create connections to the hub. However, in this
 * class we won't want to depend on any global variables, so this
 * class provides an abstraction away from using $ directly in here.
 */
export class SignalrWindow extends Window {
    $: any;
}

export enum ConnectionState {
    Connecting = 1,
    Connected = 2,
    Reconnecting = 3,
    Disconnected = 4
}

export class ChannelConfig {
    url: string;
    hubName: string;
    channel: string;
    qs: string;
}

export class ChannelEvent {
    Name: string;
    ChannelName: string;
    Timestamp: Date;
    Data: any;
    Json: string;

    constructor() {
        this.Timestamp = new Date();
    }
}

class ChannelSubject {
    channel: string;
    subject: Subject<ChannelEvent>;
}

/**
 * ChannelService is a wrapper around the functionality that SignalR
 * provides to expose the ideas of channels and events. With this service
 * you can subscribe to specific channels (or groups in signalr speak) and
 * use observables to react to specific events sent out on those channels.
 */
@Injectable()
export class ChannelService {
    /**
     * starting$ is an observable available to know if the signalr
     * connection is ready or not. On a successful connection this
     * stream will emit a value.
     */
    starting$: Observable<any>;

    /**
     * connectionState$ provides the current state of the underlying
     * connection as an observable stream.
     */
    connectionState$: Observable<ConnectionState>;

    /**
     * error$ provides a stream of any error messages that occur on the
     * SignalR connection
     */
    error$: Observable<string>;

    // These are used to feed the public observables
    private connectionStateSubject = new Subject<ConnectionState>();
    private startingSubject = new Subject<any>();
    private errorSubject = new Subject<any>();
    // task observable
    private tasks = new Subject<Task[]>();

    // These are used to track the internal SignalR state
    private hubConnection: any;
    private hubProxy: any;

    // An internal array to track what channel subscriptions exist
    private subjects = new Array<ChannelSubject>();

    constructor(
      @Inject(SignalrWindow) private window: SignalrWindow,
      @Inject("channel.config") private channelConfig: ChannelConfig
      //private authWithAzureService: AuthWithAzureService
    )
    {
        if (this.window.$ === undefined || this.window.$.hubConnection === undefined)
        {
            throw new Error("The variable '$' or the .hubConnection() function are not defined...please check the SignalR scripts have been loaded properly");
        }

        // Set up our observables
        this.connectionState$ = this.connectionStateSubject.asObservable();
        this.error$ = this.errorSubject.asObservable();
        this.starting$ = this.startingSubject.asObservable();

        this.hubConnection = this.window.$.hubConnection();
        this.hubConnection.url = channelConfig.url;
        this.hubProxy = this.hubConnection.createHubProxy(channelConfig.hubName);
        //this.hubConnection.qs = { "Authorization": `Bearer=${authWithAzureService.token}` };

        // Define handlers for the connection state events
        this.hubConnection.stateChanged((state: any) => {
            let newState = ConnectionState.Connecting;

            switch (state.newState) {
                case this.window.$.signalR.connectionState.connecting:
                    newState = ConnectionState.Connecting;
                    break;
                case this.window.$.signalR.connectionState.connected:
                    newState = ConnectionState.Connected;
                    break;
                case this.window.$.signalR.connectionState.reconnecting:
                    newState = ConnectionState.Reconnecting;
                    break;
                case this.window.$.signalR.connectionState.disconnected:
                    newState = ConnectionState.Disconnected;
                    break;
            }

            // Push the new state on our subject
            this.connectionStateSubject.next(newState);
        });

        // Define handlers for any errors
        this.hubConnection.error((error: any) => {
            // Push the error on our subject
            this.errorSubject.next(error);
        });

        this.hubProxy.on("onEvent", (channel: string, ev: ChannelEvent) => {
            //console.log(`onEvent - ${channel} channel`, ev);

            // This method acts like a broker for incoming messages. We
            //  check the interal array of subjects to see if one exists
            //  for the channel this came in on, and then emit the event
            //  on it. Otherwise we ignore the message.
            //
            let channelSub = this.subjects.find((x: ChannelSubject) => {
                return x.channel === channel;
            }) as ChannelSubject;

            // If we found a subject then emit the event on it
            if (channelSub !== undefined) {
                return channelSub.subject.next(ev);
            }
        });

        // Listen for tasks from the server
        this.hubProxy.on("listenTasks", (tasks: Task[]) => {
            //console.log("Task from signalr", tasks);
            return this.tasks.next(tasks);
        })
    }

    /**
     * Start the SignalR connection. The starting$ stream will emit an
     * event if the connection is established, otherwise it will emit an
     * error.
     */
    start(): void {
        // Now we only want the connection started once, so we have a special
        //  starting$ observable that clients can subscribe to know know if
        //  if the startup sequence is done.
        //
        // If we just mapped the start() promise to an observable, then any time
        //  a client subscried to it the start sequence would be triggered
        //  again since it's a cold observable.
        //this.hubConnection.start({ withCredentials: false })
        this.hubConnection.start()
            .done(() => {
                this.startingSubject.next();
            })
            .fail((error: any) => {
                this.startingSubject.error(error);
            });
    }

    /**
     * Get an observable that will contain the data associated with a specific
     * channel
     */
    sub(channel: string): Observable<ChannelEvent> {

        // Try to find an observable that we already created for the requested
        //  channel
        let channelSub = this.subjects.find((x: ChannelSubject) => {
            return x.channel === channel;
        }) as ChannelSubject;

        // If we already have one for this event, then just return it
        if (channelSub !== undefined) {
            console.log(`Found existing observable for ${channel} channel`)
            return channelSub.subject.asObservable();
        }

        // If we're here then we don't already have the observable to provide the
        //  caller, so we need to call the server method to join the channel
        //  and then create an observable that the caller can use to received
        //  messages.

        // Now we just create our internal object so we can track this subject
        //  in case someone else wants it too
        channelSub = new ChannelSubject();
        channelSub.channel = channel;
        channelSub.subject = new Subject<ChannelEvent>();
        this.subjects.push(channelSub);

        // Now SignalR is asynchronous, so we need to ensure the connection is
        //  established before we call any server methods. So we'll subscribe to
        //  the starting$ stream since that won't emit a value until the connection
        //  is ready
        this.starting$.subscribe(() => {
            this.hubProxy.invoke("Subscribe", channel)
                .done(() => {
                    console.log(`Successfully subscribed to ${channel} channel`);
                })
                .fail((error: any) => {
                    channelSub.subject.error(error);
                });
        },
            (error: any) => {
                channelSub.subject.error(error);
            });

        return channelSub.subject.asObservable();
    }

    /**
     * publish provides a way for calles to emit events on any channel. In a
     * production app the server would ensure that only authorized clients can
     * actually emit the message, but here we're not concerned about that.
     */
    publish(ev: ChannelEvent): void {
        this.hubProxy.invoke("Publish", ev);
    }

    /**
     * Get an observable that will contain the data 'Tasks' received from server
     */
    getTasksFromChannel(): Observable<Task[]> {
        return this.tasks.asObservable();
    }
}

Hello, we reviewed this issue and determined that it doesn't fall into the bug report or feature request category. This issue tracker is not suitable for support requests, please repost your issue on StackOverflow using tag angular-cli.
If you are wondering why we don't resolve support issues via the issue tracker, please check out this explanation.
If you believe this is a bug with the build system, please submit a simple reproduction that highlights the bug itself.


Rename extend to utilsExtend

Running a project's CI with<EMAIL_ADDRESS>raises the following
error:
Exception while running qunit-bdd `before` hook:
`undefined` is not a function
  (evaluating `extend['default'].bind(Model, null)`)

extend seems to be a pre-existing variable (and will probably be a
keyword in future browsers). Therefore extend['default'] is
undefined.
To work around this, export the utils/extend to a different name.

On further inspection, the issue seems to be with .bind().
Either way, extend will probably be a reserved word, so I'll leave this open to discussion.

Sounds like you got the .bind issue figured out - I'm not sure if we should change this because it might be a problem in the future.

@blimmer could you elaborate on the details of why this rename would be a problem in the future?

Sorry, I think there was a miscommunication. Let me rephrase - I don't think there's a strong case to make this change just because we think it could maybe be a reserved word in the future.


fix(trigger): adds IE/Edge support for @-trigger character

IE11/Edge does not support special characters (i.e. @) in keydown event (read more). Existing keyhandling had to be splitted into keypresshandling for showing up the search list and keydownhandling for navigating within the search list.
(kudos to RolandTa)


When using accelerate with deepspeed and peft, any accelerator_kwargs passed to PPOConfig( ) are not used?

A bit of context:
I am launching my script with accelerate launch my_script.py with a custom accelerate config file. I'm running this in a distributed training setting across 4 GPUs.
While saving a model, I get NCCL Timeout errors (default is 30mins). So, I increase the timeout to 1.5hr by passing kwargs_handlers=[InitProcessGroupKwargs(timeout=timedelta(seconds=5_400))] during Accelerator initialization in ppo_trainer.py.
However, these values are not used becauase the accelerator has already been initialized probably since I launch it via cli.
Is there a workaround for this? Or an option to edit the state in case some previously unset parameter is passed? Or .... I'm missing something?

asd

The kwargs issue seems to be an accelerate issue, would you mind raising it there? 30min should be more than enough time to save the model, I suspect something else is off when you save the model. How do you save the model?

@lvwerra sure I will do that. Yes, I felt that 30 mins is plenty of time for saving. I save the model using the _save_pretrained in ppo_trainer like so :
if ppo_trainer.accelerator.is_main_process:
        if ppo_trainer.is_distributed:
            torch.distributed.barrier()
        os.makedirs(os.path.join(output_dir, f"checkpoint_{chkpt_name}"), exist_ok=True)
        ppo_trainer._save_pretrained(os.path.join(output_dir, f"checkpoint_{chkpt_name}"))

Currently, I am trying to save after every optimization step. I use :  Accelerate with deepspeed stage 2 on 4 gpus with gradient accumulation over 8 steps


Implement configuration through environment variables

https://opentelemetry.io/docs/reference/specification/sdk-environment-variables/#general-sdk-configuration


Work around keyword name collisions in Go discovery sample gen

Extends https://github.com/googleapis/toolkit/pull/567 with additional
cases.
Addresses https://github.com/googleapis/toolkit/issues/550.

ping

Current coverage is 80.80% (diff: 100%)

Merging #588 into master will decrease coverage by 0.08%

@@             master       #588   diff @@
==========================================
  Files           258        258
  Lines          9736       7582   -2154
  Methods           0          0
  Messages          0          0
  Branches       1282       1224     -58
==========================================
- Hits           7876       6127   -1749
+ Misses         1527       1125    -402
+ Partials        333        330      -3

Powered by Codecov. Last update 6ab296b...fd13ec8


WIP: ROI breakout

@litghost looks like it the build is still taking quite a long time.
CI failed due to to this error:
[1918/1922] Generating murax_basys/artix7-xc7a50t-roi-virt-xc7a50t-test/toplevel.frames
FAILED: cd /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/build/tests/9-soc/murax && /usr/bin/cmake -E env PYTHONPATH=/tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/build/env/conda/lib/python3.7/site-packages:/tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray:/tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray/third_party/fasm /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/build/env/conda/bin/python3 /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray/utils/fasm2frames.py --db-root /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray-db/artix7 --sparse --emit_pudc_b_pullup /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/build/tests/9-soc/murax/murax_basys/artix7-xc7a50t-roi-virt-xc7a50t-test/toplevel.fasm /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/build/tests/9-soc/murax/murax_basys/artix7-xc7a50t-roi-virt-xc7a50t-test/toplevel.frames
Traceback (most recent call last):
  File "/tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray/utils/fasm2frames.py", line 198, in <module>
    main()
  File "/tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray/utils/fasm2frames.py", line 194, in main
    emit_pudc_b_pullup=args.emit_pudc_b_pullup)
  File "/tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray/utils/fasm2frames.py", line 122, in run
    assembler.parse_fasm_filename(filename_in, extra_features=extra_features)
  File "/tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7/third_party/prjxray/prjxray/fasm_assembler.py", line 180, in parse_fasm_filename
    raise FasmLookupError('\n'.join(missing_features))
prjxray.fasm_assembler.FasmLookupError: Segment DB HCLK_L_BOT_UTURN, key HCLK_L_BOT_UTURN.HCLK_LEAF_CLK_B_TOPL3.HCLK_CK_BUFHCLK11 not found from line 'HCLK_L_BOT_UTURN_X72Y130.HCLK_LEAF_CLK_B_TOPL3.HCLK_CK_BUFHCLK11'
Segment DB HCLK_L_BOT_UTURN, key HCLK_L_BOT_UTURN.ENABLE_BUFFER.HCLK_CK_BUFHCLK11 not found from line 'HCLK_L_BOT_UTURN_X72Y130.ENABLE_BUFFER.HCLK_CK_BUFHCLK11'
ninja: build stopped: subcommand failed.

HCLK_L_BOT_UTURN_X72Y130 is a HCLK tile that, instead of routing the clock wires both in the top and bot column, it does route only to the top column. This because the bottom column of clock region X1Y2 has some hard blocks (PCIE).
I believe that this could be easily fixed by translating HCLK_L_BOT_UTURN to HCLK_L and same for the right one.

I believe that this could be easily fixed by translating HCLK_L_BOT_UTURN to HCLK_L and same for the right one.

Sure.  We have support for this idea via segbit aliases, which is how we map LIOI3_SING/LIOB33_SING to LIOI3 etc.

Example segbit aliasing: https://github.com/SymbiFlow/prjxray/blob/master/fuzzers/005-tilegrid/generate_full.py#L301

HCLK_L_BOT_UTURN_X72Y130 is a HCLK tile that, instead of routing the clock wires both in the top and bot column, it does route only to the top column. This because the bottom column of clock region X1Y2 has some hard blocks (PCIE).

While I agree this issue needs to be fixed, I'm kind of suprised the placer chose to use fabric in that CMT at all because of the PCIE hard block.  I've filled https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/1014 to open the conversation with the VTR devs about obstructions.

@acomodi With https://github.com/SymbiFlow/prjxray/pull/1117 I was able to generate a valid bitstream for murax @ https://github.com/SymbiFlow/symbiflow-arch-defs/commit/72223b7efde8fe7b3348ed53c124a6e719ae83e3
There is also a fix for fasm2bels for the HCLK UTURN tiles.

@acomodi I've annotated the router, and some nets do take much longer than others: route_timing_log.zip
I'm currently post-processing the output of route_diag to visualize what the router is doing and trying to figure out what is happening.

FYI, initial visualization shows the router wandering in the wrong direction, so there is clearly a defect in the lookahead, I haven't been able to pin it down yet.

@litghost I have been able to reproduce murax and I can confirm it actually works on HW.
Now, I have been running route_diag but I got a segfault error, therefore I am now running vpr with the --router_debug_net -1. Still didn't find the bug in the lookahead that makes the router going in the wrong direction.

I got a segfault error

Do not supply the "--route" flag.  For some reason it still tries to run the full routers in route_diag if --route is supplied, which is the wrong thing to do.

I got a segfault error

Do not supply the "--route" flag. For some reason it still tries to run the full router in route_diag if --route is supplied, which is the wrong thing to do.

Should this be a bug upstream?

With the latest VPR I get the following unroutable situation in the bram test (as in CI):
# Routing
  RR Graph Nodes: 789813
  RR Graph Edges: 4443401
Confirming router algorithm: TIMING_DRIVEN.
---- ------ ------- ---- ------- ------- ------- ----------------- --------------- -------- ---------- ---------- ---------- ---------- --------
Iter   Time    pres  BBs    Heap  Re-Rtd  Re-Rtd Overused RR Nodes      Wirelength      CPD       sTNS       sWNS       hTNS       hWNS Est Succ
      (sec)     fac Updt    push    Nets   Conns                                       (ns)       (ns)       (ns)       (ns)       (ns)     Iter
---- ------ ------- ---- ------- ------- ------- ----------------- --------------- -------- ---------- ---------- ---------- ---------- --------
Warning 73: No routing path for connection to sink_rr 238798, retrying with full device bounding box
Warning 74: No routing path for connection to sink_rr 238741, retrying with full device bounding box
Warning 75: No routing path for connection to sink_rr 221878, retrying with full device bounding box
Cannot route from SYN-INPAD.inpad[0] (RR node: 163858 type: SOURCE location: (10,46) class: 0 capacity: 1) to BLK-TL-SLICEM.AX[0] (RR node: 221878 type: SINK location: (21,37) class: 7 capacity: 1) -- no possible path
Failed to route connection from 'in[2]' to '$techmap1655$auto$simplemap.cc:442:simplemap_dffe$279.cesr_mux.sr' for net 'in[2]' (#91)
Routing failed.
# Routing took 4.74 seconds (max_rss 2319.2 MiB, delta_rss +0.0 MiB)
Circuit is unroutable with a channel width factor of 500.
VPR failed to implement circuit
The entire flow of VPR took 13.80 seconds (max_rss 2319.2 MiB)

With the latest VPR I get the following unroutable situation in the bram test (as in CI):

Ya, a bug crept in during the latest refactor.   I'm working on walking back to the work version to find the regression.  https://github.com/litghost/vtr-verilog-to-routing/tree/working_intergration work, but isn't ready for code review.  The version I pushed on master+wip is, but something broke between the two that I haven't pinned down just yet.  Should have it fixed today.

With the latest VPR I get the following unroutable situation in the bram test (as in CI):

master+wip is no longer broken.  CI succeed all the up to the murax and picosoc on the 50T graph, which is still taking a long time.  I can see the problem in the lookahead data, don't have solution yet.

@litghost While dealing with the OSERDES I tried to use the latest VPR and the PLL gave me the same issue as the failure that happened in CI:
vpr/src/timing/timing_graph_builder.cpp:200 add_block_to_timing_graph: Assertion '!model_port->is_clock' failed (Primitive data output can not be a clock generator)

@litghost While dealing with the OSERDES I tried to use the latest VTR and the PLL gave me the same issue as the failure that happened in CI:
vpr/src/timing/timing_graph_builder.cpp:200 add_block_to_timing_graph: Assertion '!model_port->is_clock' failed (Primitive data output can not be a clock generator)

Ya, I see that.  This appears to be something new from the PLL.  Kevin added some code to propigate clock constraints through BELs, this might be a bug in that area.  I'll investigate today.

@litghost While dealing with the OSERDES I tried to use the latest VTR and the PLL gave me the same issue as the failure that happened in CI:
vpr/src/timing/timing_graph_builder.cpp:200 add_block_to_timing_graph: Assertion '!model_port->is_clock' failed (Primitive data output can not be a clock generator)

Bug filed: https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/1038

Superceeded by #1142


Fixed #30543 -- Correct validation of ModelAdmin's list_display

First attempt to get field via get_field, if that fails try getattr,
and only if both fail return E108 error.
If a field was retrieved by either way then check it is not a ManyToMany.
Fixes bug that a field for which getattr fails (e.g. because needs instance)
but get_field succeeds would incorrectly return E108 error.
Also include the errant item in E109 error message.

@ajcsimons Thanks for this patch :+1: Tests are required.

buildbot, test on selenium.

Updated in #11551.


Can't see files created by other app

My app creates a file in /Downloads directory.
The user can load this file again and retrieve the data (works like an offline backup).
Whoever, I start noticing that files created using an old version of the app weren't being displayed.
And they exists in the /Downloads directory.
The only files the app can 'see' are that which were generated by the new version.
I'm using Android emulator, Android 11
Video demo
Help please?! >_<
minSdkVersion 21
targetSdkVersion 30
compileSdkVersion 30
 result = await FilesystemPicker.open(
        rootName: directory.path,
        title: 'Restaurar backup',
        context: Get.context,
        allowedExtensions: ['.3dit'],
        fileTileSelectMode: FileTileSelectMode.wholeTile,
        rootDirectory: directory,
        fsType: FilesystemType.file,
        requestPermission: () async =>
            await Permission.storage.request().isGranted,
        folderIconColor: Colors.amber,
      );

dependencies:
  flutter:
    sdk: flutter
  downloads_path_provider: ^0.1.0
  dropdown_search: ^0.6.3
  encrypt: ^5.0.1
  filesystem_picker: ^1.0.4
  firebase_core: ^1.6.0
  firebase_remote_config: ^0.10.0+5
  flutter_screenutil: ^2.3.1
  flutter_spinbox: ^0.5.4
  get: ^4.3.8
  google_mobile_ads: ^0.13.4
  image_picker: ^0.8.3+2
  launch_review: ^3.0.1
  open_file: ^3.2.1
  package_info: ^2.0.2
  path: ^1.8.0
  path_provider: ^2.0.2
  path_provider_macos: ^2.0.2
  path_provider_windows: ^2.0.3
  pdf: ^3.5.0
  permission_handler: ^8.1.4+2
  provider: ^5.0.0
  shared_preferences: ^2.0.6
  sqflite_sqlcipher: ^2.0.0
  url_launcher: ^6.0.10
  uuid: ^3.0.4

flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 2.2.3, on Microsoft Windows [versÃ£o 10.0.19043.1165], locale pt-BR)
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
[√] Chrome - develop for the web
[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.11.2)
[√] Android Studio (version 4.1.0)
[√] VS Code (version 1.60.0)
[√] Connected device (4 available)
@andyduke

@daybson This is probably due to changes in Android 11 (scoped storage). You need to set up storage permissions for the application or use legacy storage permissions.

I forgot to mention:
I'm already using:

I don't know what else I can do...

Since I'm using sqlite, I 'solved' using the callback onUpgrade database to create an automatic backup of user files at directory 'getExternalStorageDirectory()'. And then, the new version of the app can 'see' the files since they were created by it self. It seems to be working ok, tested on android emulators 8.1, 9.0, 10.0 and 11.0. I leave all the permissions request below on manifest, I'm not sure if preserveLegacyExternalStorage or MANAGE_EXTERNAL_STORAGE are really necessary, but is working, which is fine for now. If google could stop making so many breaking changes would be nice... ~_~
compileSdkVersion 30
minSdkVersion 21
targetSdkVersion 30
requestLegacyExternalStorage="true"
preserveLegacyExternalStorage="true"

I am closing the issue as it is not related to the functioning of the package, but is related to setting privileges in Android.


Offer new installation methods for mercadopago.js

This section of the API documentation tells us to import the JavaScript library by placing that <script> tag into our HTML.
<script src="https://secure.mlstatic.com/sdk/javascript/v1/mercadopago.js"></script>

Developers who follow separation of concerns will not like this approach. Being a Webpack user, all my JavaScript stays in assets/js, which is then compiled to the public/ directory.
I suggest we offer this library as an npm package.
We would install it as a dependency of our project (I picked 'mercadopago' as the package name):
npm install mercadopago

And then import the module in our code:
require('mercadopago');

We could always upgrade to the latest version of the library with
npm update

I apologize if this is not the appropriate place for this kind of issue. I did not know where else to write it.

Sorry, I didn't see there was a Node SDK available. That seems to be exactly what I described here. I'm gonna close this issue then.

I thought the Node SDK was equivalent to the mercadopago.js library, which tokenizes sensitive payment information; but then I realized it is using the access token, which is the backend key. The Node SDK is meant for servers running on Node then. My server is Apache. That makes my issue here valid, after all. I'm reopening.
Since mercadopago is already taken, it could be called mercadopago-frontend or mercadopago-tokenizer or something like that.

I have sent a support message with this suggestion to Mercado Pago, so I'm closing this issue as it's not relevant to the PHP SDK.


Unresolved reference: VERSION_NAME  Unresolved reference: VERSION_CODE

Why I got that kind of error?
e: C:\src\flutter.pub-cache\hosted\pub.dartlang.org\flutter_paystack-1.0.4+1\android\src\main\kotlin\co\paystack\flutterpaystack\MethodCallHandlerImpl.kt: (33, 100): Unresolved reference: VERSION_NAME
e: C:\src\flutter.pub-cache\hosted\pub.dartlang.org\flutter_paystack-1.0.4+1\android\src\main\kotlin\co\paystack\flutterpaystack\MethodCallHandlerImpl.kt: (43, 48): Unresolved reference: VERSION_CODE
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':flutter_paystack:compileDebugKotlin'.

I also have this issue

Hello @bartukaan sir,
have you found any solution ? i am facing same issue

I've added version_name and version_code manually to get rid of the situation but I don't think this is a very healthy solution

in which file sir ?
i tried by adding version code n name in build.gradle but facing same err

\flutter_paystack-1.0.4+1\android\src\main\kotlin\co\paystack\flutterpaystack\MethodCallHandlerImpl.kt:
"getUserAgent" -> {
//result.success("Android_" + Build.VERSION.SDK_INT + "Paystack" + BuildConfig.VERSION_NAME)
result.success("Android_" + "29" + "Paystack" + "1.0.0" )
}
        "getVersionCode" -> {
            //result.success(BuildConfig.VERSION_CODE.toString())
            result.success("1")
        }

Hi, @barkutan can find the methodcallhandlerimpl.kt

@bidex160 sir, its under flutter sdk's folder ... hosted\pub.dartlang.org\flutter_paystack-1.0.4+1\android\src\main\kotlin\co\paystack\flutterpaystack\

Ok thanks @bartukaan ...
"getUserAgent" -> {
//result.success("Android_" + Build.VERSION.SDK_INT + "Paystack" + BuildConfig.VERSION_NAME)
result.success("Android_" + "29" + "Paystack" + "1.0.0" )
}
    "getVersionCode" -> {
        //result.success(BuildConfig.VERSION_CODE.toString())
        result.success("1")
    }

So I'm going to paste this right,?

@bidex160  yes, right.

Hi @wilburt , Is there any idea with that situation?

Hi @wilburt , Is there any idea with that situation?

@bartukaan solution was good..thanks boss

@bartukaan solution was good..thanks boss

\flutter_paystack-1.0.4+1\android\src\main\kotlin\co\paystack\flutterpaystack\MethodCallHandlerImpl.kt:
        "getUserAgent" -> {
            //result.success("Android_" + Build.VERSION.SDK_INT + "_Paystack_" + BuildConfig.VERSION_NAME)
            result.success("Android_" + "29" + "_Paystack_" + "1.0.0" )
        }

        "getVersionCode" -> {
            //result.success(BuildConfig.VERSION_CODE.toString())
            result.success("1")
        }

Is this really a solution?? How about CI builds?

@f0rx  it is just temporary solution until development team fix it.

@f0rx @bartukaan this has already been fixed and released. Please, update to 1.0.5+1.

@f0rx @bartukaan this has already been fixed and released. Please, update to 1.0.5+1.

Yes true. Unfortunately i'm not prepared to migrate my project to Null-safety.
Solution that worked for me was fork the repo at ^1.0.4+1, apply the fix above and depend on my fork.
Thanks for the tip 👍🏾


Remove some unused toolkits utils.

The deleted utils are used by GraphLab Create, but not used
anywhere in the SFrame package.

Aborted the build, I'm going to put some of the functions back in for now because it would be too much work to update all of the calling modules.

Update finished. Ready to review.


Faulty calculation path generated for GET with $filter

Hi,
Problem Statement
We have a API automation test script using the odata-library to test our RAP-V4 app.
Recently we upgraded the odata-library version from 2.2.4 to 2.3.1.
Since this upgrade we have observed that the URL path calculated for a GET request with $filter is inserting the key params from the previous API call.
The API execution call flow:

Create the object via API.
Call bound action Prepare via API. Has key parameters.
Call bound action Activate via API. Has key parameters.
Read (GET) list for the same entity set with $filters. This has no key parameters and is failing after the upgrade as the URL generated is with the key additions.

URL Generated
@sap_oss/odata-library: 2.2.4
https://<server>/...../0001/RootEntity?$filter=RootEntityID%20eq%27RootEntity_SANITY_1706099821%27&$format=json&$skip=0&$top=1

@sap_oss/odata-library: 2.3.1
https://<server>/...../0001/RootEntity?(JRootEntityUUID=9b5ecdc1-c70e-1ede-aeec-9f801f9efd50,IsActiveEntity=false)?$filter=RootEntityID%20eq%27RootEntity_SANITY_1706099821%27&$format=json&$skip=0&$top=1

Analysis
What we also found is that the method calculatePath() is returning the incorrect URL path.
As per observation, the foundResponseType variable is returning a value 3 which does not exists in the requestPathCalculate array.
Expectation is to retrieve the path using value 2.

Regards,
SN

Already fixed in PR 121. Calculation is correct for set values, added automatic reset for entity, when bound action on an instance is called.


Query regd. capability

Hii,
Among all the GMSH2exo converters, I found yours to be the latest updated. Does it support conversion of Physical volumes --> Blocks and Physical Surfaces --> Sidesets ?

TLDR; yes. It is why I wrote this small code. The other converters were not doing this. But I was not looking too hard, either.
Detailed answer:
In 3D: physical volumes are converted to blocks and physical surfaces to side sets,
in 2D: physical surfaces become blocks and physical curves become side sets.
I think I need to rewrite the "features" section in README, it is not very clear that the code does this.
Note that only 1st order elements are currently supported, i.e. LINE2, TRI3, TET4 and HEX8. If you wanted 2nd order elements, I would have to add that. This is tracked by issue #15.
Also, I see I don't have discussions active in this project.
Hope this code will be helpful to you...


Add support for better looking 'documentation' in completion items (i.e. markdown format)

It looks like completionItem only supports 'plain text' documentation. Well, not sure, the description in LSP protocol just says the documentation is a 'human readable string' without being particularly specific about how the string is interpreted/rendered by a client. I suppose technically, this leaves it totally to the client to decide how to render the doc strings.
This is a shame I think, because hoverinfo, which tends to display the same information already explicitly supports markdown.
The markdown in hover infos, when properly rendered, looks (or can look) great. It looks great, for example, in vscode (and so should be able to look great in other lsp client implementations too).
The 'documentation' string however is not being rendered in the same way. In vscode, when completions are shown a single line of 'doc text' is shown 'smashed together' without respecting the newlines. This looks pretty awful when the content is proper markdown.
It is possible in vscode to click a little 'info' icon to see more. Then it shows the markdown text in a new popup view and there it respects newlines (but otherwise does not render markdown specially).
So, I'm not sure totally sure if I should file a bug with vscode (because it displays markdown poorly) or, a issue ticket with LSP to clarify and/or extend the protocol spec to explicitly support markdown for the 'documentation' text snippets in completion items.

This is definitely a shortcoming in LSP.
Note that not only the CompletionItem has a documentation property, but also the SignatureInformation and the ParameterInformation.
The format of the documentation property should be identical to the hover contents, i.e. Markdown.

I think #111 is about the same issue.

Correct. Marking as dup.


Self contained arrays

I get the impression that their is a hidden assumption in the spec that all the information about an array
must be defined with the array. Two examples:
1. named_dimensions are specific to a specific array and have no meaning outside that array's direct metadata.
2. data type extensions must be repeated with each array that uses it.
There are probably others that I have not yet spotted.
In any case, if this is a hidden assumption, then it should be made explicit.

The discussion in Issue https://github.com/zarr-developers/zarr-specs/issues/273
seems to validate my assumption that each array is completely independent of all other arrays
and its metadata is completely self contained including named dimensions and all extensions.
I recall a discussion about this in a Zarr meeting a long time ago. The reason for this assumption
is to support parallel processing at the array level so that a processor need not access any other metadata
and can operate on the array completely independently.
One consequence should be that groups serve only as namespaces and that the group's zarr.info
should not need to exist.
The one flaw in this is group level attributes. It is unclear what the use is for a group level attribute.
If it impacts the processing of an array in any way, then it violates the self-contained nature of arrays.
If it is to provide some documentation of the file, then it should be sufficient to only have attributes
in the top-level group. Further these attributes should have no consequence for processing an array.

The spec says that array/group attributes are intended for storage of arbitrary user metadata. Attributes are not intended to change how arrays are encoded. If they did, that would not be supported by other implementations.

I have a question: How do implementations of the zarr spec represent the underlying array data? Are chunks just normal in-memory array objects (e.g a numpy array in python)? If so, what if the chunk is too big to fit in memory? Or is array manipulation only ever done via updating the metadata file? I'm interested in implementing the v3 spec in a functional language that currently doesn't have an implementation. I tried reading the spec but it does not seem to mention any example of how array chunks are represented in practice.


The library is about to change, so maybe this will be fixed too.


[Bug]: ScrollArea unable to scroll

Turns out using inline styling doesn't causes some weird bug of not scrolling. Moved back to use Vue SFC's style tag

@khairulhaaziq I trhink you have something configured in the runner that has been causing (previously fine) build to fail 😅


Uncaught TypeError: Cannot read property 'isValidationCancelled' of null(…)

I'm getting this error. I think the getFormElementByName() is returning null and is not able to proceed further. I'm showing a popup on browser back button and preventing the route change using preventDefault().  After this whenever I select a input box I'm getting the following error and the fields are not validated anymore.
@ghiscoding  : Any thoughts on this? Thanks.

If I look in the code, it uses it this way
// if validation is cancelled, then erase error message
      if(!!formElmObj && formElmObj.isValidationCancelled === true) {
        message = '';
      }

So technically calling it like this at first if(!!formElmObj... should not be a problem on a null, it should stop right there. However !!formElmObj is when true or filled, so the property might be filled but without the isValidationCancelled. I should probably check to see if that property does exist (with hasOwnProperty) but anyhow that won't help you much, does it?

Which Router are using? I might have found a possible problem with UI Router, I got code for the regular Angular Router but I forgot to have an option for UI Router which I might need to address.

Yes I'm using regular Angular Router.

I actually just pushed version 1.5.10 to fix a UI Router issue but since you just said that you use regular Angular Router then it's probably unrelated to your issue.

Could you try changing the Global Option resetGlobalOptionsOnRouteChange to false instead of the default true, please refer to Wiki - Global Options for more info.
If that doesn't help, then I would need a Plunker example to help you more.

Thanks @ghiscoding. Will check it out.

I have put in a fix for a long standing problem I've seen with passing formName to checkFormValidity() and so, checkFormValidity($scope.formName) should work as expected.
Please update to your project to latest version 1.5.11.
Please close the ticket if that fixes your issue. Thanks

A small issue was created by prior version, please update to version 1.5.12 to be on the safe side.
Could you also close the issue, if this fixes it. Thanks

scope.$on('angularValidation.revalidate', function(event, args){
if (args == ctrl.$name)
{
ctrl.revalidateCalled = true;
var value = ctrl.$modelValue;
          if (!elm.isValidationCancelled) {
          // attempt to validate & run validation callback if user requested it
          var validationPromise = attemptToValidate(value);
          if(!!_validationCallback) {
            commonObj.runValidationCallbackOnPromise(validationPromise, _validationCallback);
          }
        }
        else {
          ctrl.$setValidity('validation', true);
        }
      }
    });

The issue reported by @padala  is due to above code which is present in 'validation-directive.js'.
I think fix needs here in this 'if' condition i.e
if (!!elm && !elm.isValidationCancelled) {
// attempt to validate & run validation callback if user requested it
.....
......
}

Thanks for the finding, however I don't see how this can happen. If the element is null then what's the point of attaching a validation? If someone uses Angular-Validation into another directive, I think that the other directive should check the null elm before adding the validation.
I could certainly add a null elm check in my Angular-Validation directive but I don't really see the point. I mean if you are using Angular-Validation it's because you have an element that exist in the DOM... don't you?
I don't mind adding a null elm check in my directive, but I'd like to know how this can be really useful. If you could give more details, I'll be happy to understand. Thanks

Thanks for the reply.
http://plnkr.co/edit/Agkimo8K8xypHuGMSb1j?p=catalogue
Above plnker has Snapshot of my code, on route change event, I am showing a popup confirmation modal, if user clicks 'Yes' I am firing an event 'createStudent' from 'PopupController' which is handled in 'StudentCreationCntrlr' and from the handler I am calling 'submitAction' function. This is case where I am seeing "Uncaught TypeError: Cannot read property 'isValidationCancelled' of null(…)" error message in the console.

Hello and thanks for providing the Plunker, however it seems to be incomplete as all the scripts are missing and even if I had them (copy+paste from my own plunker), it still gives a few errors. It's a little hard to help if there is no functional plunker.
If it's too long to get a functional plunker, then 1 thing you could do is to use the unminified version of Angular-Validation (if you use NPM, you could just point to them or if you don't then the best is to download the whole Angular-Validation as a zip and use them in your project. The order of the unminified version has to be like the following:
<script type="text/javascript" src="./src/validation-directive.js"></script>
<script type="text/javascript" src="./src/validation-service.js"></script>
<script type="text/javascript" src="./src/validation-common.js"></script>
<script type="text/javascript" src="./src/validation-rules.js"></script>

I would suggest you start by modifying 2 lines of code and see if that helps you at all. Could you modify slightly the validation-directive.js to make sure that isValidationCancelled is only called is available. You can modify 2 lines of code
// validation-directive.js
// line 98,  from this:
if (!elm.isValidationCancelled) {
 ...
// to this:
if (!!elm && elm.hasOwnProperty("isValidationCancelled")) {
...

// then line 269, from this:
if (!formElmObj.isValidationCancelled) {
...
// to this:
if (!!formElmObj && formElmObj.hasOwnProperty("isValidationCancelled")) {
...

Those lines are the only lines that could send the error you describe to the console. I'm not sure how much that will help you because at the end what comes down is that you have a form element or an element that is null, which is why the validation fails. But the question is more... why are they null to start with?

We're using ngrouter. When user presses browser back we're preventing him and asking him to save the changes. After preventing the event of locationChangeStart we're getting this error when a field is focused/selected.

Without a function plunker, it's really hard to help you.
However I made the change that I mentioned in my last post. I just pushed version 1.5.13, give it a try.

@ghiscoding With latest change if you try to validate empty form (inputs are left intact) through checkFormValidity you will get
checkFormValidity() requires a valid Angular Form or $scope/vm object passed as argument to work properly, for example:: fn($scope) OR fn($scope.form1) OR fn(vm) OR fn(vm.form1)
If it is unclear I can spend some time on plunker sample.

Seems to be related to what I said earlier, you're getting a null element and/or a null form. You should not be passing a null form, that is problem believed to be on your side not a problem from Angular-Validation itself. You will have to figure out why the form is null, once you find that then the validation will probably start to work as it should.

Actually I figured out the issue. The element is still present in the dom. But when I'm trying to change the route the resetGlobalOptionsOnRouteChange is somehow becoming undefined and _formElements becomes empty and hence the error isValidationCancelled of null. I think the best approach is to have the default value of resetGlobalOptionsOnRouteChange as false and should be allowed to configure just like now.

Ok I'm glad you figured it out. Please remember that the variable of resetGlobalOptionsOnRouteChange set to false will also mean that your object will be available even after the route is changed (hence the name resetGlobalOptionsOnRouteChange).
If this problem is resolved, can we now close the open issue?

Yeah. Thanks.


Dropdown - Menu ( options size fit )

Describe the bug
Dropdowm menu options should fit based on content length.

To Reproduce
Include steps to reproduce the behaviour.
() => {
  const selectOption = (value) => {
    console.log(value);
  };
  const options = [
    {
      value: 1,
      label: "Android",
    },
  ];

  return (
    <DxcInset space="2rem">
      <DxcDropdown
        icon={<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 512"><path d="M64 360c30.9 0 56 25.1 56 56s-25.1 56-56 56s-56-25.1-56-56s25.1-56 56-56zm0-160c30.9 0 56 25.1 56 56s-25.1 56-56 56s-56-25.1-56-56s25.1-56 56-56zM120 96c0 30.9-25.1 56-56 56S8 126.9 8 96S33.1 40 64 40s56 25.1 56 56z"/></svg>}
        caretHidden={true}
        options={options}
        onSelectOption={selectOption}
        size="small"
        padding="xxsmall"
      ></DxcDropdown>
    </DxcInset>
  );
}

Example:

Create a new React App using create-react-app.
Install the @dxc-technology\halstack-react dependencies and run the app.
Click on '...'.
Scroll down to '...'.
See the error.

Expected behaviour

https://codesandbox.io/s/dropdown-432qn0?file=/index.html

Screenshots
If applicable, add screenshots to help explain your problem.

hi @HanojHanu
Your request seems fair. In the past, we designed the component with the idea of a button and a menu with the same width, but this premise seems to fit better a select component rather than a dropdown, which is a navigational component. Anyways, we will study this as part of the component re-design that will take place shortly (#835). You can track our progress there!
To conclude, be careful with the padding prop in your code snippet as it does not exist in the component.
Thanks for the feedback 😃!

Yes, just tring padding to remove unwanted space around my 3-dot menu..

That space is because you are adding a fixed size (size="small"). Try to remove it and the icon should be centred.

The space around the icon is a design decision and can't be removed. As I said, this component anatomy was inherited from Material UI and is a bit outdated, we have planned a re-design at a certain point in the future and we will consider this scenario.


Support int64 histograms

          As a note, I think it is fine that we are only handling float64 histograms here, because

this code is just handling testcases.
Sum is the only value used here that can be int or float in metricdata.Histogram[N] (we don't read Min or Max) and Sum() always returns a float64, so there shouldn't be any runtime issues with this.
We force float64 when we handle Sum anyway, which is consistent with the behavior prior to this update and therefore not breaking.

However, we should follow this up with support for int64 histograms. Otherwise, users who switch to the GCP exporter might see slightly different values since we force floats in the output calculation.  That would include adding a test case for an int64 histogram, which we don't appear to have currently. Will make a separate issue to track this.
Originally posted by @damemi in https://github.com/GoogleCloudPlatform/opentelemetry-operations-go/pull/620#discussion_r1207045732

Going to close this, it's not a top priority and unlikely to be a huge issue.


Cypress execution fails during test phase

Before opening, please confirm:

[X] I have checked to see if my question is addressed in the FAQ.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
d2hlv8ni7glvyy
Region
eu-west-1
Amplify Console feature
E2E tests
Describe the bug
Cypress execution fails during Test phase.
Expected behavior
Cypress to correctly run.
Reproduction steps
https://docs.aws.amazon.com/en_us/amplify/latest/userguide/running-tests.html
Build Settings
version: 1
env:
  variables:
backend:
  phases:
    preBuild:
      commands:
    build:
      commands:
        - amplifyPush --simple
    postBuild:
      commands:
frontend:
  phases:
    preBuild:
      commands:
        - yarn install
    build:
      commands:
        - yarn run build
  artifacts:
    baseDirectory: build
    discard-paths: yes
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*
test:
  phases:
    preTest:
      commands:
        - rm -rf node_modules
        - yarn install --frozen-lockfile
        - yarn add<EMAIL_ADDRESS>--dev
        - yarn add<EMAIL_ADDRESS>--dev
        - yarn add<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>--dev
        - yarn run cypress:clean
        - yarn run pm2 start 'yarn run start'
        - yarn run wait-on https://localhost:3000
    test:
      commands:
        - yarn run cypress run --reporter mochawesome --reporter-options 'reportDir=cypress/report/mochawesome-report,overwrite=false,html=false,json=true,timestamp=mmddyyyy_HHMMss'
    postTest:
      commands:
        - yarn run mochawesome-merge cypress/report/mochawesome-report/*.json > cypress/report/mochawesome.json
        - yarn run pm2 kill
  artifacts:
    baseDirectory: cypress
    configFilePath: '**/mochawesome.json'
    files:
      - '**/*.png'
      - '**/*.mp4'

Additional information
                                 # Starting phase: test
                                 # Executing command: yarn run cypress run --reporter mochawesome --reporter-options 'reportDir=cypress/report/mochawesome-report,overwrite=false,html=false,json=true,timestamp=mmddyyyy_HHMMss'
2021-12-19T13:46:56.979Z [INFO]: yarn run v1.22.0
2021-12-19T13:46:57.020Z [INFO]: $ /codebuild/output/src671159186/src/codistica-website/node_modules/.bin/cypress run --reporter mochawesome --reporter-options reportDir=cypress/report/mochawesome-report,overwrite=false,html=false,json=true,timestamp=mmddyyyy_HHMMss
2021-12-19T13:46:57.327Z [INFO]: It looks like this is your first time using Cypress: 9.1.0
2021-12-19T13:46:57.327Z [INFO]:
2021-12-19T13:46:57.330Z [INFO]: [STARTED] Task without title.
2021-12-19T13:46:59.928Z [INFO]: [SUCCESS] Task without title.
2021-12-19T13:46:59.929Z [INFO]: Opening Cypress...
2021-12-19T13:47:01.340Z [WARNING]: [3387:1219/134701.340292:ERROR:bus.cc(392)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
2021-12-19T13:47:01.342Z [WARNING]: [3387:1219/134701.342161:ERROR:bus.cc(392)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2021-12-19T13:47:01.342Z [WARNING]: [3387:1219/134701.342301:ERROR:bus.cc(392)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2021-12-19T13:47:01.354Z [WARNING]: [3540:1219/134701.354545:ERROR:gpu_init.cc(453)] Passthrough is not supported, GL is swiftshader, ANGLE is
2021-12-19T13:47:02.268Z [INFO]: The plugins file is missing or invalid.
                                 Your `pluginsFile` is set to `/codebuild/output/src671159186/src/codistica-website/cypress/plugins/index.js`, but either the file is missing, it contains a syntax error, or threw an error when required. The `pluginsFile` must be a `.js`, `.ts`, or `.coffee` file.
                                 Or you might have renamed the extension of your `pluginsFile`. If that's the case, restart the test runner.
                                 Please fix this, or set `pluginsFile` to `false` if a plugins file is not necessary for your project.
2021-12-19T13:47:02.269Z [INFO]: /codebuild/output/src671159186/src/codistica-website/node_modules/@cypress/react/plugins/utils/get-transpile-folders.js:5
                                 const rawFolders = config.addTranspiledFolders ?? []
                                 ^
                                 SyntaxError: Unexpected token '?'
                                 at wrapSafe (internal/modules/cjs/loader.js:915:16)
                                 at Module._compile (internal/modules/cjs/loader.js:963:27)
                                 at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
                                 at Module.load (internal/modules/cjs/loader.js:863:32)
                                 at Function.Module._load (internal/modules/cjs/loader.js:708:14)
                                 at Module.require (internal/modules/cjs/loader.js:887:19)
                                 at require (internal/modules/cjs/helpers.js:74:18)
                                 at Object.<anonymous> (/codebuild/output/src671159186/src/codistica-website/node_modules/@cypress/react/plugins/react-scripts/findReactScriptsWebpackConfig.js:6:33)
                                 at Module._compile (internal/modules/cjs/loader.js:999:30)
                                 at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
                                 at Module.load (internal/modules/cjs/loader.js:863:32)
                                 at Function.Module._load (internal/modules/cjs/loader.js:708:14)
                                 at Module.require (internal/modules/cjs/loader.js:887:19)
                                 at require (internal/modules/cjs/helpers.js:74:18)
                                 at Object.<anonymous> (/codebuild/output/src671159186/src/codistica-website/node_modules/@cypress/react/plugins/react-scripts/index.js:2:39)
                                 at Module._compile (internal/modules/cjs/loader.js:999:30)
2021-12-19T13:47:02.339Z [WARNING]: error Command failed with exit code 1.
2021-12-19T13:47:02.340Z [INFO]: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
2021-12-19T13:47:02.345Z [INFO]: # Completed phase: test
                                 # Starting phase: postTest
2021-12-19T13:47:02.345Z [INFO]: # Executing command: yarn run mochawesome-merge cypress/report/mochawesome-report/*.json > cypress/report/mochawesome.json
2021-12-19T13:47:02.346Z [WARNING]: /codebuild/output/src671159186/src/codistica-website/tests.sh: line 40: cypress/report/mochawesome.json: No such file or directory
2021-12-19T13:47:02.347Z [ERROR]: !!! Test execution failed, one or more tests are not passing
2021-12-19T13:47:02.349Z [INFO]: # Starting test artifact upload process...
2021-12-19T13:47:02.358Z [INFO]: # Uploading build artifact 'testConfig.json'...
2021-12-19T13:47:02.362Z [INFO]: # Build artifact is: 0MB
2021-12-19T13:47:02.363Z [INFO]: # Uploading build artifact 'testArtifacts.zip'...
2021-12-19T13:47:02.431Z [INFO]: # Test artifact upload completed
2021-12-19T13:47:02.432Z [ERROR]: !!! Non-Zero Exit Code detected
2021-12-19T13:47:02.432Z [INFO]: # Starting environment caching...
2021-12-19T13:47:02.432Z [INFO]: # Uploading environment cache artifact...
2021-12-19T13:47:02.511Z [INFO]: # Environment caching completed
Terminating logging...

The problem was Amplify's Node version not supporting the Nullish Coalescing Operator ??.
See this issue: https://github.com/cypress-io/cypress/issues/19421


Hide this obsoleted thing

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


Add new tables to support plan object type

My implementation differs from the description in Jira in a number of places::

Table name is singular to match goal table
Use created enum rather than varchar for status to force content to match
Names of created_at/updated_at changed to match goal table
Have enforced not null on updated_date - this means created and updated will need to be set when a plan is first added

I also have some questions:

For the oasys_assesment_pk field - can we set this to a varchar with a length limit rather than text?
Do we need a unique identifier on oasys_assessment_pk ?
Is there a reason the existing migration alter statements do not currently prefix the table name with the schema? e.g. sentence-plan.goal instead of goal ? I have mirrored this behaviour, but it makes IntelliJ unhappy.
When adding the plan_uuid to the goal table I haven’t set a default value - this will mean any environment we want to run this migration on will need its data deleting first. Is this acceptable?

My implementation differs from the description in Jira in a number of places::

Table name is singular to match goal table
Use created enum rather than varchar for status to force content to match
Names of created_at/updated_at changed to match goal table
Have enforced not null on updated_date - this means created and updated will need to match when a plan is first added

I also have some questions:

For the oasys_pk_to_plan field - can we set this to a varchar with a length limit rather than text?
Do we need a unique identifier on oasys_assessment_pk ?
Is there a reason the existing migration alter statements do not currently prefix the table name with the schema? e.g. sentence-plan.goal instead of goal ? I have mirrored this behaviour, but it makes IntelliJ unhappy.
When adding the plan_uuid to the goal table I haven’t set a default value - this will mean any environment we want to run this migration on will need its data deleting first. Is this acceptable?

Regarding 3rd -> schema name is already given in application.yaml so anything defined in migration will automatically go in this schema.

OK I've made the changes I suggested above and added a new migration which adds a sample plan during a test run.
This is ready for review.


Investigate error compensation

Implement 'donate your click to science' button

No longer necessary, someone else did it: https://www.reddit.com/r/Knightsofthebutton/comments/32kfqx/on_latencies/?sort=confidence


Does the source code include the pro edition?

Thanks for your great work.

Hey @tim3385 yes and no—the source code does contain the full application, including Pro mode—but it uses some APIs you may need to gain access to (like GPT-4). Hope that answers your question!


Can't start pool since yesterday

This is all I get, after this the program exits. Same with Lightning Terminal.
2022-04-07 09:46:22.187 [INF] POOL: Version: 0.5.5-alpha commit=v0.5.5-alpha-9-gee7924fbc22fdf0ba2a4d6889a65371d99be7191
2022-04-07 09:46:22.189 [INF] LNDC: Creating lnd connection to localhost:10009
2022-04-07 09:46:22.191 [INF] LNDC: Connected to lnd
2022-04-07 09:46:22.202 [INF] LNDC: Waiting for lnd to unlock
2022-04-07 09:46:22.205 [INF] LNDC: Wallet state of lnd is now: Lnd main server is ready for requests
2022-04-07 09:46:22.300 [INF] LNDC: lnd version: v0.14.99-beta, build tags 'autopilotrpc,signrpc,walletrpc,chainrpc,invoicesrpc,watchtowerrpc,monitoring,kvdb_postgres,kvdb_etcd'
2022-04-07 09:46:22.302 [INF] LNDC: Using network mainnet
2022-04-07 09:46:22.302 [INF] LNDC: Waiting for lnd to be fully synced to its chain backend, this might take a while
2022-04-07 09:46:22.388 [INF] LNDC: lnd is now fully synced to its chain backend
2022-04-07 09:46:22.569 [INF] POOL: Auction server address: pool.lightning.finance:12010
2022-04-07 09:46:22.579 [INF] CLDB: Checking for schema update: latest_version=1, db_version=1
2022-04-07 09:46:22.580 [INF] RPCS: Starting trader server
2022-04-07 09:46:22.843 [INF] RPCS: Connected to lnd node <...> with pubkey <...>
2022-04-07 09:46:22.907 [INF] ACCT: Watching spend of <...> for account 03e1ab660f8c51f506258fdd5410badc682374b3ad349e8438ba10aa2558a25f0b
2022-04-07 09:46:23.797 [INF] AUCT: Successfully connected to auction server
2022-04-07 09:46:24.006 [INF] AUCT: Server is shutting down, will reconnect in 5s
2022-04-07 09:46:24.006 [ERR] AUCT: Authentication failed for account 03e1ab660f8c51f506258fdd5410badc682374b3ad349e8438ba10aa2558a25f0b: authentication was canceled
2022-04-07 09:46:24.007 [INF] AUCT: Shutting down auctioneer client
2022-04-07 09:46:24.007 [ERR] ACCT: Unable to receive block notification: rpc error: code = Canceled desc = grpc: the client connection is closing
unable to start server: unable to start account manager: unable to resume account 03e1ab660f8c51f506258fdd5410badc682374b3ad349e8438ba10aa2558a25f0b: unable to subscribe for account updates: authentication was canceled

Thank you for the report. There was something wrong on the server side. It should be fixed now. Can you confirm you can start Pool again?


Remove master_node_restarted.json, as SRE does not restart masters that

have been stopped by the customer

/approve
/lgtm


Philips Hue Beyond Lamp creates errors

Home Assistant release with the issue:

0.82.1
Last working Home Assistant release (if known):
Before 0.80, but not sure. It worked for a long time.
Operating environment (Hass.io/Docker/Windows/etc.):

Docker on Ubuntu 18
Component/platform:

Philips Hue
Description of problem:
When adding a Philips Hue Beyond Lamp to the Hue Bridge, Home Assistant immediatly gets a lot of errors in the log file. A Log entry is generated for both the Up and Down lamp. The lights do get added to Home Assistant. despite the error. But as the Logfile is overflowing with errors they need to be removed from the Hue Bridge again.
`
Log Details (ERROR)
Tue Nov 27 2018 08:57:52 GMT+0100 (Centraleuropæisk normaltid)
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/app/homeassistant/helpers/entity.py", line 216, in async_update_ha_state
"No entity id specified for entity {}".format(self.name))
homeassistant.exceptions.NoEntitySpecifiedError: No entity id specified for entity beyond_up`
`
Log Details (ERROR)
Tue Nov 27 2018 08:57:52 GMT+0100 (Centraleuropæisk normaltid)
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/app/homeassistant/helpers/entity.py", line 216, in async_update_ha_state
"No entity id specified for entity {}".format(self.name))
homeassistant.exceptions.NoEntitySpecifiedError: No entity id specified for entity beyond_down`
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

Traceback (if applicable):

Additional information:

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/app/homeassistant/helpers/entity.py", line 310, in async_update_ha_state
self.entity_id, state, attr, self.force_update, self._context)
File "/usr/src/app/homeassistant/core.py", line 903, in async_set
context)
File "/usr/src/app/homeassistant/core.py", line 668, in init
"Format should be .<object_id>").format(entity_id))
homeassistant.exceptions.InvalidEntityFormatError: Invalid entity id encountered: light.. Format should be .<object_id>


Only run gh action on local PRs

Codecov Report

Merging #122 (19b12b5) into main (e0517a2) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #122   +/-   ##
=======================================
  Coverage   68.11%   68.11%
=======================================
  Files          16       16
  Lines        1151     1151
=======================================
  Hits          784      784
  Misses        325      325
  Partials       42       42

Flag
Coverage Δ

unit
66.16% <ø> (ø)

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

Components
Coverage Δ

api/v1alpha1 (u)
100.00% <ø> (ø)

pkg/helpers (u)
∅ <ø> (∅)

pkg/log (u)
31.81% <ø> (ø)

pkg/reconcilers (u)
36.76% <ø> (ø)

pkg/limitador (u)
88.03% <ø> (ø)

controllers (i)
72.57% <ø> (ø)


The "count" value depends on resource attributes that cannot be determined until apply

Description
Hi, I have the same issue like this Issue:59
I am creating CloudFront distributions  and all other related resources using for_each , here is the full code for those:
module "route53_clients_zones" {
  source  = "terraform-aws-modules/route53/aws//modules/zones"
  version = "~> 2.10"
  zones = { for domain, client in var.clients_domain : domain => {
    name    = domain
    comment = domain
    tags    = var.project_tags
  } }

  tags = var.project_tags
}

module "route53_clients_records" {
  source     = "terraform-aws-modules/route53/aws//modules/records"
  version    = "~> 2.10"
  depends_on = [module.acm_client_domains_cloudfront]
  for_each   = var.clients_domain
  create     = each.value.dns_pointing_to_our_nameservers
  zone_id    = module.route53_clients_zones.route53_zone_zone_id[each.key]
  records = [
    {
      name = ""
      type = "A"
      alias = {
        name    = module.cloudfront[each.key].cloudfront_distribution_domain_name
        zone_id = module.cloudfront[each.key].cloudfront_distribution_hosted_zone_id
      }
    }
  ]
}

module "acm_client_domains_cloudfront" {
  source  = "terraform-aws-modules/acm/aws"
  version = "~> 5.0"
  providers = {
    aws = aws.us-east-1
  }
  depends_on                         = [module.route53_zones]
  for_each                           = var.clients_domain
  create_certificate                 = each.value.dns_pointing_to_our_nameservers
  validation_method                  = "DNS"
  validate_certificate               = true
  validation_allow_overwrite_records = false
  create_route53_records             = true
  domain_name                        = each.key
  zone_id                            = module.route53_clients_zones.route53_zone_zone_id[each.key]
  wait_for_validation                = true
  tags                               = var.project_tags
}

module "cloudfront" {
  source                         = "terraform-aws-modules/cloudfront/aws"
  version                        = "~> 3.2"
  for_each                       = var.clients_domain
  create_distribution            = each.value.dns_pointing_to_our_nameservers
  depends_on                     = [module.route53_clients_zones]
  aliases                        = [each.key]
  comment                        = each.key
  enabled                        = true
  http_version                   = "http2and3"
  is_ipv6_enabled                = false
  price_class                    = each.value.cloudfront_price_class
  wait_for_deployment            = false
  retain_on_delete               = false
  default_root_object            = "index.html"
  create_monitoring_subscription = false
  create_origin_access_identity  = false
  create_origin_access_control   = true
  origin_access_control = {
    "OAC_${each.key}" : {
      description      = "CloudFront access to S3 for ${each.key}"
      origin_type      = "s3"
      signing_behavior = "always"
      signing_protocol = "sigv4"
    }
  }

  origin = {
    s3_bucket = {
      domain_name           = module.s3_bucket[each.key].s3_bucket_bucket_regional_domain_name
      origin_access_control = "OAC_${each.key}"
    }
  }

  default_cache_behavior = {
    target_origin_id           = "s3_bucket"
    viewer_protocol_policy     = "allow-all"
    allowed_methods            = ["GET", "HEAD", "OPTIONS", "PUT", "PATCH", "POST", "DELETE"]
    cached_methods             = ["GET", "HEAD"]
    compress                   = true
    query_string               = true
    response_headers_policy_id = "67f7725c-6f97-4210-82d7-5512b31e9d03"
  }

  viewer_certificate = {
    acm_certificate_arn = module.acm_client_domains_cloudfront[each.key].acm_certificate_arn
    ssl_support_method  = "sni-only"
  }

  custom_error_response = [
    {
      error_code         = 404
      response_code      = 404
      response_page_path = "/index.html"
    },
    {
      error_code         = 403
      response_code      = 403
      response_page_path = "/index.html"
    },
    {
      error_code         = 500
      response_code      = 500
      response_page_path = "/500/index.html"
    },
  ]

  tags = var.project_tags
}

module "s3_bucket" {
  source        = "terraform-aws-modules/s3-bucket/aws"
  version       = "~> 3.15"
  depends_on    = [module.route53_clients_zones]
  for_each      = var.clients_domain
  bucket        = "${each.key}--${var.s3_bucket_name_cloudfront_suffix}"
  force_destroy = true
  website = {
    index_document = "index.html"
    error_document = "index.html"
  }
  tags = var.project_tags
}

data "aws_iam_policy_document" "s3_policy" {
  for_each = var.clients_domain
  statement {
    actions   = ["s3:GetObject"]
    resources = ["${module.s3_bucket[each.key].s3_bucket_arn}/*"]
    principals {
      type        = "Service"
      identifiers = ["cloudfront.amazonaws.com"]
    }
    condition {
      test     = "StringEquals"
      variable = "aws:SourceArn"
      values   = [module.cloudfront[each.key].cloudfront_distribution_arn]
    }
  }
}

resource "aws_s3_bucket_policy" "bucket_policy" {
  for_each = data.aws_iam_policy_document.s3_policy
  bucket   = module.s3_bucket[each.key].s3_bucket_id
  policy   = each.value.json
}

And here is the variable:
variable "clients_domain" {
  type = map(map(string))
}

I have also tried with map object but the same issue, like this:
variable "clients_domain" {
  type = map(object({
    cloudfront_price_class          = string
    dns_pointing_to_our_nameservers = bool
  }))
}

And here is my tfvars:
clients_domain = {
  "dev.somedomain.de" = {
    cloudfront_price_class          = "PriceClass_100"
    dns_pointing_to_our_nameservers = true
  }
  "www.adomain.com" = {
    cloudfront_price_class          = "PriceClass_100"
    dns_pointing_to_our_nameservers = true
  }
  "www.bdomain.eu" = {
    cloudfront_price_class          = "PriceClass_100"
    dns_pointing_to_our_nameservers = false
  }
}

This happens only when I try to add new domain on tfvars.

[x] ✋ I have searched the open/closed issues and my issue is not listed.
Note, as mentioned the issue is closed but still same issue

Versions

Module version [Required]: Route53 version: ~> 2.10.2

Terraform version and Provider version(s):

$ terraform -version
Terraform v1.6.6
on windows_amd64
+ provider registry.terraform.io/hashicorp/aws v5.30.0
+ provider registry.terraform.io/hashicorp/random v3.6.0

Reproduction Code [Required]

Steps to reproduce the behavior:
Are you using workspaces? --> NO
Have you cleared the local cache (see Notice section above)? --> NO, but tried also in another PC
List steps in order that led up to the issue you encountered:
Simply copy the code above and try to run, the issue is known.
Expected behavior
Plan and apply should suceed
Actual behavior
│ Error: Invalid count argument
│
│   on .terraform\modules\route53_clients_records\modules\records\main.tf line 11, in data "aws_route53_zone" "this":
│   11:   count = var.create && (var.zone_id != null || var.zone_name != null) ? 1 : 0
│
│ The "count" value depends on resource attributes that cannot be determined until apply, so Terraform cannot predict
│ how many instances will be created. To work around this, use the -target argument to first apply only the resources
│ that the count depends on.

Terminal Output Screenshot(s)

This issue has been resolved in version 2.11.0 :tada:

You should update your module block for records to use zone_name fetched from the static value (introduced in v2.11.0 in #102):
module "route53_clients_zones" {
  source  = "terraform-aws-modules/route53/aws//modules/zones"
  version = "~> 2.11"  # The required output was introduced in 2.11.0
  zones = { for domain, client in var.clients_domain : domain => {
    name    = domain
    comment = domain
    tags    = var.project_tags
  } }

  tags = var.project_tags
}

module "route53_clients_records" {
  source     = "terraform-aws-modules/route53/aws//modules/records"
  version    = "~> 2.10"
  depends_on = [module.acm_client_domains_cloudfront]
  for_each   = var.clients_domain
  create     = each.value.dns_pointing_to_our_nameservers
  zone_name  = module.route53_clients_zones.route53_static_zone_name[each.key] # <= this is important change
  # ...
}

Yes the fix works, Thanks @antonbabenko, also thanks for the suggested improvements of the code.


Turn on issues/feedback control

:x: Validation status: errors

File
Status
Preview URL
Details

:x:Error

Details

Line 75: [Error] Invalid syntax in W:\one0-s\docfx.json. Please validate your syntax with a JSON validator like http://jsonlint.com/ and update the json file in the repo with a correct syntax.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

The build seems to not be complete, but the content appears to be correctly staged with the new feedback control.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


موسسة بن معلاق

➜ ~/D/C/bookmark-archiver py[archiver] ⎇ (ssl-check) ./archive.py "https://medium.com/feed/@thesquashsh"
[*] [2018-01-12 12:23:50] Downloading https://medium.com/feed/@thesquashsh > downloads/medium.com.txt
[X] No links found :(
[1]

Duplicate of https://github.com/pirate/bookmark-archiver/issues/64


Fargate

this pull request provides some example terraform code to deploy anchor platform using fargate/ecs.  it includes a readme which describes the components deployed.   I have tested this by creating a new aws account and using terraform cloud:

connect to repo
setup terraform variables and IAM account with permissions
plan/apply
run anchor validator tests

Readme: https://github.com/reecexlm/java-stellar-anchor-sdk/tree/fargate/docs/resources/deployment-examples/aws-fargate-ecs#readme
Why
to help partners who do not use kubernetes and utilize aws ecs/fargate see an example of anchor platform deployment.

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr390.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr390.previews.kube001.services.stellar-ops.com/


[Feature request] Allow including source information for non-link sources

Including a link to the source documentation that specifies shortcuts makes it easier to update the Hotkys shortcuts when they get out of date.
Documentation links are optional.
As an example, take this metadata for Github on Use The Keyboard, linking to the Github shortcut docs.
It could then be shown on the page for the app, similarly, like the example:

I'd be happy to make a PR for this, too.

There's such field which is called source. You can check it on the 1Password page.
Also, the current design is very minimalist, so it may be hard to notice it :)
If you want to improve the UI, go on. That would be cool.

Oh, can't believe I missed that! 🙈 That's great!
I think it works fine like this, "original reference" vs "source" is a nitpick.
One possible improvement, maybe: some apps or web apps don't have a reference web page that lists all shortcuts, but they do have a page inside the app that does the same job.
Examples are

Figma
Discord (which I just added)
FreshRSS (web app; shortcuts are shown & configurable in the app settings) and Discord (press Cmd+/).

Maybe the source string could also be allowed to contain plain text, like "Press Cmd+/ in Discord to show possible shortcuts".
If the source string contains a URL, it can be presented like a [Source] link as-is.
If it contains a non-URL, it could be presented like [Source ℹ]. When you hover/click this, a little popover pops up with the information on how to find the shortcuts.
Alternatively, source could be an objects with possible values of {type: "url", url: string } or {type: "in-app", info: string}, but I think the plain string format would also just work and is simpler.
What do you think?

The opening list of shortcuts is also a shortcut; should it be part of the source configuration?

Good point. I have indeed not found a case where such a in-app window can not be opened with a shortcut. I will try to add these shortcuts where they are missing. I'm closing this with that thought.

Feel free to reopen the issue if you have any other ideas!


ImportError: cannot import name 'helpers' from 'utils'

As the name of the issue says, i am having trouble running this.
Googled around and saw this to resolve issue. https://github.com/omar-florez/scratch_mlp/issues/6
went to line 8
Changed
from utils import helpers
to
import utils
worked but then code had issues when it came to running the helper. Can someone help?
would appreciate your help @daniegr

@funeconomist: Which Python version are you running? Version 3.6.6 does the job for me. Alternatively you may check if import utils.helpers as helpers makes any difference.

@daniegr actually that made the world difference. Thanks for the tip. That resolved my problem


Requirements for writing to slot-1?

I'm trying to get mcuboot to work outside the context of ready-made samples, because we need to implement our own transport method for delivering FOTA images to slot-1. Tried inspecting the code for mcumgr to see if there's anything special that needs to be done in order to flash a signed image to slot-1 and have mcuboot verify and swap to it at next boot.
From what I could tell, signing and writing the new image to SLOT_1_OFFSET should be sufficient for mcuboot to autodetect it? That doesn't work for me for some reason. Do I have to write something to scratch as well?
Running Zephyr v1.14, mcuboot master on an nRF52840, slot offsets: 0xC000/0x73000, slot size 0x67000. I'm using openocd to flash all slots:
    ../src/./openocd -s $PWD -f interface/stlink.cfg \
        -c "transport select hla_swd" \
        -c "set WORKAREASIZE 0" \
        -f target/nrf52.cfg -c init -c halt \
        -c "program $SIGNED_IMG verify 0x73000"

mcuboot works fine, slot-0 works fine, but mcuboot never detects that anything is present in the secondary slot it seems. Console output from mcuboot:
[00:00:00.084,564] <inf> mcuboot: Starting bootloader
[00:00:00.170,776] <inf> mcuboot: Primary image: magic=unset, copy_done=0x3, image_ok=0x3
[00:00:00.318,878] <inf> mcuboot: Scratch: magic=unset, copy_done=0x30, image_ok=0x3
[00:00:00.446,655] <inf> mcuboot: Boot source: primary slot
[00:00:00.555,114] <inf> mcuboot: Swap type: none
[00:00:00.961,334] <inf> mcuboot: Bootloader chainload address offset: 0xc000
[00:00:00.998,931] <inf> mcuboot: Jumping to the first image slot

Any ideas? Is it weird that it only reports status for scratch and nothing for "Secondary image"?

You should never touch scratch yourself. What was your imgtool command line? Did you pad your image? (without padding, the bootloader will just ignore it because it is not "set" for upgrade).

imgtool worked fine, as I said I flashed and booted slot-0 without problems. But:
 ~/zephyrproject/mcuboot/scripts/./imgtool.py sign           \
          --key mcuboot/root-rsa-2048.pem                                 \
          --header-size 0x200                                \
          --align 8                                          \
          --version 1.2                                      \
          --slot-size 0x67000                             \
          $ZEPHYR_BIN_DIR/zephyr.bin                    \
          $ZEPHYR_BIN_DIR/signed.bin

I did not add padding, so that's probably the issue - what format should the padding be?

You only need to pad the image that goes into slot-1.

Btw, those messages look totally fine, it does not show any info about slot-1's image if it is not set for an upgrade operation.

But it SHOULD be set for an upgrade after I flash an image to slot-1.
"Padding" means appending zeros to the binary so that it is of size SLOT_SIZE, yes?

Oh now I noticed, you just add --pad to imgtool.py as an argument...