Use jsonpb for validation

https://github.com/istio/istio/issues/22347
Without this change:
$ go run ./istioctl/cmd/istioctl manifest generate --set meshConfig.outboundTrafficPolicy.mode=REGISTRY_ONLY
Error: validation errors (use --force to override):
error unmarshaling JSON: unknown value "REGISTRY_ONLY" for enum istio.mesh.v1alpha1.MeshConfig_OutboundTrafficPolicy_Mode:

YAML:
spec:
  meshConfig:
    outboundTrafficPolicy:
      mode: REGISTRY_ONLY

exit status 1

this is how we unmarshal in other areas of the code as well so it's seems
at least consistent with that?
On Thu, Apr 9, 2020, 6:52 PM Morven Cao<EMAIL_ADDRESS>wrote:

@morvencao approved this pull request.
Not sure if this will break other fields or not.
/lgtm overall.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/22854#pullrequestreview-391229546,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXIMYLHQHX2SYGUPLATRLZ3XLANCNFSM4MFDSUUA
.


[C++][Parquet] RowGroupSerializer should only close itself once

Otherwise exceptions are thrown multiple times.
Reporter: Uwe Korn / @xhochy
Assignee: Uwe Korn](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=uwe) / @xhochy
Note: This issue was originally created as PARQUET-629. Please see the migration documentation for further details.

Wes McKinney / @wesm:
Issue resolved by pull request 117
https://github.com/apache/parquet-cpp/pull/117


Add JobStatus

added JobStatus field to job package
added JobStatusTest cases

Codecov Report

Merging #117 (bcdee93) into master (e923d2f) will increase coverage by 0.61%.
The diff coverage is 66.66%.

@@             Coverage Diff              @@
##             master     #117      +/-   ##
============================================
+ Coverage     71.99%   72.60%   +0.61%
- Complexity      570      584      +14
============================================
  Files            95       97       +2
  Lines          1928     1975      +47
  Branches        234      238       +4
============================================
+ Hits           1388     1434      +46
+ Misses          467      459       -8
- Partials         73       82       +9

Impacted Files
Coverage Δ

...seedu/address/model/applicant/ApplicantStatus.java
63.63% <63.63%> (ø)

...c/main/java/seedu/address/model/job/JobStatus.java
70.00% <70.00%> (ø)

...a/seedu/address/model/applicant/Qualification.java
50.00% <0.00%> (-31.25%)
:arrow_down:

.../java/seedu/address/model/util/SampleDataUtil.java
14.28% <0.00%> (ø)

...ss/logic/parser/applicant/MarkApplicantParser.java
0.00% <0.00%> (ø)

...va/seedu/address/storage/JsonAdaptedApplicant.java
98.79% <0.00%> (+0.01%)
:arrow_up:

...ddress/logic/commands/applicant/EditApplicant.java
98.01% <0.00%> (+0.01%)
:arrow_up:

.../java/seedu/address/model/applicant/Applicant.java
89.58% <0.00%> (+2.57%)
:arrow_up:

...ddress/logic/commands/applicant/MarkApplicant.java
88.88% <0.00%> (+88.88%)
:arrow_up:

Continue to review full report at Codecov.

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


Provide a Reader::from_read interface

As far as I can see, the only API for getting a Reader is using from_str and new, both of which take a &str.
Having something like:
Reader::from_read<R: Read>(read: R)

would make it simple to pass in a File, for example, without glue code to get a &str or bytes, and passing it to the current interface.

It would be a nice convenience method. One issue is that the parser doesn't own the underlying string, so perhaps a new type would need to be created that owns the bytes and the current position.
For my use cases, I use memmap2 or am reading from a database which is why I borrow the bytes.


Feature/config logger

Status
Type
Env Vars Change

:white_check_mark: Ready
Feature/Refactor
Yes

Description

This PR introduces two new things:
1. Config
There are two new ways to configure vocascan.
1.1 config file
You can add a env variable called VOCASCAN_CONFIG to set path to your config. The file could either be a json or a js file. Later (in another pr, when the cli will be introduced) you can also transmit the path via cli arguments. (If VOCASCAN_CONFIG is not set, vocasan search for a file called vocascan.config.js or vocascan.config.json in the vocascan root directory)
module.exports = {
  debug: false,

  server: {
    port: 5000,
    jwt_secret: 'abc',
    salt_rounds: 10,
  },
}

1.2 env variables
You can also set all options available via the config file also via env variables. To achieve this vocascan parses all env variables starting with VOCASCAN__. Then you can use two underlines to replicate the paths in the config file. For example, the above config example in env variables would be the following.
VOCASCAN__DEBUG=false
VOCASCAN__SERVER__PORT=5000
VOCASCAN__SERVER__JWT_SECRET=abc
VOCASCAN__SERVER__SALT_ROUNDS=10

(The capitalization in the env names doesn't matter, because later everything is converted to lowercase anyway)
And of course the old env variables still work, but result in a warning that this type of configuration is deprecated.

2. Logger
You can define different logger transports.
module.exports = {
  log: {
    console: {
      level: "debug",
      enable_router_log: true,
      stderr_levels: ['error'],
    },
    myCustomLogger: {
      mode: "file",
      filename: "./logs/vocascan.log",
      enable_sql_log: true,
      enable_router_log: true,
      max_size: 100000,
      max_files: 3,
      archive_logs: true,
    },
    myCustomLogger: {
      mode: "console", // shouldn't be necessary, because console is the default
      stderr_levels: ["error", "warn"],
      colorize: true,
      handle_exceptions: false,
    }

This config creates two loggers. One named console. And one named myCustomLogger. And as you noticed, the logger called console has no mode property, because If you use a mode as a logger name, the mode automatically stick to the name. So if a logger is called file the mode is automatically file. Currently there are only two types of modes. console and file. After defining the loggers, you can configure them. With enable_default_log, enable_sql_log and enable_router_log you can define if you want to log default log (all errors and general log), sql queries and router request logs. And thanks to the self-written small template engiene it is even possible to define the output format of the log message. For all available options see the config joi schema until the documentation is not written.
In this example Ill only used the config file version. But the env version also works fine. Just a little example how to define the myCustomLogger2 from above:
VOCASCAN__MYCUSTOMLOGGER2__MODE=console
VOCASCAN__MYCUSTOMLOGGER2__STDERR_LEVELS=error,warn
VOCASCAN__MYCUSTOMLOGGER2__COLORIZE=true
VOCASCAN__MYCUSTOMLOGGER2__HANDLE_EXCEPTIONS=false

As I described above, following things are available:
Modes (Transports)

console
file

Levels

error
warn
info
verbose
debug
silly

So if you set the level property to warn, only warn and error levels will be logged. If level is debug, debug and all above will be logged.
Motivation and Context

I worked on the config parsing and logging to laying the foundation stones for the vocascan-server cli which I working on and to get rid of the things that have been bothering me for a long time.
Checklist

[x] I have read the CONTRIBUTING document.
[x] I have considered the accessibility of my changes (i.e. did I add proper content descriptions to images, or run my changes with talkback enabled?)
[x] I have documented my code if needed

Todo

[x] example config
[x] test file and json logger
[x] use file and console name as mode
[x] use logger for server listening message
[x] use morgan to parse tokens
[x] add router log
[x] own template parser
[x] use response time instead of total time
[x] change NullTransport
[x] remove all keys from json in router mode
[x] uncaught/rejected error handler winston
[x] add env compatibility
[x] add default config path
[x] fix docker-compose.yml due to new config approach
[ ] improve template parser with cache -> (this could be another pr)

Resolves

I added a first draft for the documentation in vocascan/documentation#3.


Fix a nit of copyright date range

Should be 2018 instead of 20018.
[skip ci]

Pushed to master (5c1bd555d3c81cbd46d5032e84c29d16bb4a8f06)
Thanks guys!

Side note: I wouldn’t call an off-by-18000-error a nit. ;-)

But now seriously: Shouldn't this fix be backported to 1.1.1?
https://github.com/openssl/openssl/blob/a7ee1ef61b1893038008691a4a6979cf2da91439/crypto/poly1305/poly1305_ieee754.c#L2

I agree to cherry-pick to 1.1.1, will do that soon

Pushed to 1.1.1 as 8848b14fda7eded1c5a88f9f84eb13dcf69c3960


cmd/compile: confusing (but accurate) error message for function with variadic arguments if argument is not the last

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go1.10 and playground (1.11)
Does this issue reproduce with the latest release?
Yes. Example: https://play.golang.org/p/2EFkTjC3KhA
What operating system and processor architecture are you using (go env)?
darwin/amd64
What did you do?
I forgot to include an argument type prior to a final variadic function argument.
Here is an example: https://play.golang.org/p/2EFkTjC3KhA
In this example, bar was intended to be a string, but the compiler had no way of knowing this.
What did you expect to see?
Given the code I was attempting to compile, I would expect an error message to identify a

missing  type on argument bar

since, (as the actual error message indicated, only use ... with final parameter in list) a variadic type of args should not be applied to a list of arguments.
What did you see instead?
Error message
can only use ... with final parameter in list

Removing developer attention from bar and directed it toward args ...interface{}

Thank you for filing this issue @loren-osborn and welcome to the Go project!
@griesemer @mdempsky, what do y'all think of these suggestions?
a)
missing type for argument bar (can only use ... with final parameter in list)

b)
missing type for argument bar

b) is succinct but will likely generate more confusion say if the function signature contains more than one such repeated field e.g.
func Foo(bar, foo, fizz, args ...interface{}) {
}

Hence I am leaning towards suggestion a) which will print out
missing type for argument bar (can only use ... with final parameter in list)
missing type for argument foo (can only use ... with final parameter in list)
missing type for argument fizz (can only use ... with final parameter in list)

or later on, perhaps after the frontend overhaul we can provide a more concise message
missing type for arguments bar, foo, fizz: ... can only be used for the final parameter

Thank you for the report.
I agree that the error message can be improved. Certainly, the error's column number information should at least point at the non-final parameter in question, and probably the parameter's name can be incorporated into the error message. I think these would address the raised issue about users misfocusing on args ...interface{} instead of bar.
However, I disagree with the proposed "missing type" wording. In the linked example (https://play.golang.org/p/2EFkTjC3KhA), bar does have a type: ...interface{}. The error is just that this type is invalid, because bar is not the final parameter.
I'd probably lean towards changing the error message to:
cannot use ... with non-final parameter bar

Not urgent. Good starter project.

@mdempsky, I almost agree. The problem is that ...interface{} isn’t a type. The type of args is actually []interface{} imparted by the ... variadic operator. If this operator was defined to only ever apply to one argument, then bar wouldn’t have a type, and the error message I suggested would make sense. I’m not opposed to your suggested error message, I just feel it’s another solution to the same problem.


Issue with the url

I'm new to python. I'm using my buddy chatGPT to run this script. Everything seemed to work. I logged into Facebook and went to the events page on TicketSwap. Though I got this error and this is what chatGPT gave me:
InvalidArgumentException in Selenium: The most critical part of the error message is related to Selenium. It seems the script is trying to navigate to a URL (self.driver.get('insert url here')), but instead of a valid URL, there is placeholder text ('insert url here'). You need to replace 'insert url here' with the actual URL you want the script to navigate to.
Is it possible I need to give the specific url-link on the event in the python script?
Thanks

of course, you need to enter the event link in the python code together with the log in credentials, this should be indicated somewhere in the code


fix: readthedocs failing because of missing build.os variable

Feature or Bugfix

Feature

Detail

Our documentation is no longer building because we didn't perform this migration in time
Added the missing build.os variable
We are currently missing the documentation for release 3.4.1 because it's failing to build

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: 8715b471d76635e2db504014eef05a370731d75e
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


New tiles for from each floor.

Make new tiles for each floor. Floor and walls and door.

dead dream


Cannot compile to x86 programs of progman-x64 (older stable)

I have older stable source code of progman-x64, but I cannot compile to x86 programs with Visual Studio 2019 (Debug and Release). How to fix?

progman-x64 is unsupported, sorry. x86 builds weren't tested or supported with it.


[Access Request] Table 8888 "Message Id"

Hi,
We'd like to add attachments to an E-Mail before sending it (Email Editor, P13 T8888) - not by the default functionality, but by a custom one.
As far as I can see, we would need access to the Message Id for that to be possible. Can you make it accessible somehow or provide us a solution, on how we could implement such a feature?
Thanks in advance.

Hi @danielzuppiger!
Codeunit 9520 "Mail Management" currently expose some events when sending through the module, passing on the "Email Message" codeunit. Through the codeunit you should be able to add the attachments.
Do the below events work for your scenario? If not, please explain in more detail the scenario you want supported.
Events:
    [IntegrationEvent(false, false)]
    local procedure OnSendViaEmailModuleOnAfterAddAttachments(var Message: Codeunit "Email Message"; var TempEmailItem: Record "Email Item" temporary)
    begin
    end;

    [IntegrationEvent(false, false)]
    local procedure OnSendViaEmailModuleOnAfterCreateMessage(var Message: Codeunit "Email Message"; var TempEmailItem: Record "Email Item" temporary)
    begin
    end;

    [IntegrationEvent(false, false)]
    local procedure OnSendViaEmailModuleOnAfterEmailSend(var Message: Codeunit "Email Message"; var TempEmailItem: Record "Email Item" temporary; var MailSent: Boolean; var Cancelled: Boolean; var HideEmailSendingError: Boolean)
    begin
    end;

Hi @stkillen,
thank you very much for your reply!
We would like to add attachments through a page action. In previous versions of BC/NAV, we implemented a feature that lets you select various related documents (e.g. if you want to send an order confirmation and the mail preview pops up, you can add the blanket order, picking list, and so on) and automatically add their generated PDF file as an attachment to the e-mail.
Therefore, these events are not working for our scenario. Do you have any idea how to implement this for the new email feature? Otherwise, we would resort to running the feature when the preview is opened.

I see, thanks! It should be possible to do that.
Page 13 "Email Editor" is extensible, so you can add your action to the page. You can get the message id from the source record (source table is "Email Outbox"): Rec."Message Id". From there on, you should be able to add attachments you want to the email message.
Let me know if that solves your issue or if there's any problems.

Thanks for your reply.
But that was my point in the original post. The field "Message Id" is set to Internal.

Therefore, I cannot access it trough code:

The description of the field says, that it is internal in order to prevent modifying it from code. Could you implement a getter function or would this cause complication?

I guess there should then be also added a getter on the attachment sub page.
https://github.com/microsoft/ALAppExtensions/blob/f1cace7c948c2006d79052106481c6ebcade8944/Modules/System/Email/src/Message/EmailAttachments.Page.al#L137

Thanks for you input!
We've discussed how to best support this and decided on introducing a getter for the Email Message codeunit on the page.
Signature:
procedure GetEmailMessage() EmailMessage: Codeunit "Email Message"

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.

Availability update: We will publish a fix for this issue in the next update for release 19.


Fix event listener on button for full clickable area

This PR fixes the issue where only the icon within the button had the event listener. Now, the entire button is clickable, enhancing the user experience.

Scribbie - Google Chrome 2024-10-02 22-11-42.zip

Mention issue number.

Add tag button not working properly #23

Good Job! @Aryan-dev-enth


Diagnostic unit tests: VariableNamesMustNotBePrefixed

Implement unit tests for #84.

grabbed

New person! :smiley:
Consider it yours, but I also sent you an invitation to join the @DotNetAnalyzers organization, which will allow me to "officially" assign the issue to you.

Fixed in #564


chore: Reduce number of tests run on commit

What does this PR do?
Only run tests on contracts on the pre-commit hook
Type of change

[X] Chore
[ ] Bug fix
[ ] New feature
[ ] Documentation update

Check list

[ ] Unit tests for any smart contract change
[ ] Contracts and functions are documented

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

Project coverage is 93.63%. Comparing base (f2874e6) to head (4c77225).

Additional details and impacted files
@@           Coverage Diff           @@
##              dev     #586   +/-   ##
=======================================
  Coverage   93.63%   93.63%
=======================================
  Files          20       20
  Lines         330      330
  Branches       76       76
=======================================
  Hits          309      309
  Misses         10       10
  Partials       11       11

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


VM with Azure AD Login fails to connect with AD login

I have made about 7 different Ubuntu VMs of 20.04 and 18.04 through Azure Portal, where the Azure AD Login was enabled at creation.
All of these VMS, of B1s and B2M size failed to set up AD ssh login properly. The error was consistent (no supported authentication methods available (server sent: publickey).
I was able to fix this error by using username / password login and perform this command: apt-get install aadlogin
However, this should not be necessary. There seems to be an error in the deployment of the AADSSHLoginForLinux extension

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 16dd9d55-9cf5-688f-d19e-9c57f92f2c63
Version Independent ID: afb8a367-f30b-fe48-2a5a-9486bae67ad5
Content: Connect to a Windows VM using SSH - Azure Bastion
Content Source: articles/bastion/bastion-connect-vm-ssh-windows.md
Service: bastion
GitHub Login: @cherylmc
Microsoft Alias: cherylmc

@mjvanderveen
Thanks for your feedback! We will investigate and update as appropriate.

@mjvanderveen Agree that this is not an expected behavior. To troubleshoot the issue further, request you to open a support case.
Also, if you can please try deploying with another image/sku just to see if this is a repeated issue so that will be easy for the support team to figure out the issue.
Request you to open a support case.


Google provider fails when using gemini 1.5 flash

Describe the bug
Using the gemini-1.5-flash model fails with an error that is not intuitive to understand.
The error is
API did not return any candidate responses: {"error":{"code":400,"message":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field.","status":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.BadRequest","fieldViolations":[{"field":"contents[0]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field."},{"field":"contents[1]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field."}]}]}}

In addition to the following log
Using unknown Google chat model: gemini-1.5-flash-latest
To Reproduce
Try and use the model in providers: e.g
  - id: google:gemini-1.5-flash-latest
    config:
      temperature: 0
      max_tokens: 4096

Expected behavior
The model is used to evaluate the prompts.
Screenshots
N/A
System information (please complete the following information):

Promptfoo version: 0.92.3

Additional context
Looks similar to #1393 although that particular issue is specific to using gemini as a grader?

It looks like the API request we use is out of date
https://github.com/promptfoo/promptfoo/blob/207469a6a54b3a4123c2f8418d51affe9b04d40d/src/providers/palm.ts#L103-L112
vs the structure used in REST examples here: https://ai.google.dev/gemini-api/docs/text-generation?lang=rest
{
        "contents": [{
            "parts":[
                {"text": "Write a story about a magic backpack."}
            ]
        }],
        "safetySettings": [
            {
                "category": "HARM_CATEGORY_DANGEROUS_CONTENT",
                "threshold": "BLOCK_ONLY_HIGH"
            }
        ],
        "generationConfig": {
            "stopSequences": [
                "Title"
            ],
            "temperature": 1.0,
            "maxOutputTokens": 800,
            "topP": 0.8,
            "topK": 10
        }
    }

Note that there is also a node API client for AI studio: https://github.com/google-gemini/generative-ai-js

Hey @aaronstillwell, can you try running with promptfoo eval --verbose and let us know what the response from the API looks like?
I'm not able to repro with this example but very open to admitting the possibility that there's some implementation issue somewhere.  The Gemini models actually follow a different codepath here.

@typpo yes no worries. My bad on not spotting that codepath. See below:
Google API response: {"error":{"code":400,"message":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field.","status":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.BadRequest","fieldViolations":[{"field":"contents[0]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field."},{"field":"contents[1]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field."}]}]}}

Shape of the API input from the log line above that one:
{"contents":[
    {
        "role":"system",
        "content": "<redacted>"
    }
],"generationConfig":{"temperature":0}}

As per the aforementioned documentation, I think each object in contents should include parts? so the shape of this input still doesn't look right vs what I can see skimming the REST API examples.

Note from the AI studio documentation, the beta API, which it looks like we're using:
v1beta: This version includes early-access features that may be under development and is subject to rapid and breaking changes. There is also no guarantee that the features in the Beta version will move to the stable version. Due to this instability, you shouldn't launch production applications with this version.

It looks like parts is required as per https://ai.google.dev/api/caching#Content

@aaronstillwell same here, it will require some PR to edit the palm.ts with something like:
const genAI = new GoogleGenerativeAI(this.getApiKey()!);     const model = genAI.getGenerativeModel({       model: this.modelName,       generationConfig: {         temperature: this.config.temperature,         topP: this.config.topP,         topK: this.config.topK,         stopSequences: this.config.stopSequences,         maxOutputTokens: this.config.maxOutputTokens,         ...this.config.generationConfig,       },       safetySettings: this.config.safetySettings,     });
The thing is that the shared praseChatPrompt wouldn't give the expected format by gemini for a chat based conversation...

If I understand correctly, I think #1900 should fix the immediate issue

If I understand correctly, I think #1900 should fix the immediate issue

@typpo  You sure? for me google:gemini-1.5-pro uses https://github.com/promptfoo/promptfoo/blob/main/src/providers/palm.ts

I did test with gemini-1.5-pro-latest. This change is now released so you
can give it a try on latest version of promptfoo.
On Wed, Oct 16, 2024, 4:17 PM Dan @.***> wrote:

If I understand correctly, I think #1900
https://github.com/promptfoo/promptfoo/pull/1900 should fix the
immediate issue
@typpo https://github.com/typpo You sure? for me google:gemini-1.5-pro
uses
https://github.com/promptfoo/promptfoo/blob/main/src/providers/palm.ts
—
Reply to this email directly, view it on GitHub
https://github.com/promptfoo/promptfoo/issues/1876#issuecomment-2418125402,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACLYJWC2TD3XI3FF2PN6STZ33XY3AVCNFSM6AAAAABP3I6ODGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMJYGEZDKNBQGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

I'm still seeing the same error with google:gemini-1.5-flash

@aaronstillwell I am running the following config on 0.93.3 and it's working just fine. What does your prompt look like?
description: 'minimal example'

prompts:
  - 'What is the capital of {{input}}?'

providers:
  - id: google:gemini-1.5-flash-latest
    config:
      temperature: 0
  - google:gemini-1.5-flash

defaultTest:
  assert:
    - type: contains
      value: 'Paris'

tests:
  - vars:
      input: France

If you're sure it's not working for you please throw some time on my calendar: https://cal.com/michael-dangelo/15min

@mldangelo there's some differences between my config and yours:
prompts: [prompts.yaml]

providers:
  - id: openai:gpt-4o-mini
    config:
      temperature: 0
      max_tokens: 4096
   - id: google:gemini-1.5-flash-latest
    config:
      temperature: 0
      max_tokens: 4096

tests: [tests.csv]

and prompts.yaml
- role: system
  content: |
    my sys prompt
- role: user
  content: |
    {{ input | dump }}

The OpenAI provider is working fine with this setup. Gemini returns:
API did not return any candidate responses: {"error":{"code":400,"message":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field.","status":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.BadRequest","fieldViolations":[{"field":"contents[0]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field."},{"field":"contents[1]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field."}]}]}}

@aaronstillwell I get the same:

API did not return any candidate responses: {"error":{"code":400,"message":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[2]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[3]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[4]': Cannot find field.\nInvalid JSON payload received. Unknown name \"content\" at 'contents[5]': Cannot find field.","status":"INVALID_ARGUMENT","details":[{"@type":"type.googleapis.com/google.rpc.BadRequest","fieldViolations":[{"field":"contents[0]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[0]': Cannot find field."},{"field":"contents[1]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[1]': Cannot find field."},{"field":"contents[2]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[2]': Cannot find field."},{"field":"contents[3]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[3]': Cannot find field."},{"field":"contents[4]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[4]': Cannot find field."},{"field":"contents[5]","description":"Invalid JSON payload received. Unknown name \"content\" at 'contents[5]': Cannot find field."}]}]}}

Hi @aaronstillwell and @danpe,
We’ve made some updates to address the Gemini formatting issue in the latest release. Could you please try updating to version 0.94.0 and see if it resolves the problem? The fix is included in #1947.
If the issue persists, feel free to book some time on my calendar here: https://cal.com/michael-dangelo/15min, and we can troubleshoot it together.
Thanks again for your patience and feedback!

This is working for me now on 0.94.0 - thank you!


UTOPIA-768: [FE] Tab - Storing Personal Information

Currently, input fields are not visually reflecting user input
Looking for insight/feedback
The routing for this tab is currently at PIAIntake, this will be changed before merge

Description
This PR includes the following proposed change(s):

Local state is used to update global state
Having issue where input is sent out to update state but fields don't show input
This file is long and may require refactor for readability
A new RadioGroup component is introduced
Some styling was altered slightly and some was added

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Refactoring / Documentation
[ ] Version change

How Has This Been Tested?

Visual assertion of UI changes
Use of console and component dev tools tabs to check for state changes

Development Dependency Working Agreement

[x] My code DOES NOT include the importing of new dependencies into the DPIA ecosystem
[ ] My code DOES include the importing of new dependencies into the DPIA ecosystem
If new dependencies are being introduced to the DPIA ecosystem:
[ ] The functionality of the dependency drastically reduces code complexity and makes my changes more easily maintainable and readible
[ ] The dependency being introduced does not contain multiple layers of nested dependencies introducing maintainability complexity to the DPIA ecosystem

Frontend Development Changes

[ ] N/A
[x] I have performed a self-review of my own code
[ ] I have made corresponding changes to project documentation or diagrams that reflect my changes
[x] New and existing unit tests pass locally with my changes
[ ] My code follows Airbnb React Style Guidelines

API Development Changes

[x] N/A
[ ] I have performed a self-review of my own code
[ ] My code follows standards and practices outlined in the BC Government API Development Guidelines
[ ] New and existing unit tests pass locally with my changes
[ ] My changes includes Swagger documentation updates that reflect the changes I am introducing

Definition of Done

the first question, radio button does not work. select no, the md editor part does not hide

the pia intake css broken

I cannot recreate this pia intake css issue. Is it something on your end? @binggaofw

Since you're anyways separate states, you could have broken your component to sub-components to increase readability and maintainability. But could be a refactor for later.
Errors:
* Can't enter anything inside the "Where are you storing the personal informaiton involved in your initiative?"

* Always start as a blank form. Q1 - type No and let it save. Refresh the page and observe YEs is selected.

* can't enter on multiple form inputs including risk table

I noted this in the top of the PR

My apologies on not catching those renames. I did a change all occurrences and was seeing the state change appropriately so I didn't see the lack of change in those places you noticed. Thank you for catching those @kushal-arora-fw


Have you updated it to CI4

Did you update the app to CI4?

Nope

comments in the repo say Revert "Migrate to CodeIgniter4"
What does it mean?

how do I Migrate to CodeIgniter4, been searching for it all day

did u have updated it or not yet?

did u have updated it or not yet?

Not yet.


The recommended workaround for ignoring task definition changes causes the service's container_definitions to be overwritten on every Terraform apply, even ones that don't touch the service.

Description
My team triggers deploys to ECS via Github actions, and we did not want to have to update Terraform whenever we do a
deploy.
We could not use the ignore_task_definition_changes, because that also (surprisingly) causes changes to the load balancer to be ignored (see https://github.com/terraform-aws-modules/terraform-aws-ecs/issues/154 and https://github.com/terraform-aws-modules/terraform-aws-ecs/issues/152).
According to the design doc, there is an officially supported workaround:

As an alternative, this module does provide a workaround that would support an external party making changes to
something like the image of the container definition. In a scenario where the service, task definition, and container
definition are all managed by Terraform, the following configuration could be used to allow an external party to
change > the image of the container definition without conflicting with Terraform, provided that the external party is
also > updating the image tag in a shared location that can be retrieved by Terraform (here, we are using SSM
Parameter > Store): [example follows]

We ended up going with this workaround, however it has an undesirable bug. Now, after a deploy via GitHub actions, whenever we make any change to our Terraform (even if it doesn't touch the ECS service in any way), the container_definitions of the service are recreated.
This does not cause downtime, but it does cause extra noise whenever we make a change to our terraform, and makes it hard to know during a terraform plan if the container definition has actually changed or if it's just being recreated without anything changing.

[X] ✋ I have searched the open/closed issues and my issue is not listed.

Versions

Module version [Required]: 5.8.0

Terraform version: v1.5.7

Provider version(s):

provider registry.terraform.io/hashicorp/archive v2.4.2
provider registry.terraform.io/hashicorp/aws v5.34.0
provider registry.terraform.io/hashicorp/random v3.6.0
provider registry.terraform.io/hashicorp/tls v4.0.5

Reproduction Code [Required]
Unfortunately, I do not have the time to make a fully reproducible example. However, the official docs don't even provide a full example of how to implement the workaround, so I think it's fair for me to provide an example that's much more full than the official docs and still shows the general shape of how this works.
Based on the comments in https://github.com/terraform-aws-modules/terraform-aws-ecs/issues/152, I get the impression that many teams want to use a similar setup, deploying with GitHub Actions, so it may be helpful to actually add something like this to the readme or examples/ directory. Feel free to borrow from the code I've shared below as needed.
ECS terraform:
# Cluster
module "ecs_cluster" {
  source       = "terraform-aws-modules/ecs/aws//modules/cluster"
  version      = "5.8.0"
  cluster_name = local.name

  default_capacity_provider_use_fargate = true
  fargate_capacity_providers            = {
    FARGATE = {
      default_capacity_provider_strategy = {
        weight = 100
        base   = 1
      }
    }
  }

  tags = local.tags
}

# Service
data "aws_ssm_parameter" "api_image_tag" {
  name = local.api_image_tag_parameter_name
}

module "api_ecs_service" {
  source      = "terraform-aws-modules/ecs/aws//modules/service"
  version     = "5.8.0"
  name        = "${local.name}-api-service"
  cluster_arn = module.ecs_cluster.arn

  cpu    = 512
  memory = 1024

  subnet_ids = local.private_subnets

  enable_execute_command = false

  # At least 2 tasks should be running at all times
  # autoscaling_min_capacity is actually the thing that ensures that at least 2 tasks are running at all times
  # desired_count is actually ignored and setting it is a no-op (https://github.com/terraform-aws-modules/terraform-aws-ecs/blob/master/docs/README.md#service-1), but we set it anyway out of superstition
  desired_count            = 2
  autoscaling_min_capacity = 2

  load_balancer = {
    service = {
      target_group_arn = module.alb.target_groups["ecs_api_server"].arn
      container_name   = local.container_name
      container_port   = local.container_port
    }
  }
  security_group_rules = {
    alb_ingress_3000 = {
      type                     = "ingress"
      from_port                = local.container_port
      to_port                  = local.container_port
      protocol                 = "tcp"
      description              = "Service port"
      source_security_group_id = module.alb.security_group_id
    }
    egress_all = {
      type        = "egress"
      from_port   = 0
      to_port     = 0
      protocol    = "-1"
      cidr_blocks = ["<IP_ADDRESS>/0"]
    }
  }
  health_check_grace_period_seconds = 30

  ignore_task_definition_changes = false

  container_definitions = {
    (local.container_name) = {
      enable_cloudwatch_logging = true
      name                      = local.container_name
      image                     = "${local.ecr_repository}:${data.aws_ssm_parameter.api_image_tag.value}"
      cpu                       = 512
      memory                    = 1024
      privileged                = false
      essential                 = true

      port_mappings = [
        {
          name          = local.container_name
          containerPort = local.container_port
          hostPort      = local.container_port
          protocol      = "tcp"
        }
      ]
      environment = []
      secrets     = []
    }
  }
}

# Load Balancer
module "alb" {
  source  = "terraform-aws-modules/alb/aws"
  version = "~> 9.0"

  name = "api-load-balancer"

  load_balancer_type = "application"

  vpc_id  = local.vpc_id
  subnets = local.public_subnets

  enable_deletion_protection   = false
  security_group_ingress_rules = {
    all_http = {
      from_port   = 80
      to_port     = 80
      ip_protocol = "tcp"
      cidr_ipv4   = "<IP_ADDRESS>/0"
    }
    all_https = {
      from_port   = 443
      to_port     = 443
      ip_protocol = "tcp"
      description = "HTTPS web traffic"
      cidr_ipv4   = "<IP_ADDRESS>/0"
    }
  }
  security_group_egress_rules = {
    all = {
      ip_protocol = "-1"
      cidr_ipv4   = local.vpc_cidr_block
    }
  }

  listeners = {
    api_server_http_https_redirect = {
      port     = 80
      protocol = "HTTP"
      redirect = {
        port        = "443"
        protocol    = "HTTPS"
        status_code = "HTTP_301"
      }
    }
    api_server_https = {
      port            = 443
      protocol        = "HTTPS"
      certificate_arn = aws_acm_certificate.ecs_api.arn

      forward = {
        target_group_key = "ecs_api_server"
      }
    }
  }

  web_acl_arn = local.api_acl_arn

  target_groups = {
    ecs_api_server = {
      backend_protocol                  = "HTTP"
      backend_port                      = local.container_port
      target_type                       = "ip"
      deregistration_delay              = 5
      load_balancing_cross_zone_enabled = true

      health_check = {
        enabled             = true
        healthy_threshold   = 5
        interval            = 30
        matcher             = "200"
        path                = "/health"
        port                = "traffic-port"
        protocol            = "HTTP"
        timeout             = 5
        unhealthy_threshold = 4
      }

      # There's nothing to attach here in this definition. Instead,
      # ECS will attach the IPs of the tasks to this target group
      create_attachment = false
    }
  }
}

GitHub action to deploy:
name: Staging Deploy
on:
  push:
    branches:
      - main

concurrency:
  group: staging-deploy
  cancel-in-progress: false

permissions:
  id-token: write
  contents: read

env:
  ENV_NAME: ...
  ECS_CLUSTER: ...
  ECS_SERVICE: ...
  AWS_REGION: ...
  ROLE_TO_ASSUME: ...
  ECR_IMAGE: ...
  IMAGE_TAG_PARAMETER_NAME: ...
  CONTAINER_NAME: ... # from the container_definitions section of the task definition
  TASK_DEFINITION_FILE: task-definition.json # Not committed to source. Actually downloaded from ECS during the job

jobs:
  build:
    name: Build Docker Image
    runs-on: ubuntu-latest
    outputs:
      image: ${{ steps.build-image.outputs.image }}
      tag: ${{ steps.build-image.outputs.tag }}

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Build image
        id: build-image
        run: |
          TAG="staging-$(git rev-parse --short HEAD)"
          FULL_IMAGE_NAME="${ECR_IMAGE}:${TAG}"
          docker build -t "${FULL_IMAGE_NAME}" .
          echo "image=${FULL_IMAGE_NAME}" >>  "${GITHUB_OUTPUT}"
          echo "tag=${TAG}" >>  "${GITHUB_OUTPUT}"

      - name: Configure AWS credentials for image push
        uses: aws-actions/configure-aws-credentials@v4
        with:
          role-to-assume: ${{ env.ROLE_TO_ASSUME }}
          aws-region: ${{ env.AWS_REGION }}

      - name: Login to Amazon ECR
        uses: aws-actions/amazon-ecr-login@v2

      - name: Push image to Amazon ECR
        run: |
          docker push "${ECR_IMAGE}" --all-tags

  deploy-backend:
    name: Deploy API Server to ECS
    runs-on: ubuntu-latest
    needs: build
    env:
      AWS_REGION: us-east-2

    steps:
      - name: Configure AWS credentials for deployment
        uses: aws-actions/configure-aws-credentials@v4
        with:
          role-to-assume: ${{ env.ROLE_TO_ASSUME }}
          aws-region: ${{ env.AWS_REGION }}

      - name: Download existing task definition
        run: |
          aws ecs describe-task-definition --task-definition "${ECS_SERVICE}" --query taskDefinition > "${TASK_DEFINITION_FILE}"

      - name: Fill in the new image ID in the Amazon ECS task definition
        id: task-def
        uses: aws-actions/amazon-ecs-render-task-definition@v1
        with:
          task-definition: ${{ env.TASK_DEFINITION_FILE }}
          container-name: ${{ env.CONTAINER_NAME }}
          image: ${{ needs.build.outputs.image }}

      - name: Deploy Amazon ECS task definition
        uses: aws-actions/amazon-ecs-deploy-task-definition@v1
        with:
          task-definition: ${{ steps.task-def.outputs.task-definition }}
          service: ${{ env.ECS_SERVICE }}
          cluster: ${{ env.ECS_CLUSTER }}
          wait-for-service-stability: true

      - name: Update SSM parameter of image
        run: |
          aws ssm put-parameter --name "${{ env.IMAGE_TAG_PARAMETER_NAME }}" --value "${{ needs.build.outputs.tag }}" --type String --overwrite

Expected behavior
After applying this terraform and then deploying from GitHub, if I change an unrelated .tf file in the same terraform project, then when I run terraform plan, no changes should be shown in my container definition.
Actual behavior
The container definition gets updated and the service is recreated.
I am 100% sure this is not due to task definition drift outside of GitHub Actions and Terraform, as the task definition has never been updated except by Github Actions and Terraform. We deploy to multiple environments using the same scripts and this bug appears in all of those environments.
Terminal Output Screenshot(s)
I cannot share a screenshot, but when I run terraform plan, it shows these two resources getting changed

module.api_ecs_service.aws_ecs_service.this[0]

the task_definition is changed

module.api_ecs_service.aws_ecs_task_definition.this[0]

The container_definitions are updated, forcing replacement. I cannot see what part of the definition has been changed since the entire thing is marked as a sensitive value. That said, upon an investigation of what's in AWS, I think the update to the container definitions happens because the registeredAt, registeredBy, and revision properties of the task definition always change after a deployment by GitHub Actions.

Additional context

As an alternative to fixing this bug, it would be incredible to just update ignore_task_definition_changes so that it doesn't also cause load balancer configuration to be ignored, per https://github.com/terraform-aws-modules/terraform-aws-ecs/issues/152. We'd love to completely manage the Task Definition via GitHub actions, but that is unworkable for us because ignore_task_definition_changes also causes the load balancer config to be ignored.
Another option would be to improve the documentation for the workaround, actually showing an example of how to connect the load balancer to the service when ignore_task_definition_changes = true. I've filed a separate ticket for that suggestion: https://github.com/terraform-aws-modules/terraform-aws-ecs/issues/154

I can relate to you. 🙂
I ended up simply running this before working with terraform:
terraform apply -refresh-only

This reconciles the state with reality a bit, and so the subsequent terraform apply does not cause re-deploy.

Another option is to keep an eye on #171.

I can relate to you. 🙂 I ended up simply running this before working with terraform:
terraform apply -refresh-only

This reconciles the state with reality a bit, and so the subsequent terraform apply does not cause re-deploy.

This workaround does not seem to work for me.
Here is the output of refresh-only command:
Note: Objects have changed outside of Terraform

Terraform detected the following changes made outside of Terraform since the last "terraform apply" which may have affected this plan:

  # module.app_env.module.ecs.module.service_images["xxx"].aws_ssm_parameter.ignore_value[0] has changed
  ~ resource "aws_ssm_parameter" "ignore_value" {
        id             = "xxx"
      ~ insecure_value = "xxx.dkr.ecr.eu-central-1.amazonaws.com/xxx:version1" -> "xxx.dkr.ecr.eu-central-1.amazonaws.com/xxx:version2"
        name           = "xxx"
        tags           = {}
      ~ version        = 4 -> 5
        # (5 unchanged attributes hidden)
    }

  # module.app_env.module.ecs.module.ecs.module.service["xxx"].aws_ecs_service.this[0] has changed
  ~ resource "aws_ecs_service" "this" {
        id                                 = "arn:aws:ecs:eu-central-1:xxx:service/xxx/xxx"
        name                               = "xxx"
        tags                               = {}
      ~ task_definition                    = "xxx:18" -> "xxx:19"
        # (14 unchanged attributes hidden)

        # (6 unchanged blocks hidden)
    }

When I run it again, terraform detects no changes, however a regular plan/apply tries to update service & task def
  # module.app_env.module.ecs.module.ecs.module.service["xxx"].data.aws_ecs_task_definition.this[0] will be read during apply
  # (depends on a resource or a module with changes pending)
 <= data "aws_ecs_task_definition" "this" {
      + arn                  = (known after apply)
      + arn_without_revision = (known after apply)
      + execution_role_arn   = (known after apply)
      + family               = (known after apply)
      + id                   = (known after apply)
      + network_mode         = (known after apply)
      + revision             = (known after apply)
      + status               = (known after apply)
      + task_definition      = "xxx"
      + task_role_arn        = (known after apply)
    }

  # module.app_env.module.ecs.module.ecs.module.service["xxx"].aws_ecs_service.this[0] will be updated in-place
  ~ resource "aws_ecs_service" "this" {
        id                                 = "arn:aws:ecs:eu-central-1:xxx:service/xxx/xxx"
        name                               = "xxx"
        tags                               = {}
      ~ task_definition                    = "xxx:19" -> (known after apply)
        # (14 unchanged attributes hidden)

        # (6 unchanged blocks hidden)
    }

  # module.app_env.module.ecs.module.ecs.module.service["xxx"].aws_ecs_task_definition.this[0] must be replaced
+/- resource "aws_ecs_task_definition" "this" {
      ~ arn                      = "arn:aws:ecs:eu-central-1:xxx:task-definition/xxx:18" -> (known after apply)
      ~ arn_without_revision     = "arn:aws:ecs:eu-central-1:xxx:task-definition/xxx" -> (known after apply)
      ~ container_definitions    = jsonencode(
          ~ [
              ~ {
                  ~ image                  = "xxx.dkr.ecr.eu-central-1.amazonaws.com/xxx-xxx:version1" -> "xxx.dkr.ecr.eu-central-1.amazonaws.com/xxx-xxx:version2"
                    name                   = "xxx"
                    # (17 unchanged attributes hidden)
                },
            ] # forces replacement
        )
      ~ id                       = "xxx" -> (known after apply)
      ~ revision                 = 18 -> (known after apply)
      - tags                     = {} -> null
        # (10 unchanged attributes hidden)

        # (2 unchanged blocks hidden)
    }

Even if I manually register new task definition in the aws console, the following change would still cause the service to be redeployed
  # module.app_env.module.ecs.module.ecs.module.service["xxx"].aws_ecs_service.this[0] will be updated in-place
  ~ resource "aws_ecs_service" "this" {
        id                                 = "arn:aws:ecs:eu-central-1:xxx:service/xxx/xxx"
        name                               = "xxx"
        tags                               = {}
      ~ task_definition                    = "xxx:20" -> "xxx:21"
        # (14 unchanged attributes hidden)

        # (6 unchanged blocks hidden)
    }

fyi I also apply the example with the latest image version stored in SSM.

I am working on a similiar task where our CI pipeline updates the image and creates a new revision in the console. SInce terraform is not aware of this change and still have old state file with some old revision, it tries to force replace the task definition.
I am currently trying to implement the logic where I can ignore these changes in my task definition module, but I cannot implement it smartly as I want user to choose if these changes can be ignored. Lifecycle block is useless here and I am looking for suggestions if anyone knows about the use case where solution like this has been implemented.

@andrewedstrom Did you find a workaround since February? I faced exactly the situation.

@bryantbiggs Sorry to ping you, but have you any idea how we can deal with this issue?  Is there any workaround to this workaround? Allowing to deploy through the CI and managing the task through Terraform sounds really perfect.

unfortunately, I think we have exhausted the various hacks and avenues for trying to deal with this at a module/resource level. the solution needs to ultimately come from the ECS API - I don't know if there is anything that could be done at the Terraform AWS provider level

Thx @bryantbiggs for your feedback. Is there anyplace where we can ask for such improvement?
Out of curiosity, this workaround was working at somepoint?

I would highly encourage you to reach out to your AWS account team and provide them feedback on what you are trying to do with ECS and the challenges you are facing. This is how Amazon works (working backwards from the customer) and its how we will drive actual change from the service side, instead of pursuing hacks through the limited set of functionality we have at our disposal at the resource/module level

Thank you for the recommendation, I’ve sent a message to our AWS support team.
Regarding this issue, here’s another discussion thread where it's being extensively talked about: https://github.com/hashicorp/terraform-provider-aws/issues/632

@bryantbiggs So the AWS support ask me to create an issue within the ECS roadmap repository.
The point is I don’t know at all what to ask. I understood there is a lack within the ECS API, but which one exactly? May I ask you to create it? Perhaps the fact you work at AWS can help increasing the priority or help up to find a workaround.

There are already various existing requests on the containers roadmap, I've listed a few below that I believe are related/relevant:

https://github.com/aws/containers-roadmap/issues/196
https://github.com/aws/containers-roadmap/issues/2058

we will attempt a change in v6.0 - but that attempt is to remove hacks and move the discussion further upstream. That could be the AWS provider or with the service itself


How to use "redirect" instead of "popup" when using useGoogleLogin?

Hello, I wanted to use a custom button so I used useGoogleLogin. I also wanted to use redirection instead of a popup but I'm not sure how to do that. Here's my failed attempt:
const googleLogin = useGoogleLogin({
    ux_mode: "redirect",
    redirect_uri: "http://localhost:3000/preview",
    onSuccess: success => console.log("SUCCESS: ", success),
    onError: error => console.log("ERROR: ", error),
});

It's still using the popup so I guess I'm not using it correctly. Any help would be greatly appreciated. Thanks!

Oh, I think I know what's wrong. I didn't add the 'flow' prop


Bare bones json format check + error states

Goal is to ensure we have something that at least can be parsed as a tree -- that is, there must be at least 2 nodes (a root and 1 child), and they must both have names (per type definition of NSNode).
Notes:

This does not include the more formal tree ingestion tests (see outstanding issue)
For now, state management is a simple boolean; this may grow into a more detailed piece of state a la fetchData in the future as we add more tests and/or formats.
Includes handling of edge case where tree ingestion fails (either via fetch or a bad JSON) and then the user subsequently uploads a good JSON (i.e., clear all tree-related errors once we have a good tree on board).

Thanks for your comments, @vincent-czi ! Implemented. Will push then merge momentarily.


How to ignore control?

I would like to ignore a little button in my focus-group, I don't want that this control got focus, exists something like focus-ignore to skip this control in the focus flow?
Thanks,

I will have a solution for this in the next release.

Release 0.3.9, you can add a class "focus-ignore" to an element and the FM will skip it as long as that class is present on that element.


Cut off footer variable names if print exceeds 7 lines

It does not help users view the data when all that is printed on the screen is column names.
Here is pillar output where the number of columns goes into the thousands

This is another example from the prostmat.csv csv on this site https://hastie.su.domains/CASI/data.html

This is what tv outputs.


Spike on GitOps plugin

Goal
Evaluate the upstream Argo plugin, using this BS Plugin Evaluation Templates
Notes
It looks like the Argo upstream plugin is only available on Roadie.  If that's the case, let's get as much information as possible.

Details on the upstream plugin:
Details from upstream contributer
Source repo (both frontend and backend plugins)

If it helps the reviewer, the plugin can be seen deployed and in action for example here:
https://service-catalog.operate-first.cloud/catalog/default/component/backstage/ci-cd (above github actions)
You can click on the ArgoCD application name to reveal additional details.

I am going to close this one out as the spike is complete. We will review the spike and track follow on issues with https://github.com/janus-idp/backstage-plugins/issues/110.


Added tag, mark, unmark aliases and added tag-count for SQS.

Added tag, mark and unmark aliases for SQS tag support, plus added tag-count as part of Custodian sprint @ Re:Invent 2017.

we don't want aliases unless its a compatibility thing, it creates multiple ways of doing something, when we want one obvious way of doing it. this branch needs to be reverted.


Maintenance: re-organizing assets folders

Hi Micha,
I'm proposing some changes to the organisation of assets so that everything is nicely grouped together under assets:

created assets/data for data files such as contributors.js
created assets/images/contributors for contributors' avatars
created assets/images/homepage for homepage images
created assets/images/docs for docs images

I've modified paths accordingly in the different files concerned.
I've also added my own data to the contributors file.

Hey @BuckyBuck135, thank you for organizing the assets and also changing all the image paths as needed. I will merge with the main codebase. I wonder if we might want to add some documentation about file structure and where one should import images they might be using... 🤔 I'll give it some thought, and you can let me know if you have suggestions.

We can display a file tree in the main readme / contributing


Support multi tenancy in the config generation tool

Now that multi tenancy is due to land in Maistra as of TP11, we should update the config generation tool to support this.
Right now, the tool will generate resources with the istio-system namespace hardcoded. This can be the logical default since a standard installation will preserve this naming convention. We should allow it to be overridden via a flag however to support alternative namespaces.
As part of this, we should also review the docs and update as required.

@PhilipGough how about having a switch for the istio namespace to use and default it to istio-system if not specified?

@unleashed yep pretty much what I was thinking. I've taken a look at the underlying code and in fact, this change should be fairly straightforward. We already have a function to alter the namespace from the default.


Bug: Not all alerts that should be sent are received (in Microsoft Teams)

Describe the bug
We have several tests on several models. We have tagged these tests like below. For example:
version: 2

models:
  - name: Sample A
    description: ...
    meta:
      owner: ["Finance"]
    data_tests:
      - dbt_utils.expression_is_true:
          name: "not_really_relevant_here"
          meta:
            description: 'Also very irrelevant here'
          expression: "1 != 1"
          tags: ['data-quality', 'invoices']

Not in all cases we receive the error where we would expect them to receive (in Microsoft Teams) when we sent the alert with edr monitor --select tag:invoices. However, we will still see the failed test result in user interface that is generated as we would expect.
To Reproduce

Create a model with two tests, with a tag on test level, both should have the same tag. Something like:

version: 2

models:
  - name: sampleb
    meta:
      owner: ["someone_who_should_solve_this"]
    data_tests:
      - dbt_utils.expression_is_true:
          name: "blabla"
          meta:
            description: 'Some more blabla!'
          expression: "1 != 1"
          tags: ['data-quality', 'manual_contract_export']
      - dbt_utils.expression_is_true:
          name: "blabla3"
          meta:
            description: 'Some more blabla about blabla3'
          expression: "1 != 1"
          tags: ['data-quality', 'manual_contract_export']

Create some dummy data in your dbt model

Run dbt test -s sampleb

Run edr monitor --select tag:manual_contract_export and verify that both outputs should be sent

Verify that only one of the failed test is sent to your alerting system (Slack/Teams). This is not as expected.

Verify in UI that both failed tests exists, which is as expected.

Expected behavior
All failed tests should be sent as alert to (Slack/Teams).
Screenshots
Output of edr monitor:
The ADDITIONAL_POWER_BI_GROUP_ID variable is not set. Defaulting to a blank string.
The DWH_DUMP_DB_HOSTNAME variable is not set. Defaulting to a blank string.
The DWH_DUMP_DB_PORT variable is not set. Defaulting to a blank string.
The DWH_DUMP_DB_NAME variable is not set. Defaulting to a blank string.
The DWH_DUMP_DB_USER variable is not set. Defaulting to a blank string.
    ________                          __
   / ____/ /__  ____ ___  ___  ____  / /_____ ________  __
  / __/ / / _ \/ __ `__ \/ _ \/ __ \/ __/ __ `/ ___/ / / /
 / /___/ /  __/ / / / / /  __/ / / / /_/ /_/ / /  / /_/ /
/_____/_/\___/_/ /_/ /_/\___/_/ /_/\__/\__,_/_/   \__, /
                                                 /____/
Any feedback and suggestions are welcomed! join our community here - https://bit.ly/slack-elementary
2024-07-30 03:46:29 — INFO — Running with edr=0.15.1
"--select" is deprecated and won't be supported in the near future.
Please use "-fl" or "--filter" for filtering the alerts.
2024-07-30 03:46:29 — INFO — Installing packages for edr internal dbt package...
2024-07-30 03:46:29 — INFO — Running dbt --log-format json deps --project-dir /usr/local/lib/python3.10/site-packages/elementary/monitor/dbt_project --profiles-dir /.dbt
2024-07-30 03:46:32 — INFO — Running with dbt=1.7.14
2024-07-30 03:46:32 — INFO — Updating lock file in file path: /usr/local/lib/python3.10/site-packages/elementary/monitor/dbt_project/package-lock.yml
2024-07-30 03:46:32 — INFO — Installing dbt-labs/dbt_utils
2024-07-30 03:46:32 — INFO — Installed from version 0.8.6
2024-07-30 03:46:32 — INFO — Updated version available: 1.2.0
2024-07-30 03:46:32 — INFO — Installing elementary-data/elementary
2024-07-30 03:46:32 — INFO — Installed from version 0.15.1
2024-07-30 03:46:32 — INFO — Updated version available: 0.15.2
2024-07-30 03:46:32 — INFO —
2024-07-30 03:46:32 — INFO — Updates available for packages: ['dbt-labs/dbt_utils', 'elementary-data/elementary']
Update your versions in packages.yml, then run dbt deps
2024-07-30 03:46:44 — INFO — edr (0.15.1) and Elementary's dbt package (0.15.2) are compatible.
2024-07-30 03:46:47 — INFO — Elementary's database and schema: '"production.elementary"'
2024-07-30 03:46:47 — INFO — Running internal dbt run to populate alerts
2024-07-30 03:46:47 — INFO — Running dbt run -m elementary_cli.alerts.alerts_v2 --project-dir /usr/local/lib/python3.10/site-packages/elementary/monitor/dbt_project --profiles-dir /.dbt --vars {"days_back": 1}
03:46:49  Running with dbt=1.7.14
03:46:49  target not specified in profile 'elementary', using 'default'
03:46:49  Registered adapter: postgres=1.7.14
03:46:49  Unable to do partial parsing because config vars, config profile, or config target have changed
03:46:55  Found 39 models, 2 operations, 6 tests, 6 sources, 0 exposures, 0 metrics, 1366 macros, 0 groups, 0 semantic models
03:46:55
03:46:55
03:46:55  Running 1 on-run-start hook
03:46:55  1 of 1 START hook: elementary.on-run-start.0 ................................... [RUN]
03:46:55  1 of 1 OK hook: elementary.on-run-start.0 ...................................... [OK in 0.00s]
03:46:55
03:46:55  Concurrency: 1 threads (target='default')
03:46:55
03:46:55  1 of 1 START sql incremental model elementary.alerts_v2 ........................ [RUN]
03:46:56  1 of 1 OK created sql incremental model elementary.alerts_v2 ................... [INSERT 0 0 in 0.90s]
03:46:56
03:46:56  Running 1 on-run-end hook
03:46:56  1 of 1 START hook: elementary.on-run-end.0 ..................................... [RUN]
03:46:56  1 of 1 OK hook: elementary.on-run-end.0 ........................................ [OK in 0.00s]
03:46:56
03:46:56
03:46:56  Finished running 1 incremental model, 2 hooks in 0 hours 0 minutes and 1.13 seconds (1.13s).
03:46:56
03:46:56  Completed successfully
03:46:56
03:46:56  Done. PASS=1 WARN=0 ERROR=0 SKIP=0 TOTAL=1
2024-07-30 03:46:56 — INFO — Running dbt --log-format json run-operation elementary.log_macro_results --args {"macro_name": "elementary_cli.get_pending_alerts", "macro_args": {"days_back": 1, "type": null}} --project-dir /usr/local/lib/python3.10/site-packages/elementary/monitor/dbt_project --profiles-dir /.dbt
2024-07-30 03:47:05 — INFO — Running dbt --log-format json run-operation elementary.log_macro_results --args {"macro_name": "elementary_cli.get_last_alert_sent_times", "macro_args": {"days_back": 1, "type": null}} --project-dir /usr/local/lib/python3.10/site-packages/elementary/monitor/dbt_project --profiles-dir /.dbt
2024-07-30 03:47:08 — INFO — Update skipped alerts
Sending alerts |████████████████████████████████████████| 2/2 [100%] in 2.1s (0.93/s)

Only one alert in Teams (don't think this requires any additional print screen).
Both tests show up in the UI.
Environment (please complete the following information):

Elementary CLI (edr) version: 0.15.1
Elementary dbt package version: 0.15.2
dbt version: dbt-core 1.8.4 + dbt-postgres 1.8.2
Data warehouse: Postgres
Infrastructure details: Production env

Additional context
N/A
Would you be willing to contribute a fix for this issue?
Depends on severity of the issue

Hi @FrankTub ,
I think this can actually be expected behavior...
can you explain why you needed the same test with the same params on the same table / column?

@ellakz , I see I forgot the essential part of my example. I have a where condition in both tests that are opposites. So the example would be:
version: 2

models:
  - name: sampleb
    meta:
      owner: ["someone_who_should_solve_this"]
    data_tests:
      - dbt_utils.expression_is_true:
          name: "blabla"
          meta:
            description: 'Some more blabla!'
          expression: "1 != 1"
          where: "state = 'active_lease'"
          tags: ['data-quality', 'manual_contract_export']
      - dbt_utils.expression_is_true:
          name: "blabla3"
          meta:
            description: 'Some more blabla about blabla3'
          expression: "1 != 1"
          where: "state != 'active_lease'"
          tags: ['data-quality', 'manual_contract_export']

So the name of the test is unique. It should go to the same channel, however I would expect both test results to be there.

Hi @FrankTub ,
You are correct it does look like a bug indeed, can't commit to when we can fix it but can try to provide guidance if you or anyone reading this want to take a shot :)


cluster-operator e2e: switch to using coutil for cluster verification

Use our consolidated command instead of the separate utility

@stevekuznetsov or @dobbymoodge ptal

lgtm


MARATHON_EE-1673: Introduce lightweight SSE flag

This PR adds support for the URL argument /v2/events?plan-format=light that subscribes to a "lighter" version of the SSE events, where some of the deployment plan fields are excluded.
~The flag event_stream_lightweight enables "lightweight" events. Such events have the origin and target dicts in the deployment plan removed and thus a major part of the SEE size reduced.~
For more information regarding this issue you can refer to this document: https://docs.google.com/document/d/1BsfSoglJ2Z2RM1CQIqrQl_zDkiSLbd68fQoEmCeOgqA/edit#heading=h.7t0ffuvu6r3h

To bring in the discussion from Phabricator:

I have to clarify that I consider this to be a bug. If you have about 1000 deployed apps the event bus becomes practically unusable. Therefore I am opting for a deprecation plan and thus a command-line flag, or api versioning + deprecation plan.
This flag can help towards a later deprecation of the current state of the SSE message format.

Can we please avoid the use of custom JSON formats, and instead use the RAML types? Custom JSON formats are a mess and have led to code that's nearly impossible to maintain w/o introducing bugs.

After a discussion with @jeschkies I would agree with @jdef ... think that the best would be to move to RAML types.

@wavesoft, is this the diff about the get parameter for lightweight events?

@jeschkies yes, this is, I forgot to push :smile:

So, what was decided regarding usage of RAML here?

This implementation is the "fastest possible solution on the current state". It's not currently taking RAML into account.

Looks great!

@meichstedt @jdef @jeschkies I am also onboard with RAML type definitions, so let's do this.
Note that this is going to change a lot of things since we currently don't have any RAML types for most of the deployment-related responses. For this purpose I started working on this on a new PR, so I redirect your attention there and I am putting this PR on halt: https://github.com/mesosphere/marathon/pull/5625


Tracardi Open Source Customer Data Platform

Open Source alternative to Segment.com

@atompie thanks a lot for your PR!
Merging


Error handling

Addresses issues:

#29
#30
#31

Notes:

Still does not encompass every possible HTTP error response laid out in TAXII 2.0/2.1 spec. For instance, 403s are only generated for get_object, get_objects, add_objects, get_manifest.
MongoBackendError does not have a corresponding test. Was not easily reproducible.
There are some cases in the views, where 1-2 database calls are added to check resource existence and resource access (i.e. in objects.py, views.py) in order to raise 403/404s. Not sure how ideal this is, but an alternate solution could be to modify the backends to raise these errors inline in their logic. They could raise custom errors, that are then registered to global Flask error handlers, and the handlers can return the 403/404s.

Hang on, Ill test thoroughly in a python2.7 env.

Codecov Report

Merging #38 into master will increase coverage by 0.13%.
The diff coverage is 88.92%.

@@            Coverage Diff             @@
##           master      #38      +/-   ##
==========================================
+ Coverage   91.31%   91.44%   +0.13%
==========================================
  Files          18       19       +1
  Lines        1174     1415     +241
==========================================
+ Hits         1072     1294     +222
- Misses        102      121      +19

Impacted Files
Coverage Δ

medallion/views/collections.py
100% <ø> (+5.88%)
:arrow_up:

medallion/views/discovery.py
100% <ø> (+4.76%)
:arrow_up:

medallion/views/manifest.py
93.75% <100%> (+2.84%)
:arrow_up:

medallion/test/data/initialize_mongodb.py
85.71% <57.14%> (-14.29%)
:arrow_down:

medallion/backends/memory_backend.py
90.64% <66.66%> (+0.27%)
:arrow_up:

medallion/__init__.py
76.54% <75%> (-0.51%)
:arrow_down:

medallion/exceptions.py
84.61% <84.61%> (ø)

medallion/views/objects.py
93.02% <87.5%> (+7.3%)
:arrow_up:

medallion/test/test_mongodb_backend.py
96.3% <87.64%> (-3.7%)
:arrow_down:

medallion/backends/mongodb_backend.py
96.18% <92.5%> (-0.46%)
:arrow_down:

... and 4 more

Continue to review full report at Codecov.

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

I'll also add that, as I read the TAXII 2.0 spec, we don't need to support every error code on every endpoint mentioned by the spec. I read it as more of a "here are some of potential errors that could be returned from this endpoint". If we don't track something in medallion (like per-object permissions or permissions on reading collection metadata), it's entirely valid to never return 403 errors from those endpoints.

Correct, my interpretation as well. As long as we note the level of access control we support and thus the corresponding error handling that needs to be done, it is within spec.

Hey...we're just glad you folks understand all of this esoteric stuff.  Makes my head hurt:  Lines, Decorators, and Bears - Oh My!
PAT MARONEY
<EMAIL_ADDRESS>On Jul 26, 2018, at 4:36 PM, Greg Back<EMAIL_ADDRESS>wrote:
@gtback commented on this pull request.
In medallion/backends/mongodb_backend.py https://github.com/oasis-open/cti-taxii-server/pull/38#discussion_r205594308:

     api_root_db = self.client[api_root]

     collection_info = api_root_db["collections"]
     collections = list(collection_info.find({}))

   for c in collections:

       if c:

           c.pop("_id", None)

   return {"collections": collections}

   if collections:

       # added existence check here to match memory backend behavior

Ah, I understand. I would just add an explicit return None at the end then (I missed the reliance on the default return value when the if collections: block isn't executed.
Ideally, though (and this comes without a comprehensive understanding of how this works, so I could be missing important trade-offs and decisions, so take with a grain of salt), Backend.get_collections would just return a list of collections, not a dictionary with a "collections" key.
But more accurately, if there are no collections (but the API root does exist), the result should not be a 404, but a 200 with an empty JSON object ({}); the "collections" key is optional http://docs.oasis-open.org/cti/taxii/v2.0/cs01/taxii-v2.0-cs01.html#_Toc496542735.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/oasis-open/cti-taxii-server/pull/38#discussion_r205594308, or mute the thread https://github.com/notifications/unsubscribe-auth/ADEi4R3epRMYY1OSB_6yA-hXaeTplRjyks5uKihXgaJpZM4Vgp-N.


Issue #224 - Feature request - add a field for commit message on url …

Adds an optional per-export "message" on the URL Export dialog.
This fixed #224 and #169

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 2 (50.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 81.507%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/ui/modules/urlExport.ts
1
2
50.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
539

Relevant Lines:
655

💛  - Coveralls

Hey @derekwsgray, thanks for all typo changes. However could please move those to a different PR? This makes it easier to review this one.

Hey @derekwsgray, thanks for all typo changes. However could please move those to a different PR? This makes it easier to review this one.

Reverted.

Please remove the changes to the dist folder from the PR. This will be generated when releasing. Thanks.

Reverted.

Couldn't get it cleaned out properly so I just re-created a new PR off the proper issue number: https://github.com/lukasoppermann/design-tokens/pull/227


B2B Components: Status in the Flow Builder is not triggered

With the B2B components, there are various statuses that can occur in the Flow Builder under Status achieved > Offer > Status. It was found that none of these statuses work.
This can best be understood with the standard flows “Quote enters status accepted”, “Quote enters status declined”, “Quote enters status in review”. No mail is sent out in this case.
What does work, however, is in the Flow Builder under the “Quote” folder “Change request” and “Requested”

[public] Shopware automated response: This issue is linked to the internal issue: NEXT-39037
[created from NEXT-39037, comment 504245]

[public]

Status Change: Resolved

The ticket has been successfully completed; the solution is implemented and verified.
[created from NEXT-39037, comment 509220]

[public]

FixVersion Change: <IP_ADDRESS>

This issue will be / was solved in Shopware version <IP_ADDRESS>.
[created from NEXT-39037, comment 509221]


[Requesst] Selecting objects in a 2D view

It would be great if I could select objects in a 2D view by selecting on an edge. Currently selection in a 2D view is done via a raycast which is an issue if a ceiling is covering a bunch of geometry in a room. Just a thought.

Hi,
Did you know you can cycle through all the objects beneath your mouse by clicking multiple times?

Good point. Didn't realise that was a feature. Thanks


linking to a blog post should take you to the user's profile card and not the #blog card.

weird wording, will clarify.
So this is my blog post:
https://discussions.app/tag/blog/3ra9kjgxzm828/blogs_bots_feeds_and_going_on_tv
But when someone lands on the blog it shows the #blog on top when it should really be showing my profile.
expected behavior:

current behavior:

Missing info and option to follow

@Novusphere

You don't see the follow button for yourself. By info, do you mean the number of followers the user has? @bluabaleno


ui issue  when  we save inventory sources

Bagisto Version

[ ] master branch

Steps To Reproduce

go to admin panel
then save inventories

Actual Result

I think its not needed, its mostly negligible.


Add docker support using jekyll's official container

This is a redo of #269 which follows @MattSurabian's advice and uses the official Jekyll Docker image instead of rolling our own thingy.
Notes

We disable the jekyll-minifier plugin during development because it adds an enormous amount of overhead: building the site goes from 0.5-1.5 seconds on my machine to over 11 seconds with this plugin enabled.  Obviously it's not needed for development, so I disabled it via a _config_dev.yml file that the Docker setup includes via Jekyll's --config argument.

To do

[x] Add documentation.

This looks great to me @toolness - I really like your word choice. Saying things like "if you are comfortable with" makes this more approachable to junior coders.  👍


GraphQL "Breaking Changes": broken anchor links

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
GraphQL "Breaking Changes"
https://docs.github.com/en/graphql/overview/breaking-changes
What part(s) of the article would you like to see updated?
The site seems to be autogenerated, but does so incorrectly for the anchor links to the sections. There seems to be an additonal - and -1 in the actual anchor links.
Example
https://docs.github.com/en/graphql/overview/breaking-changes#changes-scheduled-for-2023-10-01 - TOC
https://docs.github.com/en/graphql/overview/breaking-changes#changes-scheduled-for--2023-10-01-1 - Actual Anchor
Additional information
No response

The links are still broken

github/docs @.>, Subscribed
@./docs @.>, Subscribed <
@.>ub.com>
On Sun, 11 Jun 2023, 9:31 pm github-actions[bot], @.***>
wrote:

A stale label has been added to this issue becuase it has been open for 60
days with no activity. To keep this issue open, add a comment within 3 days.
—
Reply to this email directly, view it on GitHub
https://github.com/github/docs/issues/24976#issuecomment-1586237337, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/BANIPHYIU77SC6IXSWJTQUTXKXXE5ANCNFSM6AAAAAAWZ34IKE
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

@timmeinerzhagen Thanks for reporting this! I think this will have to be handled internally, so I've transferred the issue to the internal repo. Thank you for reporting the links! 💖


Django  migratons

I could not figure out how to run the Django migrations. Do I need to run minikube in a different way(running with on administrator mode) or do I need to run everything locally?
I get the following error:
django.db.utils.OperationalError: Problem installing fixture '/app/assignments/fixtures/assignments.yaml': Could not load assignments.Assignment(pk=1): no such table: assignments_assignment
@skoulouzis @gpelouze

I already tried this, but it didn't work.

I think it cannot load the env variables. I am not sure why, do you have any thoughts?


Browser extension not work

Environment: WIN10 + Edege
Version: dl-librescore 0.35.15 - 0.35.19 not works.
I tried dl-librescore on musescore a month ago, it works amazing.
But it failed and showed nothing today.
Any idea for this? How could I get more information from Edge?
Many thanks

Give me a screenshot of the popup menu that appears when you click on the Tampermonkey extension icon when viewing a song on musescore.com

@PeterNjeim
Sorry for my carelessness, it seems that the extension disabled all scripts before.
Thanks a lot for your time and I will close this issue.


node selector rework

What this PR does / why we need it:
Reworks the git node selector
Release note:

The git node selector's missing argument processing has been added


Verify equality of template signatures

Make sure that all templates belonging to a recipe have the same number, order and type for all the method arguments. This avoids accidental copy/paste errors which otherwise can lead to compiling recipe code, but wrong results at runtime.
Fixes #107.
Checklist

[x] I've added unit tests to cover both positive and negative cases
[x] I've read and applied the recipe conventions and best practices
[x] I've used the IntelliJ IDEA auto-formatter on affected files

Heads up: this may quite significantly reduce the number of Error Prone Support Refaster rules for which a corresponding OpenRewrite recipe is generated.
Stock Refaster requires that @AfterTemplate method parameter names are also present for each @BeforeTemplate method, but not vice versa, and does not require that the types match. We rely on latter to keep rules compact, while the former is valid in case a rule drops an unused subexpression.

Then the only thing remaining to raise an error for would be after.args.size() > before.args.size(). However, that would have found just 1 out of the 3 or 4 copy/paste errors I made in recent weeks that all motivated me to have the strict check. :/

Yeah, that's painful :(. I recognize that it's soo easy to make copy-paste errors when creating a bunch of similar Refaster rules.
This motivated us to write a test framework (where each rule has before- and after-example code), but as-is said framework isn't maximally user friendly, requiring changes in three files (example: PicnicSupermarket/error-prone-support#1290). At some point I looked into creating a "DSL" that would have example code be "nested" inside the relevant Refaster rule. Something to return to, one of these days :)

It seems that we can at least also verify that the parameters of the after templates correspond to a parameter in each before template, where we perform the check by name.


Integrate with Travis

Hi,
This PR adds integration with travis-ci.org. You can check the Travis build for the fork to see how it looks: https://travis-ci.org/dsavenko/ck .
I added one very simple test ('test_safe_float'), because without any tests Travis build is next to useless. This test and the 'tests/' folder should be refactored in subsequent PRs about testing.
After merging, you need to log in travis-ci.org and enable travis for the CK repository.
P.S. The button is README doesn't look as intended yet, because I changed the URL to the future URL of the upstream travis build, which doesn't yet exist. It should start working as soon as you enable Travis for the project.

Looks good to me! Thanks!

Hi Dmitry,
This looks good to me - thanks a lot!
I enabled ctuning/ck at travis-ci.org .
At the moment, the status of build is unknown.
What should I do to run the test? Or it will be done automatically
next time I commit something?
Thanks again,
Grigori
On 05/09/2016 13:28, Dmitry Savenko wrote:

Hi,
This PR adds integration with travis-ci.org. You can check the Travis
build for the fork to see how it looks:
https://travis-ci.org/dsavenko/ck .
I added one very simple test ('test_safe_float'), because without any
tests Travis build is next to useless. This test and the 'tests/'
folder should be refactored in subsequent PRs about testing.
After merging, you need to log in travis-ci.org and enable travis for
the CK repository.
P.S. The button is README doesn't look as intended yet, because I
changed the URL to the future URL of the upstream travis build, which
doesn't yet exist. It should start working as soon as you enable
Travis for the project.

    You can view, comment on, or merge this pull request online at:

https://github.com/ctuning/ck/pull/53
    Commit Summary

Add Travis config file

Ad install and script instructions for Travis

Minor

Add simple test

Add build status button to README

Change Travis button URL to the future upstream build url
File Changes

M .gitignore
https://github.com/ctuning/ck/pull/53/files#diff-0 (1)

A .travis.yml
https://github.com/ctuning/ck/pull/53/files#diff-1 (15)

M README.md https://github.com/ctuning/ck/pull/53/files#diff-2
(2)

A ck/test_kernel.py
https://github.com/ctuning/ck/pull/53/files#diff-3 (11)
Patch Links:

https://github.com/ctuning/ck/pull/53.patch

https://github.com/ctuning/ck/pull/53.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ctuning/ck/pull/53, or mute the thread
https://github.com/notifications/unsubscribe-auth/AHCu5W9uTt2KhArmxV13en5HDDF2bBgjks5qm_zjgaJpZM4J0_E8.

Tried to push dummy change and Travis works fine - I see the 'passing' status in CK readme! Cool! Thanks!

Yes, it builds automatically on each commit. Also, it should do separate builds for pull requests (the 'Pull Requests' tab in Travis) — but I never tried. Also, there is a button 'Restart build' (round icon to the right6 below 'More options'), which allows to manually restart the build (build number is not incremented).

Cool! Thanks! Very handy!
On 05/09/2016 17:52, Dmitry Savenko wrote:

Yes, it builds automatically on each commit. Also, it should do
separate builds for pull requests (the 'Pull Requests' tab in Travis)
— but I never tried. Also, there is a button 'Restart build' (round
icon to the right6 below 'More options'), which allows to manually
restart the build (build number is not incremented).
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ctuning/ck/pull/53#issuecomment-244776316, or
mute the thread
https://github.com/notifications/unsubscribe-auth/AHCu5eNxOnJX9w41ENL8pAQ8p1DZwiVCks5qnDrWgaJpZM4J0_E8.


BCP - Deleting a Document doesn't take effect

Is there an existing issue for this?

[X] I have searched the existing issues

Product
Banana Cake Pop
Describe the bug
When deleting a document from the list, and then dragging it into BCP again, a dialog appears prompting for a rename with a Name already taken validation error.
I also noticed that if I delete all of the documents, and then drag a new one into BCP, all the deleted documents appear again.
Steps to reproduce

Drag a document into BCP
Delete the document
Verify document is no longer in list of documents
Drag the same document into BCP again

Expected
Document is added to BCP correctly
Actual
Dialog prompting Name already taken appears.

Relevant log output
No response
Additional Context?
No response
Version
5.0.3

Cannot reproduce. Please Update to the latest version 10.0.7.

Thanks, will try and let you know. Due to #6612 I thought I was on the latest version already 😅

Can confirm this is working in latest version


Add "dsh phpcs" command

It is currently possible to run phpcs with drude via dsh run phpcs ..., e.g.
dsh run "phpcs \
	--standard=Drupal -n \
	--extensions=php,module,inc,install,test,profile,theme \
	--ignore=*.features.*,*.pages*.inc \
        sites/modules/custom"

I propose we add a shortcut for this: dsh phpcs.
We should settle on the default arguments, make sure it is possible override then and to pass additional ones.

make sure it is possible override then and to pass additional ones.

Maybe we should just make it custom command then?

@achekulaev I gave it a though and a custom command would probably make sense, since this will allow per project configuration of what dsh phpcs (or whatever each team decides to call it) is doing.
In that case we just need docs on the phpcs use case with some examples and a sample custom command file for dsh phpcs.

Done in develop


No zip?

The container doesn't seem to include /usr/bin/zip. This makes it difficult to create custom Zip files of the build outputs in a pipeline.
(In my case I wanted to rename some of the outputs, but only when building a release against a pushed tag, and them zip them).
Would you be OK with a PR to add it?

Hi @thejpster !
The container is mainly oriented to KiBot use. Using KiBot you have zip, rar and tarball creation, using the compress outputs.
Do you really need the zip command?

Well, maybe?
What I’m trying to do is make a zip file of my Gerber outputs with a given name. What I’d then like to do (but don’t do currently) is make it so that if you unpack archive X, you get a folder called X, with the files inside.
See https://github.com/Neotron-Compute/Neotron-Pico/blob/c5afe9ce787dae4ec73d9cb1fe7a64b63ea311f1/.github/workflows/kibot.yml#L103
I’ll go and look at the kibot docs to see if it can do that internally.

OK, the compress output is good enough. Thanks!


[Functional] Extract the utilities in a separate library or use Fit?

The observation is that Hana's Functional module is basically the Fit library by @pfultz2. It might be nice to use Fit instead of our own mini sub-library to increase code reuse. Of course, adding a dependency is really annoying, but there might be a good way to do it.
@pfultz2 What do you think? Also, do you plan on submitting Fit for Boost review?

I believed that both Tick and Fit were already on http://www.boost.org/community/review_schedule.html.
Paul if you add them I could manage the review of one.

What do you think?

Its very possible. I dont know how the logistics will work since your library will go to review first.

Also, do you plan on submitting Fit for Boost review?

Yes, there is some more work I hope to finish in the next month, and then I would like to ask for an informal review first, and then move towards a scheduling a formal review.

I believed that both Tick and Fit were already on http://www.boost.org/community/review_schedule.html.
Paul if you add them I could manage the review of one.

I am not sure how I get added to the schedule. It looks like the Fit library is reaching much closer to formal review. If you are able to be the review manager that would be great.

What do you think?

Its very possible. I dont know how the logistics will work since your library will go to review first.

Oh, I don't see the "Functional" utilities as really part of Hana. I mean, they are, but they are definitely not core functionality. As far as I'm concerned they could be moved to the detail namespace, except that I would need to modify the examples that use them. I don't see Hana's "Functional" module as any kind of threat to Fit entering Boost, if Hana is accepted.

As far as I'm concerned they could be moved to the detail namespace, except that I would need to modify the examples that use them.

How would the examples be modified? Would they use Fit or the detail namespace?
I think it is good idea for us to coordinate it together, especially since there can be subtle differences(like hana::compose vs fit::compose).

How would the examples be modified? Would they use Fit or the detail namespace?

Yes, basically. Not a large modification.

I think it is good idea for us to coordinate it together, especially since there can be subtle differences(like hana::compose vs fit::compose).

I think so too. To give us some more time, I'll  move the Functional module to the Details module of the documentation, so it is not advertised as being part of the Boost submission. What do you think?

I think so too. To give us some more time, I'll move the Functional module to the Details module of the documentation, so it is not advertised as being part of the Boost submission. What do you think?

Sounds good. Perhaps, there should be a note in the review that you plan to use Fit for the functional utilities, so the reviewers understand the use of the detail namespace in the examples.

Sounds good. Perhaps, there should be a note in the review that you plan to use Fit for the functional utilities, so the reviewers understand the use of the detail namespace in the examples.

I did not move the functional utilities to the detail:: namespace, but only to the "Details" part of the documentation, upon which people must not rely. So there's no usage of detail:: in the few examples that use the functional utilities. However, I'll put a note in the documentation of that module that it might be replaced by Fit, which is why it's kinda hidden right now.

Louis, where have you added this note?

@pfultz2 Paul let me know when you consider your library is ready for review and why not some dates would be good for you. I will need to do a check then so that we can add it to the review schedule.
Please let follow this privately.

@viboes The note is right there.

After thinking about this for a while, I'd rather leave Hana without dependencies and control the implementation of these function objects, which are used in a couple of implementation details of Hana.


[Bug] Railway deployment failed

Description
Just click on the "Deploy on Railway" button in repo's frontpage and get a deployment error on Railway
Screenshots

Additional context
Have tried several times on different account, but all ends up failed

Hello,
Sorry for the delay. Did you try using the new version? Does the error still persist?

It persist on version v1.1 @anovazzi1


Add option for sampling_ratio at the dataset level

This PR enables users to set an optional sampling_ratio parameter that will determine the ratio of the data that will be profiled. sampling_ratio should be a float greater than 0 and less than or equal to 1. This PR only enables the option to be set. A future PR will implement the actual sampling logic.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Joshua Taylor seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Temp logging not working

While supersim is running, the temp logs specified in the terminal do not exist.
Steps to reproduce:

Start supersim
Try to navigate to one of the log files that is specified in the terminal

Expected behavior:
Opening the log file specified in the terminal should show the logs for that chain
Actual behavior:
The log file at that path is not found
Workaround:
Run supersim specifying a log path: supersim --logs.directory "/tremarkley/supersim"

Hi @jakim929, I would like to take this one ( work on this )


I want to update rows, not append them

Thank you for your great library.
Does a way to update row content already exist on the library?
I envision a use case where a particular range is kept up to date using SheetHelper::ClearRange() and the update method.

@darma-exe,
In the SheetHelper class you can use the BatchUpdate(List<BatchUpdateRequestObject> updates) method.  You pass it a collection of updates and you can update multiple cells with that method.  Is this what you are looking for?
Also if you are using the strongly typed option, the BaseRespository and BaseRecord classes let you do this,
firstRecord.PriceAmount = 99.99;
repository.SaveField(firstRecord, (r) => r.PriceAmount);

Thanks for the support, I was able to write using the SheetHelper::BatchUpdate() method.
If I don't want to overwrite an existing style (e.g. color) of a cell, do I need to get the existing style beforehand.

Check out version 1.0.41 on nuget now.

One last update!  In 1.0.42 you can now specify a custom field mask.  If you use "*", that will update every property of the cells in the request.  The method defaults to only updating the userEnteredValue.  But you can override that now.

I added some documentation to the readme file to explain the different field masks you can use here,
https://github.com/SteveWinward/GoogleSheetsWrapper#batch-updates


fix: should remove mockPath from callstack whether success or failed

Description

When mock a module import exception, the mock function throws but the mockPath not removed from the callstack
this makes the retry import  not perform correctly

Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. If the feature is substantial or introduces breaking changes without a discussion, PR might be closed.
[ ] Ideally, include a test that fails without this PR but passes with it.
[ ] Please, don't make changes to pnpm-lock.yaml unless you introduce a new test example.

Tests

[ ] Run the tests with pnpm test:ci.

Documentation

[ ] If you introduce new functionality, document it. You can run documentation with pnpm run docs command.

Changesets

[ ] Changes in changelog are generated from PR name. Please, make sure that it explains your changes in an understandable manner. Please, prefix changeset messages with feat:, fix:, perf:, docs:, or chore:.

Looks good, but can you add a test case where this fails without your change? You can add it to examples/mocks.


[BUG] GeckoLib Fabric and Forge don't work together, but ONLY when I have a mod that requires GeckoLib Forge, and another that requires GeckoLib Fabric (Sinytra Connector)(1.20.1 and Latest Release) #167

Minecraft: 1.20.1
Fabric: 0.15.9
GeckoLib Fabric AND Forge via Sinytra Connector
Soulslike-Weaponry: 1.1.3
Describe the bug
The mods in my modpack require both GeckoLib Forge and Fabric. They work fine alone, and it works fine when I have both installed plus all the Forge mods that need GeckoLib. However, when I add a mod that needs Geckolib Fabric, the game crashes due to entrypoint stage 'main'. Both Geckolib versions have different code so I need to use both.
crash-2024-08-11_20.46.04-client.txt

Known and not fixable without breaking changes
Sinytra is not meant to be a perfect solution.