cannot ng build, get TypeError: Path must be a string.

Please provide us with the following information:

OS?

Windows 7, 8 or 10. Linux (which distribution). Mac OSX (Yosemite? El Capitan?)
macOS Sierra 10.12.2
(also happens on a windows server 2012 R2)

Versions.

Please run ng --version. If there's nothing outputted, please run in a Terminal: node --version and paste the result here:
angular-cli: 1.0.0-beta.16
node: 6.9.4
os: darwin x64

Repro steps.

Was this an app that wasn't created using the CLI? What change did you do on your code? etc.
It was created with the CLI, however I am new enough to angular and the CLI that I do not quite know how to answer this question...  I was not the one who started the project, but I want to understand how to fix the problem myself.

The log given by the failure.

Normally this include a stack trace and some more information.
Path must be a string. Received undefined

TypeError: Path must be a string. Received undefined
    at assertPath (path.js:7:11)
    at Object.resolve (path.js:1146:7)
    at Object.getWebpackCommonConfig (/<appPath>/node_modules/angular-cli/models/webpack-build-common.js:109:80)
    at new NgCliWebpackConfig (/<appPath>/node_modules/angular-cli/models/webpack-config.js:15:29)
    at Class.run (/<appPath>/node_modules/angular-cli/tasks/build-webpack.js:17:22)
    at Class.run (/<appPath>/node_modules/angular-cli/commands/build.js:50:26)
    at Class.<anonymous> (/<appPath>/node_modules/angular-cli/lib/models/command.js:152:17)
    at tryCatch (/<appPath>/node_modules/rsvp/dist/lib/rsvp/-internal.js:215:12)
    at invokeCallback (/<appPath>/node_modules/rsvp/dist/lib/rsvp/-internal.js:230:13)
    at publish (/<appPath>/node_modules/rsvp/dist/lib/rsvp/-internal.js:198:7)
    at flush (/<appPath>/node_modules/rsvp/dist/lib/rsvp/asap.js:85:5)
    at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9)

Mention any other details that might be useful.
I can't tell what is the thing that might be the problem... so I would like to understand the steps to take to diagnose the problem.
my app's project.json:
{
"name": "my-app",
"version": "0.0.0",
"license": "MIT",
"angular-cli": {},
"scripts": {
"start": "ng serve --env=source",
"build": "ng build",
"build-replace": "ng build --env=replace",
"lint": "tslint "src/**/*.ts"",
"test": "ng test",
"pree2e": "webdriver-manager update",
"e2e": "protractor"
},
"private": true,
"dependencies": {
"@angular/common": "2.0.0",
"@angular/compiler": "2.0.0",
"@angular/compiler-cli": "2.2.4",
"@angular/core": "2.0.0",
"@angular/flex-layout": "2.0.0-beta.3",
"@angular/forms": "2.0.0",
"@angular/http": "2.0.0",
"@angular/material": "2.0.0-alpha.10",
"@angular/platform-browser": "2.0.0",
"@angular/platform-browser-dynamic": "2.0.0",
"@angular/router": "3.0.0",
"angular2-select": "1.0.0-alpha.12",
"core-js": "2.4.1",
"hammerjs": "2.0.8",
"jsrsasign": "6.1.1",
"jwt-decode": "2.1.0",
"lodash": "4.16.4",
"material-design-lite": "1.2.1",
"moment": "2.15.1",
"ng2-pagination": "0.5.1",
"ng2-translate": "4.0.0",
"normalize.css": "4.2.0",
"primeng": "1.0.0-rc.6",
"rxjs": "5.0.0-beta.12",
"ts-helpers": "1.1.1",
"xmljson": "0.2.0",
"zone.js": "0.6.23"
},
"devDependencies": {
"@types/jasmine": "2.2.30",
"@types/lodash": "4.14.37",
"angular-cli": "1.0.0-beta.16",
"codelyzer": "0.0.26",
"jasmine-core": "2.4.1",
"jasmine-spec-reporter": "2.5.0",
"karma": "1.2.0",
"karma-chrome-launcher": "2.0.0",
"karma-cli": "1.0.1",
"karma-jasmine": "1.0.2",
"karma-remap-istanbul": "0.2.1",
"protractor": "4.0.9",
"ts-node": "1.2.1",
"tslint": "3.13.0",
"typescript": "2.0.2"
}
}

Thanks! We'll be in touch soon.

I got the same issue and I noticed there was a new release. Check the changelog, after I did the necessary updates I got rid of this issue.

Having the same problem.... :-1:
Any Solution?

Found it:
Well,
It looks like it is a wrong configuragion file for the angular-cli version you are using.
In angular-cli.json file, try to change the following:
from:
"environmentSource": "environments/environment.ts",
"environments": {
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}
to:
"environments": {
"source": "environments/environment.ts",
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}

Closing as answered.


Suggestions for additional colors

First of all, fantastic project. It's very difficult to pick shades of attractive hues that have an equal perceived brightness, yet you managed somehow. Extremely valuable.
I know you've commented on some color suggestions already, but I still like to make a plea for a small set of color additions.
Brown
I know you mentioned that you have no plans for it. Justification to perhaps reconsider is that brown is the only missing hue compared to the widely used Material Design colors. I much prefer the consistency of Open Color, and adding brown would make Open Color a feature complete rival in terms of hues, yet with better picked shades.
Cold, Neutral, Warm Gray
The current gray is not neutral, it's slightly cool (blue). I believe gray needs special attention as it is often used as a main UI background, and even the slightest hue change has a far reaching effect on the whole UI.
My suggestion would be to have a truly neutral gray ramp, a slightly cold one (like the current one), and a slightly warm one.
Whatever your answer, again, great work!

I also would love a brown color as well, and curious of the decision made at #60 (with no plans to implement). If there is no way to make brown interoperable with all the other colors (in terms of looking great), then I wouldn't really want to have it as an option.

@EanKeen Maybe this helps:
https://ferdychristant.com/color-for-the-color-challenged-884c7aa04a56

Sadly, I still have no plans to make a brown palette. This is because brown is not a hue but a brightness problem unlike other colors. Brown is a color with lower brightness in red. This is the same reason why I did not make khaki or dark navy colors.
But I am open to making gray with different hue. When I first created Open Color, it was common to use cool gray in UI design, so I did not mind other gray. However, to reflect recent trends, I'm considering four gray palettes: 'normal cool gray', 'warm gray', 'neutral gray' and 'very blue gray'.

I will close this issue to clean up the issue list and continue making other gray palettes in #81 .


Change to AnnDataView.X propagates into AnnData

When changing .X of a view, the changes propagate into the main AnnData object. I don't think this is expected?
adata = AnnData(np.ones((3, 2)))
adata_view = adata[:2, ]
adata_view.X *= 2
adata.X

array([[2., 2.],
       [2., 2.],
       [1., 1.]])

This one actually is expected. I know, it's weird.
It goes back to when we wanted to do inplace operations on backed data.

I see!
Maybe we should have a docs page dedicated to how views work.


RDK-35488:Issues in CMF-RPi Dunfell Builds when rdkshell in surfacemode

From: kchinn681<EMAIL_ADDRESS>Subject: Crash observed when few plugins are activated from Controller UI in CMF-RPi
Reason for change:Crash observed when few plugins are activated from Controller UI in CMF-RPi
Test Procedure: activate html app using controller.ui
Risks: Low
Signed-off-by: kathiravan chinnadurai<EMAIL_ADDRESS>Source: COMCAST
License: GPLV2
Upstream-Status: Pending

Internal JIRA for tracking https://ccp.sys.comcast.net/browse/RDKCOM-2979


Add import error percentage to data import

Now we have the import error percentage, only for SHP files, and we want to have it in the data import info.

I've been using Postgres statistics data (pg_stat_user_tables) to avoid the expensive use of count but I'm afraid that the rows count gathered is not reliable.
My concern is if I can trust that the data is going to be collected when I finish the import process to gather it.
Is there any way (that don't imply explicitly call the collector) to asure the data is collected?. the collected data could be partially updated? (for example while I'm in the middle of the importing process, the statistics collector gather data)
I'd like to discuss this with people like @pramsey or @javisantana that knows more about Postgres :)

Running ANALYZE mytable should force a stats refresh.

Thank you Paul. Finally I'm going to use COUNT and check for performance.

It's a full table scan every time. reltuples not doing it for you?

yep is a full table scan but I need the exact number because I'm planning to use it to calculate the import error between rows imported and the number of rows of the file to be imported.
I've been using n_live_tup but in staging sometimes the value wasn't be calculated so I'm afraid I can't get real values :S

Maybe only run the process every 10th import, to keep the load down?

Hum that could be a solution. I'll take a look to it. Thank you very much Paul :))


Link outdated and doesnt open (Developer account)

Describe the bug
Hi there.
I am following the guide, and it tasks me to setup a LG developer account.
The link to the LG page does not work, when I left click it, and also not with right click -> open link. It does open, when I open it in a separate window, though.
This issue is most likely linked to my default browser, Vivaldi.
The other issue is, that the webpage is obviously outdated, and the login link does not work anymore. Why dont we link to the current page: https://webostv.developer.lge.com
Why do we use a webarchive version of the page?

Maybe also include a link to the LG Content Store.
The current guide does not even say if that is a desktop app, a homepage, an app on the LG TV, or whatever. Providing a direct link to https://at.lgappstv.com/main helps.

Also, the second stage of the tutorial does not mention, where to open the LG Content Store.
It does also have no link attached, like this one.

Archive was used because every time LG updates their website, the link will be dead.
I'm working on renewing webosbrew.org, after that, I will use the guide there instead.


BLOB longer than INT_MAX bytes 100s of MB of data from data frames.

File [some-path/.venv/lib/python3.12/site-packages/mandala/storage_utils.py:140](http://localhost:8888/~/Repos/yfacrypto/.venv/lib/python3.12/site-packages/mandala/storage_utils.py#line=139), in SQLiteDictStorage.set(self, key, value, conn)
    136 @transaction
    137 def set(
    138     self, key: str, value: Any, conn: Optional[sqlite3.Connection] = None
    139 ) -> None:
--> 140     conn.execute(
    141         f"INSERT OR REPLACE INTO {self.table} (key, value) VALUES (?, ?)",
    142         (key, serialize(value)),
    143     )

OverflowError: BLOB longer than INT_MAX bytes

Hi @amakelov,
My setup is all python and roughly the following:
Functions are imported into a notebook from around the code base, the notebook invokes those functions to:

read data frames (each 100s of MB in size).
Transform the values columns, create X and y (these transformations are likely to evolve).
Run ML fits and out-of-sample evaluations on the results.

I was excited to try @op and wanted it to memoize the results of (1) and (2) above. I think the error results from having results that are "too big" i.e. exceed the row capacity of a row in the database (e.g. I ran the Notebook with @op and with a small X matrix and it appeared to work).

Hi @amakelov,
To follow up, I tried this experiment:

Loaded the data frames (100s of MBs).
Transformed the values, and selected 5000 rows (so X is something like 5000x10).
Fit the model.

I have @op decorating some functions: generate_features, get_xs_and_ys, and fit. Importantly, load_data_frames is not @op decorated, although it is called from inside of an @op decorated function.
I can run this code on a small/toy data frame and it all works (e.g. re-running with a full restart skips all the work - loading of data frames, scanning the rows, transforming values - and returns the same results). When I point it back to the data that I want to work with - even though I stop at 5000 rows - I get OverflowError: BLOB longer than INT_MAX bytes. I thought that was strange... i.e. there should not be that much data to memoize.

So far, I've found two issues:

At some point, I wanted to unwrap something inside of an @op decorated function. So... I passed instorage as a function argument. This may be the root cause of some other strange behavior, but it definitely caused a large blob insertion into the db.
I had @op decorated a function that accepted the data frames as input arguments. Arguably, this is in scope (i.e. as compared to issue (1) above). But the data frames were very big, so the db insert failed. This was easy enough to fix -- but perhaps there is a way to guard against or notify users when they are caching something that is very large?

Catching the failure at its inception would be helpful on both points above.

Thanks @etep for reporting this. I see several separate things discussed here that I'll respond to individually:

the large objects bug: I propose automatically using an overflow directory to save large objects as .joblib files, happy to hear your feedback on this (see below)
another bug that leads to the BLOB longer than INT_MAX bytes SQLite error even when using small data - sorry, this is too little information for me to work with - can you provide a minimal reproducing example?
passing a Storage instance as an @op argument

yeah this is a bad idea, because if the cache contains a lot of in-memory Refs, they'll all be part of the serialization of the storage. In the worst case, you'll essentially be doubling the volume of the storage each time you do this.
could this be the reason for the bug in the previous bullet point?
you're correct that there should be a way of detecting this, and warning about this in the docs; I'll add one, thanks!

why should we save inputs to @ops at all?

some reasons in favor: if we don't, you can't always recover where a given thing you computed came from.
OTOH, I can see why it would be useful, so I propose some mechanisms to achieve it (see below)

Storing large objects
I've been able to kind-of reproduce with the code below, though I get a different kind of error:
from mandala.imports import *
import pandas as pd
import numpy as np

works = np.random.uniform(size=(10000, 10000))
fails = np.random.uniform(size=(20000, 10000))

@op
def inc(x):
    return x + 1

storage = Storage()

with storage:
    inc(works) # this works fine it seems

with storage:
    inc(fails) # too big, fails

File [...]/mandala/storage_utils.py:140, in SQLiteDictStorage.set(self, key, value, conn)
    136 @transaction
    137 def set(
    138     self, key: str, value: Any, conn: Optional[sqlite3.Connection] = None
    139 ) -> None:
--> 140     conn.execute(
    141         f\"INSERT OR REPLACE INTO {self.table} (key, value) VALUES (?, ?)\",
    142         (key, serialize(value)),
    143     )

InterfaceError: Error binding parameter 1 - probably unsupported type.

I think we might be getting a different error message because INT_MAX  is set at compile-time for SQLite; or due to some other difference between versions/compile-time configs (not very confident though).
At any rate, it is impractical to save large objects in SQLite, so I propose automatically storing large objects in an "overflow directory" as .joblib files. This will be much more efficient for reads/writes too!
Add the ability not to save @op inputs
There are several ways to enable this, in decreasing order of flexibility:

add a Transient(obj) wrapper, so that objects wrapped in Transient will not be saved when they're inputs or outputs of @ops (but their CID and HID will be saved). This covers another use case I've had, where we don't want to save certain outputs of @ops and instead recompute them on the fly only when necessary.

this is very flexible, because it gives you full control over the situations where this behavior happens. OTOH, you may forget to do it.

add some custom type constructor so that when an input argument of an @op is annotated by it, it is always treated as a Transient(...) thing as above
just make the entire @op not save any of its inputs

I'm in favor of the 1st bullet point, though I can see how the 2nd and 3rd can be useful complements. Let me know if you have any thoughts!

Hi @amakelov,
Yes, the issue I had reported was initially caused by some amount of learning curve on my side, but I do agree we can split it into its individual components. Will take a look at your proposals and comments and send back. Thank you!

e6422b1 added a preliminary functionality to store large values in joblib files as opposed to SQLite.
Here's a small example:
storage = Storage(db_path='test.db', overflow_dir='overflow/', overflow_threshold_MB=10)

@op
def make_array(n: int) -> np.ndarray:
    return np.random.rand(n)

with storage:
    for i in (10, 100, 1000, 10_000, 100_000, 1_000_000, 10_000_000, 100_000_000,):
        make_array(i)

The two largest arrays will be (at least on my machine?) stored in the overflow/ dir


Add intellisence for syntax files

Description of the problem or steps to reproduce
It's hard to define language syntax without having any sort of completion.
Notes
I've already created the dedicated PR to solve this issue. This issue is more a reminder for project maintainers not to forget about my PR.
As a sidenote: completion absence for the current moment is the only one thing what stops me from contributing to this project syntax files actively. I am those kind of person who relies on intellisence.
Please vote for this issue to help me to get my PR merged.

Currently I'm a bit confused why intellisense support or at least a completion template shall be included within micro when micro itself has no direct benefit of it, since it doesn't know and most probably doesn't want to know about intellisense. In case someone needs intellisense for a special purpose then the person already has a favorite editor which is VS(Code).
Adding such a file is one more file to maintain for a little group of related persons.
With the data/micro.json we've already a duplication of the default options, which isn't in sync to internal/config/settings.go any longer, since the same stuff must be maintained twice or even three times (settings.go, options.md & micro.json). This doesn't follow the concept of single point of truth.
Don't get me wrong, it's just my own opinion.
@zyedidia could have a different view of it.
Closed by #2696

Not to maintain stuff several times I think it's better to generate JSON schema automatically.

I've put my JSON schema to SchemaStore, so users will be able to benefit of having completions when PR is merged.


Release next as semver-major

Opening a tracking issue for releasing the current changeset in next as a semver-major release.
I've been daily driving it (the web version), and it's working pretty good for me.
I think it's good enough to be released to general public. Any shortcomings can be addressed in follow-up releases.
What do you think? @gozmanyoni @rhysmorgan134

I certainly think its publish ready - no major issues that I can see.
@steelbrain - curious, "pretty good" - what are some of the issues that still exist and can be improved?
The latest merge to next should have better memory management as video and audio streams are not cloned.

Heh, may have used confusing words.
I don't have any issues with the experience right now.

I'm happy for it to go, easily more performant than the old version, and much more stable, even from my limited testing. Excited to see what can come from it!

@rhysmorgan134 The PR is merged, could you please release it on NPM?

🥳 https://www.npmjs.com/package/node-carplay/v/4.0.0


feat: add authentication and authorization

Signed-off-by: Harikrishnan Balagopal<EMAIL_ADDRESS>

Would be good to add a values schema too, to help in artifacthub view.

done


Port UNet model to New Conv API on n150

To bringup UNet model on WH device with New Conv API

Closing in favour of https://github.com/tenstorrent/tt-metal/issues/11706


Update typescript.ru.mdx

Description

[ ] Adding new page
[x] Updating existing documentation
[ ] Other updates

updated missing lines in Russian translation

what about merge my fixes?

Since #378 was merged into main, I believe this PR can be closed as it will result no diff. Thank you @jt3k

Sorry for the delay, but still many thanks to the contribution @jt3k! 🙏 Close this as it's landed in v2 docs


Stdout+Stderr should be included in error message when extension fails

When an extension fails you only get a graphql error saying "exit code N" more or less. The actual useful error is located in buildkit progress output. It would be much easier to debug if the output was included in the graphql error.
This is very similar to this issue about execs, but now for extensions. Its slightly more tricky for extensions since we don't have a shim when invoking extensions, but maybe this indicates we should include the shim there too?

Ancient issue, no longer relevant


"My frequently used filters"

Suggestion from the municipalities: the software remembers the last view the user has had in the service - e.g. the last used filters, background map and extent.
This was not in the original offer, so it is a new feature request.

The filters are saved in localstorage now.
Do we want to also save the background map, center and zoom level?


[Suggestion] Return "0" when placeholder return nothing

Helllo,
Would it be possible to add a way so that when a placeholder returns no value (empty), the placeholder returns “0” instead?
This would avoid console errors such as: [WARN]: [Topper] The placeholder %MY_PLACEHOLDER% returns empty.

If you don't care about that, don't enable show-errors


Show the service's state

We allow stopping, starting, etc. But we can't tell if the service is running or stopped right now. Add a state indicator.

Waiting on https://github.com/Microsoft/vscode/issues/34789 so I can properly refresh the state text upon start/stop command


fix(@schematics/update): ignore npm 404 error

This PR will fix the issue https://github.com/angular/angular-cli/issues/10614

What do you guys think?
cc: @hansl @clydin

@alan-agius4 just did it!

@clydin we can use the workspace configuration to search local packages and filter _getAllDependencies.
This way, only npm packages will be pass to getNpmPackageJson.

Changed!
cc: @alan-agius4 @clydin

Hi @clydin just made the changes you asked.
If I miss something, please let me know.
Thanks!

Additionally, could you add a // TODO: find some way to test this? Testing npm requests is hard, but we should have proper integration tests with this (in some future).


Why is CMAKE_CUDA_ARCHITECTURES not enough

In all host-configs we set both CMAKE_CUDA_ARCHITECTURES and add the -arch flag manually to the CMAKE_CUDA_FLAGS.  Why is does this seem to be necessary? Is it possibly our reliance on the old FindCUDA, which is soon to be removed?
Does this flag need to be set if CMAKE_CUDA_ARCHITECTURES is set?
Originally posted by @adayton1 in https://github.com/LLNL/blt/pull/570#r830399325

This is possibly addressed in #585.


Refactor Owner Directory Structure for Component Separation

Current Implementation
The project structure places all classes related to pets, owners, and visits in a single directory. This organization can make the codebase harder to navigate and maintain as the project grows. To improve clarity and scalability, I propose refactoring the directory structure by segregating these classes into separate directories based on their functionality.
Proposed Solution:
Create distinct directories for each component:
pets: For all pet-related classes and functionality.
owners: For all owner-related classes and functionality.
visits: For all visit-related classes and functionality.
Move the relevant classes and files into their respective directories.
Example:
Move Pet.java, PetController.java, etc., to the pets directory.
Move Owner.java, OwnerController.java, etc., to the owners directory.
Move Visit.java, VisitController.java, etc., to the visits directory.
Update imports throughout the project to reflect the new structure.
Benefits:
Improved Readability: Each directory will contain only the files relevant to its component, making it easier for developers to find and understand code.
Better Scalability: As new features or functionality are added, the modular structure will help maintain organization.
Easier Maintenance: Fixes or updates related to a specific component can be implemented and tested more efficiently.
I recommend performing this refactoring as a separate commit to make the changes easier to track.
Let me know if there's any feedback or additional considerations before I start working on this!

The design is already intentionally modular. Pets and visits are part of the owner entity (in DDD terms). Any further separation is a kind of overengineering. Thanks for the suggestion, though.

Thank you for your response and for clarifying the design considerations. I understand that the current modular structure, with pets and visits as part of the owner entity in Domain-Driven Design (DDD) terms, is intentional. I appreciate your insight and will take this into account moving forward. Consequently, I will close the associated pull request for this issue to align with the project's design principles.


[AMP Components in Firefox][NF]_[Components_amp form] Enable experiment button greyed out.

1.Go to https://ampbyexample.com/
2.Tap on Components
3.Tap on amp-form  and observe experiment button greyed out in experiment box
Observed result: Experiment button greyed out and non responsive
Expected results: Experiment button button should be responsive
Device(s):
Mac os desktop
Firefox :57.0.4 (64-bit)
Screenshot:https://screenshot.googleplex.com/py8VfkqBpT0

Duplicates #1051


TensorDef.py contains code that does not work

https://github.com/pygae/galgebra/blob/d8e533f51bd28c4e81d9f70a9545b0fbe17cc1f2/doc/python/TensorDef.py#L19-L20
cc @FreddyBaudine, xref gh-150
I don't think we have any code coverage for galgebra.lt. It's possible that a lot of the Mlt stuff can be replaced with builtin tensors, as alluded to in #102

I find it very unlikely we will address this in 0.4.5, given that Mlt looks like it was only half-written, based on the residual print statements, and @abrombo's remark about them indicating the level of completion of his code.

fc598df56ac6573248a187d514262f6312b17f31 looks like it made a breaking change to Mlt, by changing the nargs argument to args.


代码更新完了嘛

您好，请教一下，该项目的代码更新完了么？谢谢

We are currently working on the public release. Please stay tuned for the updates.


Update create-table-dotnet.md

Changed from Etag.Any to the correct ´ETag.All` for the insert method according to https://docs.microsoft.com/en-us/dotnet/api/azure.data.tables.tableclient.updateentity?view=azure-dotnet

@lynxz : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Sorry, this might be a dumb question, am I meant to do something now?

#sign-off

No, I probably should have done this before and actually signed off on the PR.  It should get pushed out now either today or tomorrow.


Inject client SAML name into the credentials instead of the default.

When the credentials are built by pac4j, it is not with the "real client name" but with the class name : SAML2.class.getSimpleName().
This is boring if you specify the name or if you use 2 SAML clients.
This is not the best solution to resolve my problem but it works.
The best solution is to inject the client name when the credentials are built, into the function : #SAML2DefaultResponseValidator.buildSAML2Credentials().
Bye.

We don't plan any work on 1.7 (we are about to start the development of version 1.9). Can you upgrade to version 1.8 where this has been fixed?

It's not possible for me to upgrade on 1.8 because I use pac4j with CAS server and it seems that version is not compatible with stable version of CAS. But, I may be wrong.

pac4j should be compatible with any CAS server version unless there is a bug. What's your CAS server version? What's the issue?

I use the version 4.1.3 of CAS (with Tomcat 7).
If I use pac4j 1.8.2 it's impossible to start my server : NoClassDefFoundError: org/pac4j/core/client/Mechanism
"Mechanism" class is referenced in the "cas-server-support-pac4j" jar (version 4.1.3 like CAS).
I make a mistake in my dependencies ?

OK. I get it now: yes, inside the CAS server 4.1, you need pac4j v1.7.x. I will merge your PR, let you test pac4j v1.7.2-SNAPSHOT and if you confirm the fix, I'll cut a release.
Sounds good?

It's good (I use source not the SNAPSHOT Jar)
Do you know pac4j works with ADFS 3.0 (it seems not) ?
Thx

I'm not sure, but I think so. There is a specific documentation for ADFS, but it might outdated: https://github.com/pac4j/pac4j/blob/master/README-ADFS.txt
What issue do you have? Is there a way for me to test your configuration (online ADFS)?

Excuse me, it's just a bad ADFS configuration.
The ADFS don't send Subject NameID node and it cause NullPointerException in Pac4J.
I make a PullRequest for avoid it.

Would you mind updating the README- ADFS doc with your latest updates? It could help others.


Removes TheHive related things as out of app scope

Cleaning up app imports and files that appear to be unrelated to the scope of this app.

Thanks! This looks good and the basic analysis seems to work :)


Rename views to be friendlier for namespace pollution

Problem
The terms users and sessions are generic enough that they may conflict with existing or future views in the destination BigQuery dataset.
Changes

New vars have been introduced that can be used to override the session and user view names.
By default, the users and sessions views are aliased using the same pattern as the events table for both BigQuery and Snowflake. Because we use a dedicated schema, Snowflake identifiers remain unchanged.
Seeds have been renamed to take a fullstory_ prefix in both Snowflake and BigQuery.

Caveats

The formatting macro invocation for BigQuery identifiers has been copied twice. I am not aware of a way to define and use macros within YAML configuration files. This discussion is relevant, but I don't see any resolution.
Seeds technically don't need to be renamed for Snowflake because we already use a schema. However, I've opted to rename them across the board for simplicity and consistency.

@craigrmccown maybe rebase to get circle file?


allow the value null to override defaults?

The following file is accepted by demes-python (and demes-c), but not the reference implementation. I forget the exact motivation for permitting null (which parses as a Python None), because clearly we could override with an empty list. But maybe null is required to override defaults in some other cases?
time_units: generations
defaults:
  deme:
    ancestors: [a, b, c]
    proportions: [0.1, 0.7, 0.2]
demes:
- name: a
  ancestors: null
  proportions: []
  epochs:
  - {start_size: 1}
- name: b
  ancestors: []
  proportions: null
  epochs:
  - {start_size: 1}
- name: c
  ancestors: null
  proportions: null
  epochs:
  - {start_size: 1}
- name: x
  start_time: 100
  epochs:
  - {start_size: 1}
- name: y
  start_time: 100
  epochs:
  - {start_size: 1}
- name: z
  start_time: 100
  epochs:
  - {start_size: 1}

[EDIT: this is the file test-cases/valid/toplevel_defaults_deme_03.yaml]

IIUC, Semantically it comes down to whether we make a distinction between the dictionary {"a": None} and {}. They do seem like different things to me.
Isn't it clearer/simpler to only do default replacments if the key is strictly not present?

Isn't it clearer/simpler to only do default replacments if the key is strictly not present?

I think that's what we're doing. The difference in the reference implementation is that None is not an acceptable value for ancestors, whereas in demes-python this just means "no ancestors".

Ah, I think I have an example where null might be needed/preferred.
time_units: generations
defaults:
  migration: {demes: ["a", "b"]}
demes:
- name: a
  epochs:
  - start_size: 100
- name: b
  epochs:
  - start_size: 100
migrations:
- demes: null
  source: a
  dest: b
  rate: 0.1

Sorry, I'm not following what this does - would you mind spelling it out a bit please?

It specifies a default value for the demes property of each migration.
defaults:
  migration:
    demes: [a, b]

But then if we want to specify an asymmetric migration, we need need to override this default somehow.
We "unset" the demes property by giving it the value null, and then use the source and dest properties as usual.
migrations:
- demes: null
  source: a
  dest: b
  rate: 0.1

If we didn't override the default, then demes, source, and dest would all be defined, which would be invalid due to ambiguity about whether a symmetric or asymmetric migration is defined.

Hmmm. I'm not so keen on this, seems like it could be quite confusing.
How about we disallow this for the first version of the spec and add it as a "should we allow this" for the next version?

What's the status here @grahamgower, looks like you have some commits referring to this?

I kinda sidestepped this by removing the test case which exhibits this "feature". The reference implementation does not support "null", whereas demes-python and demes-c currently do. I'm not particularly worried about differing behaviour here.

I'm not so sure, it seems like a significant divergence from the spec to me. Would documents containing these null values validate against the HDM schema?

I'm not so sure, it seems like a significant divergence from the spec to me. Would documents containing these null values validate against the HDM schema?

No, the examples above won't.
These are the possible actions we could take:

Allow null in the spec. This means we need to (1) add null as an allowed type for most of the fields, and make define this to mean that the field is treated as if it were omitted entirely (ignoring any user-specified 'defaults' corresponding to the field). We also need to (2) update the reference implementation to allow this.
Disallow null in the spec. No changes are required to the current spec or the reference implementation. Modifications need to be made in (1) demes-python and (2) demes-c. It will be impossible to set a migration demes key for symmetric migration and then override to get asymmetric migrations, and vice versa.
Leave the spec as it is and leave the implementations as they are. This is unsatisfying, but is the least amount of work and might make sense if we think we'll add null to the spec in the future.

I don't think we can leave things as they are - the whole point of a specification is that people are supposed to agree to stick to it. I don't think the marginal benefit of allowing migrations to be specified in the way mentioned above is worth the major drawback of shipping non-conforming implementations on our 1.0 release (or the work and schema ugliness of allowing null in every field in the HDM schema).
What do others think?

I find the defaults + overriding with null a bit complicated, and probably confusing for most users. But it's probably something most people won't come across.
In general, it could be very useful to have null values for certain model parameters. I was talking with @sgravel over the weekend about getting demes working with Tracts, which is a method for inferring recent admixture scenarios. That model is entirely based on ancestry tract length distributions, and population sizes don't play a part at all, and only the timing and proportions of migration events have any effect, so I could imagine wanting to put null as the epoch sizes for the populations.

I find the defaults + overriding with null a bit complicated, and probably confusing for most users. But it's probably something most people won't come across.

I agree that it's definitely confusing. But right now there's no other way of overriding a default without providing a value, which will necessarily limit the utility of the defaults to cases where a new value can be sensibly provided (e.g. an empty list rather than a populated list). I'm sure this null thing was mentioned somewhere before this issue, but I can't seem to find it (maybe we called it something else at the time?).

In general, it could be very useful to have null values for certain model parameters. I was talking with @sgravel over the weekend about getting demes working with Tracts, which is a method for inferring recent admixture scenarios. That model is entirely based on ancestry tract length distributions, and population sizes don't play a part at all, and only the timing and proportions of migration events have any effect, so I could imagine wanting to put null as the epoch sizes for the populations.

Hmm. Ignoring a value downstream is easy to do though, so having null here wouldn't be strictly needed would it? My guess is that accepting null as a valid value for sizes would require a lot of code refactoring, and that's something I'd like to avoid.

Yeah, having a parameter with a null value would be clearer in that context, although not necessary.
If we decide to have labels for entries (as I just suggested here), we could also have a suggested default labeling scheme for unused variable labels (e.g., starting with underscore), which would presumably require no refactoring.

I think there's two separate issues here:

Allowing certain fields to have null values, which are semantically significant; and
Having all values being assigned to null being semantically identical to missing.

It seems like (1) is something that we'll have to deal with, probably over time and subsequent schema versions (adding support for null with defined semantics, per field) is something we can do. (2) Seems like a very drastic thing to do, which basically rules out every having specific null semantics per field.

Ok, I feel like we're going around in circles a bit here. Lets add some models containing null to the invalid test cases, and double check that the reference implementation rejects them. We can then open issues for demes-python and demes-c to also reject these cases (but I don't see it as a high priority to fix this, because setting something to null is a fairly deliberate action that one wouldn't take by accident).

It seems that variables where the value is omitted will be implicitly given the value null. So, my migration example above could be written as:
time_units: generations
description:
defaults:
  migration:
    demes: [a, b]
demes:
- name: a
  epochs:
  - start_size: 100
- name: b
  epochs:
  - start_size: 100
migrations:
- demes:  # <--- this is given the value `null`, even with a comment after it
  source: a
  dest: b
  rate: 0.1

The concensus is that we're disallowing null, which I think the current schemas do currently disallow. The reference implementation and demes-python also reject nulls.


[Feature] query the consumer id  of the table through consumer table

Search before asking

[X] I searched in the issues and found nothing similar.

Motivation
support such query
SELECT * FROM MyTable$consumer
Solution
I want to query the consumer id  of the table through consumer table.
Anything else?
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

Can it be assigned to me?
I will add a new consumers system table for query, similar to the system table schemas.


net: UDPConn.ReadFromUDP returns non-nil Addr for generic errors

What version of Go are you using (go version)?
tip
Does this issue reproduce with the latest release?
Not 1.16
What operating system and processor architecture are you using (go env)?
linux/amd64
What did you do?

https://play.golang.org/p/IGSlLDraksK
What did you expect to see?
On 1.16, I see:
n = 0, addr = (*net.UDPAddr)(nil), err = read udp <IP_ADDRESS>:1234: i/o timeout

What did you see instead?
On tip, I see:
n = 0, addr = &net.UDPAddr{IP:net.IP(nil), Port:0, Zone:""}, err = read udp <IP_ADDRESS>:1234: i/o timeout

i.e., ReadFromUDP no longer returns a nil Addr for generic (non-address-specific) errors.
This breaks an internal test which retries if it receives a non-nil Addr and error from ReadFromUDP. (I'm actually unsure if it is possible to get a valid address along with an error? If not, perhaps this test is just broken.)
Either way, this change was caused by http://golang.org/cl/291509, where the difference in behavior appears to be unintentional, so I think it should be fixed.
cc @FiloSottile

Marking as release blocking just for safety's sake.


Explanation about "Update Azure Cognitive Search keys for the current search service"

[Enter feedback here]
User can select on or off regarding check box of "Update Azure Cognitive Search keys for the current search service",
but there isn't explanation about this functionality in this document.
So I propose to add a note as follows for example.
https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/cognitive-services/language-service/question-answering/how-to/configure-resources.md?plain=1#L25

[Note]
Language resource retains Azure Cognitive Search keys.
You need to select "Update Azure Cognitive Search keys for the current search service" in case of updating the search resource or after regenerating Azure Cognitive Search Keys.

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

ID: 3b20d4b4-448e-833f-e5ff-a142d99cb6e6
Version Independent ID: d58e9d1e-27d4-0ace-7d07-f3f6456b8d5f
Content: Configure Question Answering service - Azure Cognitive Services
Content Source: articles/cognitive-services/language-service/question-answering/how-to/configure-resources.md
Service: cognitive-services
Sub-service: language-service
GitHub Login: @aahill
Microsoft Alias: aahi

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

@aahill
could you please review this and add your comments on this

@ymukai7
I've delegated this to @aahill, a content author, to review and share their valuable insights.

Thanks for suggesting this change - I'll add a note to this article and update it shortly.
#please-close


Reduce reliance on C++ types in the public API

I understand how Luau evolved to contain so much C++, especially as Roblox uses C++ internally for the game engine and many other things.
Whatever is used for the implementation, C++ in the header files specifically raises lots of portability concerns. For example, most languages are simply unable to process C++ templates in any capacity, let alone classes.
I'm trying to create bindings to Luau so that I can use it from Rust, but bindgen famously cannot understand templates at all, and I don't imagine other languages have any solutions either. Furthermore, it's not even possible to use any templated functions or classes because templates require expansion before use.
This problem mostly attributes itself to the 500+ uses of STL types in the header files, specifically AST, Compiler and Analysis, which is pretty much 3/4ths of the project at this point.

Analysis is the worst offender, using STL types at least 400 times;
AST is next, with slightly over 100 uses;
Compiler uses STL types around 30 times;
VM uses it 0 times

Using any module other than VM (compiler especially, compiler is quite important) from another programming language is currently extremely difficult, manual, and error-prone with the current API surface. STL types are generally magical and cannot be understood by any language that is not C++, so it's usually best to keep them as implementation details, not exposed in the public API as they are now. Automated tools cannot digest them so all FFI must be done manually by a human which can introduce subtle memory bugs and undefined behavior just like that.
Luau is already in its situation with template types everywhere. Is it even possible to solve this now?

We do have plans to add a C++-free interface to compile code. I agree it's important, it would allow using Luau compiler + VM across a C or C-like boundary. This could be done with an extra header like CompilerC.h that exports an extra C-friendly interface, still implemented in Compiler.cpp. PR welcome ;)
I don't think it's realistic for us to do this for AST or Analysis.

This could be done with an extra header like CompilerC.h that exports an extra C-friendly interface

It's a bit weird that Luau uses .h for C++ files. Everything outside of VM should probably be .hpp and then there could just be Compiler.h for the pure C version.
Of course it could also continue with the convention that all-lowercase headers are pure C and CamelCase headers are C++, because that seems to be a thing here as well.

PR welcome ;)

I'll look into it

I don't think it's realistic for us to do this for AST or Analysis.

It's not realistic for you to do it for anything, all things considered.

Of course it could also continue with the convention that all-lowercase headers are pure C and CamelCase headers are C++, because that seems to be a thing here as well.

We don't really have any pure C headers; in general in Roblox codebase ".h" is used as "C/C++ header" without differentiation. This is a pretty common style in C++ projects as well, although some projects indeed use .hpp.

It's a bit involved to define a C version of the compiler interface without pulling in tons of C++ stuff. For example, the error gives (and/or takes) a Location, which is a C++ class, and in order to get access you have to import Luau/Common.h which is also full of C++ stuff, so I'd have to redefine it as a struct and have duplicated types.

I think you only need to expose Luau::compile(), that's what we were planning to do. It takes source code and produces a bytecode blob - this bytecode blob will encode an error if the error happens, which will then trigger the error at runtime when you use luau_load. So the error location is effectively embedded into the resulting blob.

I think you only need to expose Luau::compile(), that's what we were planning to do. It takes source code and produces a bytecode blob - this bytecode blob will encode an error if the error happens, which will then trigger the error at runtime when you use luau_load. So the error location is effectively embedded into the resulting blob.

What about all the options structs and the bytecode encoder? I can expose functions to allocate/deallocate the bytecode encoder and you'd just have to pass the pointer to compile - would that be okay?

You can just skip the bytecode encoder. I forgot about the options - these are good to preserve. I think the headers with options are self-sufficient and don't rely on STL?

If you wanted to build an interface to the type checker in another language, it wouldn't be worth it to reflect the whole interface over.  You probably just need a handful of things:

A way to subclass Luau::FileResolver and Luau::ConfigResolver
A way to allocate a Luau::Frontend instance and invoke its check, lint, and markDirty methods.
Maybe an accessor to unpack Luau::TypeErrorData?  This would admittedly be pretty awkward.  It depends on whether Luau::toString(const Luau::TypeError&) is sufficient for your needs.

If you need more than that, you'll probably have to build it out in C++, but you should still be able to provide a narrow interface to that.

I think the real action item here is an FFI-friendly interface for the compiler; this will let projects that use other languages or projects that don't use STL includes for policy reasons to still use compiler + VM. Everything else is probably best left outside of scope of this project, at least for now - you can always wrap Frontend or type introspection.
Also worth noting that right now we plan to be ABI- and source-compatible within reason in the C-like API surface, but don't really have any sort of compat guarantees for C++ surface as we'd like to keep an ability to refactor at will. This is currently not documented, which we can fix after we add C-friendly compiler interface, and will result in a guarantee that loosely matches LLVM - LLVM has a C interface that is stable but only exposes a subset of LLVM functionality, and to build a fully featured toolchain you likely need to use the C++ interface. Similarly for Luau, the C interface is going to be sufficient for basic integration, but for something fully featured that includes type checking, autocomplete, et al, you really will need to work with the C++ interface, at least for now.
We'll keep this issue open and will close it when a compiler interface arrives.

@zeux If you're interested, I've already implemented a pure C interface to the compiler that doesn't raise exceptions, but manages to still communicate all the information from the exception(s) that would have been raised when there is an error. It does this is through a tagged union, which can represent a successful compilation, any amount of parse errors, or a compile error.
 Perhaps Luau could adopt something like that? (That repository is licensed under GPLv3, but I still have full rights to the code and can offer it or a modified version of it to you under MIT.)

The luacode.h version of the compiler loses a ton of information, so I'll keep using my glue code. Thanks though.

It's obviously up to you as to what you use; luacode.h should be sufficient for almost all use cases, e.g. it's sufficient for Roblox.


@suppress for CTOR_IN_DIFFERENT_SCOPE

The warning for CTOR_IN_DIFFERENT_SCOPE cannot be suppressed, so the warning for this code can't be removed:
(function() {
    Array.prototype.a = function() {};
})();

> java -jar closure-compiler-v20180319.jar --new_type_inf test.js
test.js:2: WARNING - Modifying the prototype is only allowed if the constructor is in the same scope

    Array.prototype.a = function() {};
    ^^^^^^^^^^^^^^^^^

0 error(s), 1 warning(s), 100.0% typed
(function(){Array.prototype.a=function(){}})();

Can a warning group be added for this?
This warning only happens for the new type inference.

Closing since NTI is deprecated


Move all snippets to one project that targets netcore 2.0

@jskeet Thanks for the help here. PTAL

Thanks Jon!


Running the game should commit the pending changes in textboxes in the Inspector

Tested versions
Latest stable release on Windows 11
System information
Latest stable release on Windows 11
Issue description
If I make a change in a textbox in the Inspector, and I hit F5, my change is not included.  The change is only included by hitting Enter or tabbing out of the textbox.
This behavior is inconsistent with scripting changes.  I can change a script and hit F5 without first saving or committing in, and my changes are automatically included.
Steps to reproduce
Create a scene with a Sprite2D.  Place it in the game world.  Note the X and Y coordinates.
Run the game, verifying the scene is at position X,Y.
Stop the game.

Hit F5 to run the game.
Expected behavior:  The game object is at the new X value
Actual behavior: The game object is at the original X value
Minimal reproduction project (MRP)
Any trivial project will display this behavior

Closing in favor of:

https://github.com/godotengine/godot-proposals/discussions/8734


#0: Remove TT_METAL_ASYNC_DEVICE_QUEUE env var. Use enable_async_mode  fixture instead

Problem description
Async mode env var usage needs to be deprecated. We have python APIs to enable async mode, which should be used instead.
What's changed
Delete the TT_METAL_ASYNC_DEVICE_QUEUE env var and replace its usage in model tests with enable_async_mode fixture
Checklist

[x] Post commit CI passes
[ ] Blackhole Post commit (if applicable)
[ ] Model regression CI testing passes (if applicable)
[ ] New/Existing tests provide coverage for changes

The new fixture is missing from all the model tests in models/demos//tests/.py


Doesn't work in Ubuntu 15.10

here the output of sudo forever-service install test
forever-service version 0.5.4
Platform - Ubuntu 15.10
initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
Could not provision service
Could not add service test
initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused

@mukarahan currently Ubuntu 15.10 is not supported since they switched from upstart to systemd, systemd support for forever-service is in development.


Plans to implement dropdown selector?

Just wanted to check if you're working on this currently or can I go ahead and give it a go?

Yes i have,
I already did some testings here: http://plnkr.co/edit/Egm4FcGSHdYDuFvsBdW7?p=preview
But please, feel free to make it or to contribute on anything else.

Roger that. Thanks a lot for your work, I'll try to contribute as soon as I can.

I'm trying to use a dropdown with multiple selection and NgModel. As you can guess it isn't work with the current implementation. I was digging into Angular2 source code and I think the only way to achieve this is by implementing a new ControlValueAcessor. Do you have any thought about this? I can help you with this one.


How to install properly

If you are reporting a bug or requesting support, start here:
Bug or support request summary
What is the correct way to install this, if I do an npm install @storybook/addon-knobs@latest, I get version 4.0.0, however this doesn't include all of the props mentioned in the documentation (i.e radio is missing and will throw an error).
If I install using npm install<EMAIL_ADDRESS>when I try to run I get errors in that it can't compile:
Module not found: Error: Can't resolve '@babel/runtime/helpers/assertThisInitialized'
here is what my .babelrc looks like:
{
"presets": ["env", "stage-3", "react"],
"plugins": ["react-hot-loader/babel", "styled-components", "transform-class-properties"]
}
The documentation seems to be showing features that are not in the latest version (4.0.0), which would be installed if you followed the instructions for the plugin.
Please specify which version of Storybook and optionally any affected addons that you're running

@storybook/react ^3.4.10
@storybook/addon-knobs 4.0.0

I cannot reproduce this:
> $ yarn info  @storybook/addon-knobs
yarn info v1.10.1
{ name: '@storybook/addon-knobs',
  description: 'Storybook Addon Prop Editor Component',
  'dist-tags':
   { alpha: '4.0.0-alpha.25',
     latest: '3.4.11',
...


Add e2e tests for mysql 8.0

What does this PR do?
This PR adds an end-to-end test for mysql version 8.0.
To do so:

pymysql had to be updated
cryptography version 2.3.1 is added to mysql (already used for other integrations)
The docker image for mysql8 is https://hub.docker.com/r/bitnami/mysql
database is now populated after both master and slave are fully setup

Motivation
https://github.com/DataDog/integrations-core/pull/3174
Additional Notes
The "USE %DATABASE%" commands were necessary to populate the 'performance_schema' database.
Review checklist (to be filled by reviewers)

[x] PR title must be written as a CHANGELOG entry (see why)
[x] Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
[x] PR must have changelog/ and integration/ labels attached
[x] Feature or bugfix must have tests
[x] Git history must be clean
[x] If PR adds a configuration option, it must be added to the configuration file.

I'll check that all metrics are correctly tested and none have been missed. Regarding custom queries they are already tested

assert_all_metrics_covered is already used in the test, asserting that all metrics emitted have been tested.


refactor(linter): Use parsed patterns in unicorn/prefer-string-starts-ends-with

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#5949  👈
#5943
main

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

Join @camchenry and the rest of your teammates on  Graphite


Unexpected keyword argument 'progress_bar'

Got an error that says "explain_instance() got an unexpected keyword argument 'progress_bar'".
Lime's version=<IP_ADDRESS>

I am not sure what kind of module you are using meaning 'tabular', 'text', 'image' etc. However, the error means that there is no parameter named progress_bar in that method. Please check the official documentation here for more details on your specific explain_instance() method.

I have the same issue with an image explainer where it states in the documentation that it should be a parameter within the lime_image module.
using Lime version==<IP_ADDRESS>


Completions for "existing" keyword are missing

This is a relatively small change right? @anthony-c-martin do you want to pick it up?

It should be fairly small. Will require a new CompletionContextKind value since we've never offered completions in this place before.


README.md: Drop Travis CI link

Dead link.

Can you swap it for a GitHub Actions CI status link instead of removing it entirely please?

Opened pull request #157


Reproduction issue

Hi, Thank you for the code.
I ran the code using the following code: sh scripts/train_ssrl_stage2.sh on the ucf dataset and the best performance obtained is 82%. Is there any specific setting that should be set to reproduce the results in the paper?

I ran the code using the following code: sh scripts/train_ssrl_stage2.sh on the shanghaitech dataset and the best performance obtained is 94%.

Hello, did you train 150,000 epochs according to the code provided by the author? I achieved 95.44% of the best results on the SH dataset after training 1000 epochs, I guess the effect mentioned in the paper may be achieved after training 150,000 epochs.


Initialize git_repo with callback when async.

I've added it with a method with the git_repo created as the parameter.

I think that's it, ready to merge? :D

It's weird it's picking up the other commits. Maybe you can pull master and rebase on that?

Just a few comments I'd like your input on before we merge


NodeTypingsInstaller.handleMessage should treat PackageInstalledResponse roughly the same as SetTypings

In particular, PackageInstalledResponse should probably be a ProjectResponse and handleMessage should call
                    this.projectService.updateTypingsForProject(response);

                    if (this.socket) {
                        this.sendEvent(0, "setTypings", response);
                    }

I'll leave it to the implementer to decide whether the event name should be different - VS doesn't need to distinguish.

marking this as 2.6.3.


Add chain info when you click deposit/withdraw

Example:
If you bought UST on junoswap and never added terra to your keplr you can't withdraw it because you dont have the chain in your keplr.
Would be nice if we can automatically add the chain info when you click deposit/withdraw (approve a keplr popup)

@maxjuno yeah that's a weird one. This is probably happening because this chain is experimental and it hasn't been added on Keplr initially. We could provide a way to suggest a chain within the app by supplying a config file for people to fill out in this case and plugging that data in whenever the enable chain method throws the app off.
@ben2x4 what are your thoughts?


An enhancement from #1598 CompositeIterator decouple from CompositeIterable

An enhancement from #1598, I think it would be less confused to separate Iterable and Iterator.  Any hints?

Thanks for the contribution!


Update README and docs colors

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 97.02%. Comparing base (31c2b1f) to head (e967ebd).
Report is 7 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #60      +/-   ##
==========================================
+ Coverage   97.01%   97.02%   +0.01%
==========================================
  Files          20       20
  Lines        1642     1648       +6
==========================================
+ Hits         1593     1599       +6
  Misses         49       49

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


Update documentation related to service endpoint types

Purpose

Update service endpoint types and the type definition. Added support for new service components UDP and TCP, these types needs to be added to the endpoints.yaml file respectively.

Approach

Modified choreo/docs/develop-components/develop-services/develop-a-service/#what-is-a-service-component

Modified choreo/docs/develop-components/develop-services/develop-a-service/#learn-the-endpointsyaml-file

Release note

Introducing support for deploying new service types, specifically UDP and TCP service components, as Docker containers. Modify the endpoints.yaml configuration file to accommodate the selection of either UDP or TCP as the desired service type.

Related PRs
Resolves https://github.com/wso2-enterprise/choreo/issues/23418
Relates to the PR https://github.com/wso2-enterprise/choreodp-rudder/pull/969

 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.You have signed the CLA already but the status is still pending? Let us recheck it.


Parametrization of the argon example

Parametrization of the argon example is complete. It saves a set of data to a CSV file.

Please squash your commits when done.


Optional trailing comma matching in the 'proptest' macro

Functions with trailing commas inside a proptest macro will fail to match:
proptest! {
    #[test]
    fn test_foo(
        a in any::<u8>(),
        b in any::<u8>(),
        c in any::<u8>(),
        d in any::<u8>(),
        e in any::<u8>(),
        f in any::<u8>(), // <--
    ) {
        // ) {
        // ^ no rules expected this token in macro call
    }
}

I will see if I can address this in the next release, which will hopefully be in the near future .

I believe 0.9.0 should allow trailing commas everywhere now. If you find a case I missed, please reopen this issue.


Cleanup logs

Currently we throw a bunch of Exceptions in the server log, which have to be ignored. This is extremely distracting during application development and bears the risk of overlooking an important Exception.

@aalmiray Can I close this issue?

Why? What has changed that makes you think this issue should be closed?

The exceptions on server start are removed. Are there any other exceptions in the server log?

I created this issue originally and yes, it is fixed.


Component "prometheus.operator.servicemonitor" doesn't generate default metrics

What's wrong?
When using "prometheus.scrape", Alloy generates the standard Prometheus metrics, the most notable one being the "up{}" metric. However when using ServiceMonitors, those do not exist. Is this an actual design decision or just a bug?
Steps to reproduce
prometheus.operator.servicemonitors "services" {
  forward_to = [prometheus.remote_write.mimir.receiver]
}

prometheus.remote_write "mimir" {
  endpoint {
    url = "http://mimir-nginx:80/api/v1/push"
  }
}

This is the alloy config I use. The metrics being scraped by servicemonitors are there, just the expected metrics that are described here are missing.
System information
No response
Software version
No response
Configuration
No response
Logs
No response

Actually, all is fine, it was just a relabeling issue. Sorry

@lieberlois Hi, I noticed that you also used Alloy to discover ServiceMonitors and write metrics to remote Mimir. However, I keep encountering errors when using Alloy. Did you experience similar issues? If possible, could you share how you resolved them? Thank you so much!
my configuration is as follows:
logging {
    level  = "info"
    format = "logfmt"
}
discovery.kubernetes "pods" {
    role = "pod"
}
discovery.kubernetes "nodes" {
    role = "node"
}
discovery.kubernetes "services" {
    role = "service"
}
discovery.kubernetes "endpoints" {
    role = "endpoints"
}
discovery.kubernetes "endpointslices" {
    role = "endpointslice"
}
discovery.kubernetes "ingresses" {
    role = "ingress"
}
prometheus.remote_write "default" {
  endpoint {
    url = "http://mimir-nginx.monitoring.svc.cluster.local/api/v1/push"
  }
}
prometheus.operator.servicemonitors "services" {
    forward_to = [prometheus.remote_write.default.receiver]
}

alloy error:
ts=2024-11-25T08:47:01.601665667Z level=error msg="non-recoverable error" component_path=/ component_id=prometheus.remote_write.default subcomponent=rw remote_name=f403f5 url=http://mimir-nginx.monitoring.svc.cluster.local/api/v1/push count=298 exemplarCount=0 err="server returned HTTP status 400 Bad Request: send data to ingesters: failed pushing to ingester mimir-ingester-zone-a-0: user=anonymous: the sample has been rejected because another sample with a more recent timestamp has already been ingested and out-of-order samples are not allowed (err-mimir-sample-out-of-order). The affected sample has timestamp 2024-11-25T08:46:57.235Z and is from series certwatcher_read_certificate_errors_total{container=\"gpu-operator\", endpoint=\"gpu-operator-metrics\", instance=\":8080\", job=\"gpu-operator\", namespace=\"gpu-operator\", pod=\"gpu-operator-5b4d76c556-794bp\", service=\"gpu-operator\"} (sampled 1/10)"

I have verified that the time on all nodes is synchronized and that the collected metrics do not include timestamps.

@vegetablest I would assume this is because the alloy collector is behind in ingestion, thus timestamps are too old. I have this config to "tackle" this:
  mimir:
    structuredConfig:
      limits:
        out_of_order_time_window: 30m  # adjust this as required

Thank you for sharing the configuration! I tried using it, but when the mimir-ingesters start, I encounter the following error:
opening existing TSDBs: unable to open TSDB for user anonymous: failed to open TSDB: /data/tsdb/anonymous: repair corrupted WBL: cannot handle error: open WBL segment: -1: open /data/tsdb/anonymous/wbl/-0000001: no such file or directory

I noticed this is similar to [issue #3635](https://github.com/grafana/mimir/issues/3635), but I haven’t been able to resolve it or start the system successfully. Do you think clearing all data and restarting could fix this?
Additionally, I didn’t notice any other errors in alloy, so I’m not sure if the issue is related to the alloy collector being behind in ingestion. However, since Alloy is deployed as a DaemonSet, could it be possible that multiple alloy collectors are causing duplicate collection?
I’d appreciate any insights you might have. Thank you!


Proposal for v2

This initial RFC is being replaced with individual issues.
The work on v2 has officially begun! Check out the v2 release PR!
Checklist

[ ] API & code changes

[ ] exported Vavilon instance (#24)
[ ] removed for class="vavilon" (#25)
[ ] string interpolation (#26)
[ ] dropped ES3 support (#27)
[ ] new dictionary format

[ ] Documentation

[ ] API docs
[ ] Docs translation
[ ] README cleanup

[ ] Performance

[ ] Keep it under 1KiB
[ ] Speed of operations

[ ] New packages

[ ] @vavilon/renderer
[ ] @vavilon/cli
[ ] Plugins

This issue will introduce my vision and thoughts on how vavilon.js should be rebuilt, how it could be enhanced and what other packages should there be in the vavilon family. Any comments, thoughts, and ideas are welcome here.
API & code changes
The problem with vavilon.js' API is the lack of such. v2 is about to change that.
Exported Vavilon instance
See #24.
Removed for class="vavilon"
See #25.
String interpolation
See #26.
Dropped ES3 support
See #27.
New dictionary format
I want to rethink how dictionaries are stored and loaded. The current way of loading dictionaries per XHR is not that bad, but I kinda feel like it could be better, like, being more native to browsers. Maybe the object structure will have to change, maybe it should be a different format. I also have not yet tested that the dictionaries are loading asynchronously and not stop the page loading.
Documentation
API Docs
Since vavilon.js is getting an API upgrade, there should be a more detailed API description.
Docs translation
Since vavilon.js is all about i18n, I better translate the docs to other languages, at least to languages I know.
README cleanup
The logo in the readme doesn't work for a while now, and the badges are too excessive. I believe that README has to be compact and clear.
Browser support
I believe we'll need to define the browser stack we want vavilon.js to work on and test the hell out of it. Users have to be sure that it's not just "ES5", but "IE9".
Performance
Keep the size under 1 KiB
The size is very important since vavilon.js has to be loaded as soon as the page has started to load. The new version will probably not be able to keep the size at the same level, but 1 KiB (1024 bytes) is the largest I want to go for.
Speed of operations
vavilon.js is working with DOM, large objects and cookies. We need to check whether all of the operations being executed are the fastest way to do stuff. We might have to sit through a lot of benchmarking for this.
New packages
These are independent of the v2 of vavilon.js and will probably be released later
@vavilon/renderer
vavilon.js is not the best bet for SEO, as the search engines will only see the website in its original language. Websites are also prone to flashing the original language. Both of these features can be combatted without the need for SSR.
Serverless platforms like Zeit Now or Netlify let you use serverless functions, that render the HTTP response based on parameters, thus creating a simple backend.
vavilon-renderer is a package that would turn the string, containing HTML with vavilon data-tags into translated HTML based on the user cookies and the dictionary files.
@vavilon/cli
vavilon-cli is a CLI with a set of tools that can help speed up the work process:

vavilon extract — takes the HTML with vavilon data-tags and produces the default dictionary for that website
vavilon convert — converts dictionaries between vavilon-formats (old and new) and other formats, like .po (gettext), .strings (iOS/macOS) or .xml (Android)
vavilon render — utilizes the vavilon-renderer package to render multiple HTML-files

Plugins
There are also plans to include renderer plugins for popular build engines, such as Webpack, Parcel, Gulp, Grunt, Rollup and maybe others.

I have done some reconsidering: I am going to shift some of the new features to a 1.x version, since doing a major release now is more harm than good. It will be easier to implement such needed features like #25 and #26 now and then add breaking changes in v2.
I will close this issue as well as v2 PR and focus on individual issues instead of a big package. Stay tuned for more updates in other issues.


Slack and Kibana_link

We predominantly use slack as our alert notifications. I wanted to know if it is possible to include the kibana4 dashboard link in the slack alerts
My check with including it in alert_text_args (as shown below) doesnt seem to work. Although if I use alert_text_type as default, I can see the kibana_link in the fields of the slack notification
# Kibana Link
use_kibana4_dashboard: "https://kibana.internal/app/kibana#/dashboard/applog"
kibana4_start_timedelta:
  minutes: 10
kibana4_end_timedelta:
  minutes: 10

# Alert Config
alert:
- "slack"

alert_text_type: exclude_fields
alert_text_args:
- kibana_link

You have to set alert_text.
alert_text: {0} is the kibana link

Try <{0}|Link to Kibana> from https://twitter.com/slackapi/status/579771083181699073

Nope : (
It does exactly as is stated in the latest reply to the comment by Malone Hedges

@Qmando
It shows up like this

@Qmando
For now (till this issue is found) got a duck-tape solution, as we want the nice formatted message sent <At least xxx event occurred ...> along with the links. Combined the slack and command alerts. Command sends the kibana link using Slacktee.
# Alert Config
alert:
- "slack"
- "command"

alert_text_type: exclude_fields

command: ["/opt/elastalert/bin/send_via_slacktee", "<%(kibana_link)s| App Errors Kibana Link>"]

Output:

Question: Is Number of events detected, StartTime and EndTime available as variable like kibana_link? If yes, we can then only use Command Alert only.

@Qmando could you please reopen this issue as the formatting doesn't work as expected?

Thanks @Qmando. Is there an easy fix for this? Would be super awesome if this would work. :shipit:

Including a clickable URL to a kibana dashboard is working for me in v0.0.95.
Thought I'd share details as it took a bit of poking around source code to get the subject, body and attachment configured and formatted nicely.  When I tried following this thread and elastalert documentation I was unable to get the kibana URL to be transformed into a clickable link... it's not intuitive. Basically, I believe the attachment body aka alert_text is not parsed by the slack servers but interpreted literally.
`
name: ssh login details
bold subject with clickable link to kibana
alert_subject: "SSH login by {0} to {1} | <{2}|Dashboard>"
alert_subject_args:

username
host
kibana_link

alert name and attachment body
alert_text_type: alert_text_only
alert_text: 'role: {0} host: {1}'
alert_text_args:

role
host

use_kibana4_dashboard: "http://kibana.mydomain.com/app/kibana#/dashboard/ssh-events"
slack_emoji_override: ':lock:'
slack_msg_color: 'good'
slack_channel_override: '#infosec'
alert:

"slack"
`

I was facing the same issue. I found that for slack integration the hyperlinks work only in the subject. So this works
`# bold subject with clickable link to kibana
alert_subject: "SSH login by {0} to {1} | <{2}|Dashboard>"
alert_subject_args:

username
host
kibana_link`

But this will not result in URLs in plain text
`alert_text: "SSH login by {0} to {1} | <{2}|Dashboard>"
alert_text_args:

username
host
kibana_link
`

In case of alert_text, the kibana link will appear as text.

@abhsrivastava: To enable clickable links in slack alerts - add line with slack_parse_override: full (tested in support_es5 branch)

Is it possible to format text in the alert_text like this or ~that~?
Tried with slack_parse_override but didn't work (not in the support_es5 branch)

report attachment would be great feature. is it possible to add? like integrating the phantomjs based web to pdf and attaching the same to the email alert generated.

This issue seems to still be present and comes from the escaping of <,>and &. I've seen the documentation and it seems weird that those character needs to be escaped as links are not working when those are escaped but are otherwise. The needs for them to be escaped seems to come from https://api.slack.com/methods/chat.postMessage#formatting which does not support application/json encoding. It seems that it only applies to url-encoded request.
Also the parse field in the payload is not well documented in term of incoming webhooks as it throws and error in the message builder but does change some stuff when used. See the following screenshot of this message sent with parse set to none and full.

Test of the `parse` field with no escaped character (click to show screenshot)

Following test for escaped vs unescaped character and `parse` field for escaped char (click to show screenshot)

I would be nice to b able to use the whole subset of markdown available to us when doing custom text for Slack (especially when we can get a Kibana link to the alert in a clickable and pretty form) and the fix would be as simple as removing the following tree lines:
diff --git a/elastalert/alerts.py b/elastalert/alerts.py
index 7d835ac..ade298e 100644
--- a/elastalert/alerts.py
+++ b/elastalert/alerts.py
@@ -988,9 +988,6 @@ class SlackAlerter(Alerter):
     def format_body(self, body):
         # https://api.slack.com/docs/formatting
         body = body.encode('UTF-8')
-        body = body.replace('&', '&')
-        body = body.replace('<', '<')
-        body = body.replace('>', '>')
         return body

     def alert(self, matches):


Add types to KMT tasks

What does this PR do?
Adds type information for the Python code in the tasks directory, only for KMT related tasks.
Motivation
Improve reliability of the code by adding a typing layer that can catch problems without needing to run the code, which is useful in this case as tests of the KMT tasks would be complex and computationally expensive.
Additional Notes
Enforcement of these types, either via pre-commit or CI checks, will come in a separate PR after discussion with the agent platform team.
Some parts of the code were moved to avoid import loops.
Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Third Party components not working

const Comp = () => (
TEST
)
export default styled(Comp)`
  background-color: green;
`

This does not work. The Comp get's exported properly, but neither a class nor the styles are applied.

https://github.com/styled-components/styled-components/blob/master/docs/existing-css.md#styling-normal-react-components


[New game]: Crossword Puzzle

🎮 Game Request
Crosswords are word puzzles having clues for words laid either across or vertically on the screen. The words intersect in places giving the user clues as to what the words could be.
Point down the features
Game points
-black and white interface like the classic newspaper crosswords
-3 levels of difficulty
-hint feature
-dynamic animation when the user wins
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @kaashikaagrawal !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

Hey @kaashikaagrawal ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇

/assign


use soft limits

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "soft-schedule" git@github.com:CodeNow/swarm.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

sorry, incorrect PR


RegisterAndStart changes

In RegisterAndStart, modified to return true if status equals 0xC000010E (STATUS_IMAGE_ALREADY_LOADED in ntstatus.h), should be a self-explanatory fix.

Well since kdmapper checks if the intel driver is already loaded checking for his device at https://github.com/TheCruZ/kdmapper/blob/a846be5708ae2a1716e8dadab8691b1e2ca20ba1/kdmapper/intel_driver.cpp#L22 and also to prevent BSODS, 0xC000010E will never happen, or at least if it happens isn't the same driver version and probably not vulnerable or kdmapper will not be able to open the handle since in any case L"\\.\Nal" not exists

Yeah true, I put the change in my own loader as I use RegisterAndStart to load a different signed driver, but needed to detect if it was already loaded or not. Just an extra check I guess.


Snippet for Db/template doesn't work with v.0.4

@vnadot

With old version of vscode, works fine with 1.3.1... retrocompatibility not really necessary so i close

1.5 or newer version.

"OR" is inclusive, so it's a wrong info ! You fakenewser !


Cannot find module 'prop-types'

I just installed version 0.24.0 and got this error: Cannot find module 'prop-types'.
Seems like it is missing a dependency.

prop-types is a peer dependency of this module. You need to install it separately into your project.
https://github.com/istarkov/google-map-react/blob/master/package.json#L45

@figalex You can do npm install "prop-types" or yarn add "prop-types" and it'll work!

Yeah I figured that out later, I just thought that maybe is a mistake that prop-types was listed as peer dependency.


Put dsfeed.db after get before start to get feed to avoid multiple posts

expect to start randomly to sync

To sleep x seconds before dsfeed.sh on crontab is better


[Agenda Item] Working group elections

Overview:

Updates on election process and timelines.

Related topic: The type of agenda item you want to propose.

[ ] Governance: New project
[x] Governance: Other
[x] Process
[ ] External Engagement
[ ] Technology
[ ] Other

Related working groups:

[x] Community
[x] Open Source
[x] Policy
[x] Standards
[x] Oversight Committee

More information:

Updates on election process and timelines.

Motion to have elections in the fall - end of September, 2023. Transition periods until January 1st. New OC/WG Leads begin January 1. Also 2 year chair positions were proposed. No objections - OC approved.

See #50


Release extendr 0.3.0

It's time to think about releasing extendr 0.3.0. There have been significant API changes since 0.2.0 and we should get them out. This issue will be to track any remaining items that need to be addressed before the release.

[ ] Update changelog (#208)
[ ] Improved API for calling R functions in packages (#216, see also #206)
[ ] Add README files to extendr crates (#217)
[x] Fix or disable the myvar test (#211)

Please tag issues or add comments in the discussion for any additional items we should address before the next release.

I'll set to when I next get some free time.

It seems like all the above issues have been closed. Also, following discussion on the Discord, none of the main devs can identify any issues that urgently need attention before 0.3.0 release, so we're hoping to do it very soon based on the current state of the master branch.

If we have bandwidth, I think we should polish the changelog. https://github.com/extendr/extendr/blob/master/CHANGELOG.md
Also, iirc, we have to publish libR-sys first, if the dev extendr depends on the dev libR-sys.

Agreed. Can we do a more structured changelog with the same rough headings as https://keepachangelog.com/en/1.0.0/?

I marked all bullet points as completed in the original message and I close this issue because the 0.3.0 release has been published.


Will this block google from crawling my site?

Hi, are there already default whitelisted ip addresses for known bots like google bot?

@tomeralmog  "Your website" just got me good


Include custom ScaleKernel

This PR introduces custom ScaleKernels. It is currently based on #219 and will be properly rebased and moved out of draft state once that PR is merged.

@Scienfitz @AdrianSosic just a quick ping that the ScaleKernel PR is ready for review and already includes the new location for the lengthscale_prior field as we discussed :)


SCB-559 Instances count that show in Service Center frontend is incorrect

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Format the pull request title like [SCB-XXX] Fixes bug in ApproximateQuantiles, where you replace SCB-XXX with the appropriate JIRA issue.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Run go build go test go fmt go vet to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Codecov Report

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

@@          Coverage Diff           @@
##           master    #342   +/-   ##
======================================
  Coverage    69.5%   69.5%
======================================
  Files          17      17
  Lines        3437    3437
======================================
  Hits         2389    2389
  Misses        883     883
  Partials      165     165

Impacted Files
Coverage Δ

server/service/instances.go
68.32% <0%> (-0.18%)
:arrow_down:

server/service/tag.go
76.02% <0%> (+0.58%)
: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 ef3193e...32f89e9. Read the comment docs.

Coverage increased (+0.05%) to 73.105% when pulling 32f89e973d641ebbadbf829e0f47ff3ad0dfd7ad on little-cui:559 into ef3193e587a6e19a6abeccab522ef252517d8e7b on apache:master.


Design Real Estate Landing Page

Description
Follow the contribution guidelines and code of conduct
Design Real estate Landing Page.
Screenshots
No response
Additional information
No response

Please assign me this issue.

Hello @GovindSingh9447 I would like to work on this landing page. Could you please assign this issue to me? I am SWoC contributor
(Its a request, because the another issue is of portfolio website and I have already contributed one (PR 13). I want to work on this landing page)

Please assign me this issue.

@Gaurav4code , I can't assign 2 issues to same person at a same time. First complete the Portfolio website then I will assign you other one.

Hello @GovindSingh9447 I would like to work on this landing page. Could you please assign this issue to me? I am SWoC contributor (Its a request, because the another issue is of portfolio website and I have already contributed one (PR 13). I want to work on this landing page)

Of course @suyogkokaje, you can work on it.

Thank you so much.


ModelCheckpoint supports the frequency to store parameters

Something similar (with a better API) has been merged in the recent past.

https://github.com/fchollet/keras/pull/4687/commits/caa4dbf52e7f56f6556447a2f30cefa5d1cb44f3
Sometimes I want to differentiate the epochs to update best/latest parameters, and currently the epoch of updating best/latest are the same epoch.  I differentiate these two epochs in my commit.


feat!: limit controller secret access only to project namespaces

Fixes: #2448
Supersedes #2522
Don't be scurred... most of this is tests.
This is intended to mitigate sharded controllers (distributed to clusters other than the control plane's) having cluster-wide read on Secrets in the control plane's cluster. This will dynamically expand and contract the permissions of the Kargo controller(s) in a similar fashion to what's been done for the API server since #1486:

On Project create, add a RoleBinding per Kargo controller SA to grant r/o Secret access within the Project's namespace.

Nothing special to do on Project delete. Project delete takes the namespace with it, including any such RoleBindings.

On create/update of SA in Kargo's own namespace, ensure appropriate RoleBinding exists for every Project if the SA is labeled as a controller.

On delete of SA in Kargo's own namespace, ensure removal of appropriate RoleBinding for every Project.

On update of SA in Kargo's own namespace, ensure removal of appropriate RoleBinding for every Project if the SA is no-longer labeled as a controller.

Finalizers are added/removed as appropriate used to ensure necessary cleanup always occurs and that cleanup doesn't occur unnecessarily.
These changes are verified to work e2e.
Breaking change: If you have designated some namespaces as "global credential stores" using controller.globalCredentials.namespaces at install-time, you must now manually ensure controller(s) have access to Secrets in those namespaces. The chart cannot do this because the namespaces may not exist at the time Kargo is installed. This also cannot be done dynamically with the management controller because if values are removed from the list and the management controller is restarted, it will not know what namespaces have been removed from the list and require clean up.
@fykaa laid most of the groundwork for this. Thank you!
@gdsoumya requesting your 👀 on this, if you don't mind.

This is on my list to review tomorrow before you start your day.


chat: fix end-of-reading

This resets the variables after a payload has been readed. Also only the LED is faded at the end of the UART RX.

Does not apply anymore, closing as this functionality is on btcven/turpial-firmware now.


Include Allow header in OPTIONS responses

Server SHOULD include such header if this is applicable (see: RFC 2616 Section 9.2)

Check if this is not already implemented in falcon (see: falconry/falcon#555)


ARROW-374: More precise handling of bytes vs unicode in Python API

Python built-in types that are not all unicode become arrow::BinaryArray instead of arrow::StringArray, since we cannot be sure that the PyBytes objects are UTF-8-encoded strings.

ASF git mirror is a bit sluggish at the moment

+1. PARQUET-812 depends on this patch (I made a fix in arrow/type.h). @xhochy It would be great if you would review after to make sure you agree with the bytes vs. unicode semantics

I take back my +1, since pandas converts everything to StringType. I'll wait for code review tomorrow


Test Kubernetes configurations as e2e test

Right now we have the configs living in this repo but they are not tested as the code changes. I think we should have a test where we bring up a simple k8s using K3s on the same Azure CVM as our current e2e tests, deploy our k8s config on that k8s.
So essentially this part of the tests should deploy KBS on k8s.
https://github.com/confidential-containers/kbs/blob/a941e5257b75ca9c7e4aadcd9a69a1538b678f7a/test/Makefile#L56-L61

Also related: https://github.com/confidential-containers/kbs/issues/137


"How to run an AB test" not linked in manual

Problem with 'Manual' (https://docs.publishing.service.gov.uk/manual.html)
The wiki for content designers at https://gov-uk.atlassian.net/wiki/spaces/CC/pages/87097383/A+B+Testing links to https://docs.publishing.service.gov.uk/guides.html#a-b-testing which no longer exists as an anchor.
I did a search and found the page it should link to: https://docs.publishing.service.gov.uk/manual/ab-testing.html
It doesn't look like the above page is linked from the Developer Docs navigation - if it's still relevant it should be. And ideally it would have the same anchor on the index page so that the link doesn't break.
Hope that helps
Jonathan

Ah, thanks! That's a really old link. Unfortunately we can't redirect /guides.html#a-b-testing because/guides.html already redirects to /manuals.html (and doesn't remember the anchor).
The page is linked under "Tools" on the index page: https://docs.publishing.service.gov.uk/manual.html#tools
Anything else we can do to make it better findable?