fix: eliminate one usage of Task.getProject(). Inject ProjectLayout.

Working towards resolution of https://github.com/flyway/flyway/issues/3550.
I work for the Cloud Platform team at Cashapp (Block, formerly Square). We are working towards making our builds fully compatible with the Gradle configuration cache. I previously ran such an initiative on the Square Android monorepo, which led to savings of about 5400 developer-hours per year (over $1m annually). Several of our repos at Cash use Flyway, making this plugin one of the primary hurdles to gaining all the potential advantages from using the configuration cache.
This small PR is a test to see if this repo accepts external contributions. If it works out, my team and I would like to continue contributing PRs until #3550 is resolved. The PR is based on this documentation from Gradle.

just FYI, the configuration cache will be the default in Gradle 9, to be released later this year.
https://blog.gradle.org/road-to-gradle-9

Would like to see this merged as well.


mlzc/debug-v2

#1  👈
main

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

Join @michaellzc and the rest of your teammates on  Graphite


Use Redgate Adventure Works

Issue Type: Bug
My Client IP does not have access to the server. Azure itself is not permitting the read.
This isn't a bug for Azure Data Studio - placing it here for other readers of the forum (below) connecting to the DB via ADS.
https://www.sqlservercentral.com/articles/connecting-to-adventureworks-on-azure
https://www.sqlservercentral.com/forums/topic/connecting-to-adventureworks-on-azure
Azure Data Studio version: azuredatastudio 1.24.0 (eb3c0f5d9df86b9490606aab7fffaa253b0aca4d, 2020-11-10T23:38:09.705Z)
OS version: Windows_NT x64 10.0.18363

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz (8 x 4008)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: enabled_onprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
62.07GB (51.12GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none

This isn't an appropriate place for this issue, as this isn't an ADS issue. You should post a note at the article you've linked to.

Yep. If you go to the link, the post links to this article.
On Thu, Dec 17, 2020, 14:07 Steve Jones<EMAIL_ADDRESS>wrote:

This isn't an appropriate place for this issue, as this isn't an ADS
issue. You should post a note at the article you've linked to.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/azuredatastudio/issues/13839#issuecomment-747638616,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKVIJAL4NU27JMUOCDBKHHLSVJJG3ANCNFSM4VADA5ZA
.

just like @way0utwest said, an ADS issue is not the best place for this as this is not actionable for us, and we have to close it.

@way0utwest @alanrenmsft ADS itself prompted me to supply the bug report via an automated form generated within ADS it was the first time I had been prompted to do so by this client, hence the disclaimer it isn't an ADS bug. (Except maybe that the logger shouldn't have prompted me for a simple firewall issue.)


Update imports after NCBITaxon refresh

Needs review:

[ ] Check out branch and ensure no dangling NCBITaxon classes at the top
[ ] Run Elk 0.5 to ensure that no unsats

@matentzn
There is no NCBITaxon at the top, and no unsatisfiable classes
BUT
when saving the ontology without making changes (AND checking that it is updated from master), the diff shows many changes mostly related to NCBITaxon, but also other ontology such as UBERON and GO.
(note: there is one single child that needs to be taken care of. I didn't do this because of the unexpected diff)

Yes forgot about that, please do a no change normalisation PR where you load safe with protege. The labels all change

@matentzn
After normalization, everything looks good.  I accepted the PR. Please note that I didn't merge because I wasn't 100% sure it was ok to merge (2% wondered if you needed to do anything else).

Did you do a separate normalization PR or a Pr within this one here?
I would:

Make a separate no change normalisation PR which has all the label changes
Merge the PR
Merge master into this PR here
wait qc to pass
merge and be happy

I can do the normalization PR, I did it here:
https://github.com/monarch-initiative/mondo/pull/6649


[QUESTION] Document Size Limit

Hi,
Is the 16MB document size limit is including sub document as well?
I mean, would it work if I have a document of 16MB who contains a sub document of 16MB?
Thanks

@domtheluck The limit refers to the entire root document, so it wouldn't work to split it into smaller sub-documents.

I still a bit confused about the Size Limit
The BSON Document Documentation states "LiteDB supports documents up to 16MB after BSON serialization." while the FileStore Documentation states "To keep its memory profile slim, LiteDB limits the size of a documents to 1MB. "
Is there just a 6 missing in the FileStorage Docs?

@Kornelis The correct value is 16MB for LiteDB v5.0.x. 1MB is the limit for v4 (apparently I forgot to update the FileStorage page).

Just a friendly reminder that the FileStorage page still shows a 1MB limit for document size. That size limit was on the brink of being the deciding factor for me in whether to use LiteDB on a project or not, until I happened across mentions of the newer 16MB limit over here on GitHub.


fix: foca attribute in config

Description
config doesn't seem to have foca as an attribute. Came across this while going through this code snippet.

This is basically a duplicate of #144


Option to provide a custom component as wrapper / pass className to wrapper?

Option to provide a custom component as wrapper / pass className to wrapper?
I apologise in advance if this is covered in the docs but I could not find it

Is there an ability to provide a custom component as the wrapper instead of a base element type like options={{ wrapper: 'div' }}?
... Or to provide a className for the existing wrapper element?

@WillNeve

Yes, you can provide a custom component as a wrapper.
 You can add all the attributes you want, such as className, id, etc.

Example:
import Markdown from 'markdown-to-jsx';

type CustomElementProps = {
    children: React.ReactNode;
};

const CustomElement = ({ children }: CustomElementProps) => {
    return <section className="section-class"> {children} </section>;
};

const answer = `# A first-level heading
## A second-level heading
### A third-level heading`;

function App() {
    return (
        <Markdown
            options={{
                wrapper: CustomElement,
            }}
        >
            {answer}
        </Markdown>
    );
}

export default App;

Output:


Master makefile

Fixes Issues https://github.com/thiemar/vectorcontrol/issues/5 and https://github.com/thiemar/vectorcontrol/issues/4

Thanks David!


Function not exposed

Describe the bug
Seems a function returning a table from another schema is not exposed.
To Reproduce
Steps to reproduce the behavior:
begin;

create schema if not exists a1; grant usage on schema a1 to public;
create table a1.foo(id int); grant select on table a1.foo to public;
create or replace function a1.the_foo() returns a1.foo stable return (select f from a1.foo f where f.id = 1);
grant execute on function a1.the_foo() to public;

create schema if not exists a2; grant usage on schema a2 to public;
create or replace function a2.get_the_foo() returns a1.foo stable as $$ select * from a1.the_foo() $$ language sql;
grant execute on function a2.get_the_foo() to public;

set local search_path to 'a1';
select graphql.resolve($${__type(name: "Query") {fields(includeDeprecated: false) {name args {name type {kind name ofType {kind name}}}}}}$$)->'data'->'__type'->'fields'->1;
-- {"args": [], "name": "the_foo"}

set local search_path to 'a2';
select graphql.resolve($${__type(name: "Query") {fields(includeDeprecated: false) {name args {name type {kind name ofType {kind name}}}}}}$$)->'data'->'__type'->'fields'->1;
-- null

rollback;

Expected behavior
I would expect fully-typed return values to be exposed based on permissions and regardless of search_path.
Versions:

PostgreSQL: 16.1
pg_graphql commit ref: ee8ef69

To narrow the problem.
I believe we should collect array of entities used in exposed functions (arg_types || type_oid).
Filter them by schema usage permission.
Expose them as types and may be connections (if some function returns the setof of the entity).
Do NOT expose collection/mutation for them, effectively obey search_path instruction.
That way we won't be in need to proxy each and every piece of hidden schemas to the exposed schema.

yes, you're exactly right with the solution
The solution would be to add a CTE under this to collect any tables or views referenced by functions on the search_path where the referenced table is not no the search_path and updating the join here to include them
It might not actually require an update to the rust source but TBD


App not detecting OneLoader

I had OneLoader 1.4 installed on my OMORI installation from PC. And the app didn't detect it and said "OneLoader not installed". So I downloaded the .zip file of the OneLoader 1.4.1 from mods.one, copied the www folder with its files (from the zip of course) and yet it STILL gave me the error.
What do I do? I guess I must wait for the bugfix... Or is there a workaround? I don't know...
Thank you.

Check your OneLoader installation: there should be a OneLoader's modloader directory in your chosen installation directory

Check your OneLoader installation: there should be a OneLoader's modloader directory in your chosen installation directory

I checked the OMORI installation, it has the folder "modloader" and it has the OneLoader files. I used my SD card to save space. On the video, the person was copying to the internal storage. Maybe I should try that. Thanks.

Check your OneLoader installation: there should be a OneLoader's modloader directory in your chosen installation directory

I checked the OMORI installation, it has the folder "modloader" and it has the OneLoader files. I used my SD card to save space. On the video, the person was copying to the internal storage. Maybe I should try that. Thanks.

And copying to the internal storage worked! Thank you!


Question on API syntax.

我想定义一个
type UsersResponse struct {
Response
Data *[]UserData json:"data,omitempty"
}
在api中这样使用会报错，如下图，

请问应该怎么做？

What's the error?

有什么错误？

使用goland，语法飘红，执行goctl api go -api命令报错 no viable alternative at input 'UsersResponse1 struct {\n\tResponse\n\tData *['

There has no plan to support pointer array, so the right api should be like this:
type UsersResponse1 {
	Response
	Data []*UserData `json:"data,omitempty"`
}

There has no plan to support pointer array, so the right api should be like this:
type UsersResponse1 {
	Response
	Data []*UserData `json:"data,omitempty"`
}

I currently use it this way too, but there is a problem.
When data is an empty array, the result will be returned without a data field.
ex:

If support pointer arrays , I can get:
{
    "code": 200,
    "msg": "成功",
    "data": []
}

When data is an empty array, I want the data field to exist.

This is a feature of golang json serialization and has nothing to do with the api. If you want to achieve what you expect, you can create an empty array instead of returning nil.


WFLY-6191 additional permissions for ExpressionSubstitutionInContaine…

…rTestCase
https://issues.jboss.org/browse/WFLY-6191

Seems OK


Simplify and improve the s-expression parser

S-expressions should be super simple to parse, they are a representation of the parse tree!

Do we really need to be aware of keywords in the s-expression parser?
It should output line number and character number along with the parse output so that we can report these if they can not be interpreted later

Yeah, I think the s-expression parser would be more general without keywords.  Right now, I can't use it to parse a .kicad_pcb file because I get this error:
Parse Error: "SExpr" (line 1, column 2):
unexpected "k"
expecting keyword

when I parse a file that starts like this:
(kicad_pcb (version 4) (host pcbnew 4.0.6)

I think we should be able to define it as AtomKey String here and then go from String -> PcbnewExpr here. Might have to ditch the AtomDbl as well because the KiCad format is super lax about putting in quotes for strings (I think that's why I put the keywords in, to be able to tell if it's a number or a string from context).

Fixed with #13


not working in the aeza hosting provider

dont working --rotate-every-request
the script says that the provider may not support it and there is nothing to do with that
very poorly done

If your provider doesn't allocate full subnet or doesn't allow rotation, ask their support, not me


Create .gitignore

I'd Like to create a .gitignore for this project, but i need some help.

Definitely Add:
.DS_Store
.tmp
npm-debug


Version in RESUME Frame

Adding version in SETUP frame as we realized while implementing v1.0 spec changes that we don't know what version of frames are coming in when we receive a SETUP frame.

this is what I asked for, so it LGTM!


Don't Merge! PR real time test for webhook case

Docs Build status updates of commit 0c40302:
:clock10: Pending: waiting for processors (21 builds ahead of you)
:warning: Docs Build is busy, currently there are 21 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 0c40302:
:clock10: Full build: the average full build time is 7 min(s) 39 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 0c40302:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/testing.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Added Program for Greatest Common Divisor in C++

Hacktoberfest! 🎊🎈
🎉 Have you read the Contributing Guidelines? 🤔
📝 Description
Problem with take two integer values and find the GCD of them. Program is written in C++.
Fixes #408 🔧
✅ Checklist

[x] I've read the contribution guidelines. 📚
[x] I've checked the issue list before deciding what to submit. 🔍
[x] I've edited the README.md and linked to my code. 📄

Hi @Kushal997-das,
Please review and accept my PR.

Hi there!
I am the Mentor of this project.
Although this repo is not part of Hacktoberfest 2024, we have some great alternatives for you. Welcome to SkillShow, a repository focused on skill enhancement!
Guidelines:

Please adhere to the existing guidelines.
No additional rules, thanks!
Check it out here: SkillShow.

Note: Start by creating an issue. Once it’s assigned to you, feel free to open a pull request (PR). Directly opening a PR will lead to an invalid label.
Looking forward to your contributions!


chore/webpack build for sqlite

chore/webpack build for sqlite
Sets up our webpack build process to be able to bundle sqlite3 and its native node module properly.
How it works:

we override the sqlite3-binding.js of the sqlite3 package. The original binding file doesn't work with webpack out of the box - the overridden version points to a specific path in the bundle where we manually put the native node module.
The native node module (the file called node_sqlite3.node) is platform specific (win, macos, linux; x64 vs arm), which means we need to now have platform specific versions of our extension. Thus we need to use the Platform Specific Extensions feature of vsce.

How the build works:

During binary install time, we add another step that uses node-pre-gyp to download the correct version of node_sqlite3.node. This is a bit of a hack - node-pre-gyp is intended to be used by the native module's repo to compile and distribute the native node package, but by adding a 'binary' prop in our package.json that mimics that of sqlite3 we can ensure that we're pulling down the right binary. If we ever need to use any additional native node modules however, we'll need to find a different mechanism as this only works if you have one dependency like this.
During webpack, the downloaded node_sqlite3.node file gets copied to the appropriate location via CopyPlugin and gets bundled.
In the Github Actions workflow, we need to publish multiple binaries for each platform and architecture flavor. We do this with a job matrix following VSCode's template here: https://github.com/microsoft/vscode-platform-specific-sample

I discussed with @jonathanyeung last week the idea to use an wasm compiled sqlite so that we don't have to deal with different plattform specific builds. Looks like the current options for this are:

https://github.com/rhashimoto/wa-sqlite/
https://github.com/sql-js/sql.js/
While looking for a way how this could be used as a different data source in prisma I only found https://github.com/prisma/prisma/issues/6576 and no page in the docs around custom database connectors. Looking into their code they seem to only support hardcoded datasources https://github.com/prisma/prisma/blob/7a13f555388e2f4f8e00aab695f38b83eb9f3952/packages/client/tests/functional/_utils/providers.ts

To conclude, this option does not look to be an option with prisma.

@namjul - thanks for the links and the research. I think let's try out the native modules first because I think there should be a performance advantage over the web assembly versions, but we'll need to adopt something similar for the web extension at some point anyway.
With respect to prisma - we're actually looking to remove the ORM layer so that won't be a concern for compatibility considerations going forward.


.NET CVE backfill: CVE-2017-8585

The data is based on input from the .NET team. //cc @leecow, @JonDouglas

CVE
Announcement date
CVE URL
Announcement URL
Impacted software
Vulnerable package id
Vulnerable version range
Fixed in version

CVE-2017-8585
10/17/2017
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8585
https://github.com/dotnet/announcements/issues/34
.NET Core 1.0 and   1.1
Microsoft.NETCore.App
>=1.0.0, <=1.0.5
1.0.7

CVE-2017-8585
10/17/2017
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8585
https://github.com/dotnet/announcements/issues/34
.NET Core 1.0 and   1.1
Microsoft.NETCore.App
>=1.1.0,   <=1.1.3
1.1.4

Got these updated at https://github.com/advisories/GHSA-8884-xcr4-r68p


fix: import paths and file names misalligned #91

Fixed issue #91
[x] The PR title follows the conventions in conventional-commit
[x] Ran a functional test before committing
[ ] This has fixed the issue for the user.
Updated file name from 'complexNode.js' to 'complexnode.js' for similar file names.
Updated file path from import requestNode from './compute/requestNode' to import requestNode from './compute/requestnode'

Sure thing 👍


Update default data mapping to match updates in wiki

Confirm that existing examples are still working as expected after updates.

Looks ok for now.


feat: typescript types definition

adds types definition (#65)

nice dude! thanks for helping!

:tada: This PR is included in version 1.21.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Switches from Webclient to HttpClient

Features:

HttpClient can be passed as an argument to the constructor, making
it possible to reuse an existing one
HttpClient instance is static, so all Ovh.Client share the same
Obsoletes all sync method, as they do not exist in HttpClient
Switches README to [...]Async methods

Fixes:

Character separator for Batch requests is no longer ignored
Timeout is no longer ignored (note: for now, and because
the HttpClient instance is static, the value given to the first
Ovh.Client instantiation will be used for all other instances)

Testing:

Exposes GenerateSignature
Exposes a way to mock DateTimeOffset
Adds a first round of tests for signature and calls

Fixes #28

All good for me since recent updates.
LGTM


Set up WASI CI and releases

Depends on #68

I'd love to see a way to automatically upload the module to WAPM, if possible.
Let me know if that might interest you and I can help on the process :)

@syrusakbary Thanks for dropping by! Prior to creating this issue, I considered wapm as another target for our releases, however, I was concerned a bit. I might be mistaken, but for me it seems like that wapm is mostly for executables, and not libraries.
If that's not the case, then we will happily setup a wapm release pipeline for sure!

@battila7 Thanks for the feedback! WAPM is also a great fit for libraries.
I will talk with the team to see what we can do to make it clearer on the website :)

Note: A lot of features for the library use case are coming soon... stay tuned!

@syrusakbary Great, thanks! I'm really looking forward to those features as a fan of WASM!
If we need any help regarding the wapm deployment, we will reach out to you!


Add floats support

Awesome project, thank you!

Thanks! :+1:

I think many ideas can be taken from PEGTL.

Yeah, that looks like a good place to take inspiration. This mecha currently does everything I need it to do so I probably wont look into this too much.

Is it possible to implement toStruct?

Hmm. Depends on what you intend it to do. combine will return a custom Tuple type (since Zig doesn't have a tuple type syntax yet) so you could probably implement a simple toStruct function that converts a tuple of N elements to a struct of N fields. I this what you where thinking or?

simple toStruct function that converts a tuple of N elements to a struct of N fields.

Nice idea, thank you!


Wrong line separators error when executing figma connect publish

Code Connect CLI version ->  1.0.4
Operating system  -> Mac OS Sonoma 14.1
Jetpack compose

Command used
 figma connect publish --token $CODE_CONNECT_TOKEN --verbose

I'm getting the following error message but i'm unsure how to proceed
No config file found in <REDACTED>, proceeding with default options
Using "compose" parser as a file matching build.gradle.kts was found in <REDACTED>. If this is incorrect, please check you are running Code Connect from your project root, or add a `parser` key to your config file. See https://github.com/figma/code-connect for more information.

Running parser: ./gradlew -p . parseCodeConnect -PfilePath=tmp/figma-code-connect-parser-input.json.tmp -q

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':ui-common:parseCodeConnect'.
> Wrong line separators: '...data.model\r\n\r\nimport...' at offset 46

Hey @mfprsiwady , thanks for the report -- Just want to check, are your files all authored on Mac OS? It looks like this might be a gap in our support right now as I believe \r\n line endings are used on Windows -- If you update the files in question to use \n line endings does this work?


JCenter being shut down

How is this library affected by the JCenter shutdown?  I'm assuming some dependencies are hosted there as now I cannot build
https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/

Could not find com.pierfrancescosoffritti.androidyoutubeplayer:core:10.0.5.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/com/pierfrancescosoffritti/androidyoutubeplayer/core/10.0.5/core-10.0.5.pom
- https://jcenter.bintray.com/com/pierfrancescosoffritti/androidyoutubeplayer/core/10.0.5/core-10.0.5.pom
- https://repo.maven.apache.org/maven2/com/pierfrancescosoffritti/androidyoutubeplayer/core/10.0.5/core-10.0.5.pom
- file:/root/.m2/repository/com/pierfrancescosoffritti/androidyoutubeplayer/core/10.0.5/core-10.0.5.pom
- file:/root/dist/project/android/app/libs/core-10.0.5.jar
- file:/root/dist/project/android/app/libs/core.jar
- file:/root/dist/project/android/capacitor-cordova-android-plugins/src/main/libs/core-10.0.5.jar
- file:/root/dist/project/android/capacitor-cordova-android-plugins/src/main/libs/core.jar
- https://www.jitpack.io/com/pierfrancescosoffritti/androidyoutubeplayer/core/10.0.5/core-10.0.5.pom

Hi, you need to update to the latest version: 12.1.0.


x/build/cmd/coordinator: implement trybot set cancellation

TryBot runs can't be canceled right now. It's mostly implemented, but ends here:
// cancelBuilds run in its own goroutine and cancels this trySet's
// currently-active builds because they're no longer wanted.
func (ts *trySet) cancelBuilds() {
        // TODO(bradfitz): implement
}

So they don't actually cancel.
/cc @cagedmantis @dmitshur @bcmills

Pardon the comment on a closed issue, but it wasn't clear in the CL, so I wanted to clarify: When does the cancellation happen ? Can it be triggered from the UI ? Or it is always automatic ? If so, does it happen when someone uploads a new patchset while an existing run is happening ?

I understand what's implemented now is that when a "Run-TryRun" vote is deleted, the try run is canceled. For example, see https://go-review.googlesource.com/c/sys/+/207858/3#message-dfc5c634bdb023398d74a476d3ba5f100beef00f.

Thanks. That looks like one needs the "Delete-tryrun" permission bits. It would be nice to have it automatically cancel a running build when a new patchset is mailed.

@agnivade, new patchsets automatically delete the Run-TryBot vote, because we don't have https://gerrit-review.googlesource.com/Documentation/config-labels.html#label_copyMaxScore set to true on that label.
So you don't need any new permissions to cancel a trybot run. You just need to upload a new patchset.


CAMEL-9399: Added support for RabbitMQ Publisher Acknowledgements

Added support for RabbitMQ Publisher Acknowledgements, did a little code cleanup, added two producer integration tests that test out publisher acknowledgements.

As you do both refactor the code and move stuff around etc. This would be better with 2 PRs - one about the refactor. And another PR about only the new code that is needed for this new functionality. Its hard to see what you do when its all together.

Hi Claus, I've split the PRs as per your request; here you will find the changes for the additional logic. Once you review and merge it I will create another one for the refactoring (which consisted of moving some conversion logic out of the endpoint class and into the existing RabbitMQMessageConverter utility and of extracting connection factory creation and message publishing logic into separate classes to reduce the complexity of the endpoint class).
Thanks!


Apply changes

Hi
When I make changes in react-planner/src/ *.js
How can I see it in Run. Or how can I generate new files in react-planner/demo/

did you run the command "yarn start" ( after "yarn install" ) before editing *.js files?

I have problems in the project compilation using Visual Studio Code
I downloaded the source code as Zip file and after that i run the command "yarn install" and "yarn start" but with no luck. Cannot load all (png, mtl)
log file

yarn start
yarn start v0.23.2
$ webpack-dev-server --inline --config demo/webpack.config.js --env.port 9000
Webpack: Development mode
Project is running at http://localhost:9000/
webpack output is served from /
Content not from webpack is served from \react-planner 132\demo\dist
Hash: 8c59ab91ce0249bf3897
Version: webpack 2.3.1
Time: 9613ms
Asset     Size  Chunks                    Chunk Names
f5e08d1f02c18a540e0b.app.js  1.94 MB       0  [emitted]  [big]  app
f982b6862808acd87b51.vendor.js   2.5 MB       1  [emitted]  [big]  vendor
00ab87069cff41117f00.manifest.js  5.84 kB       2  [emitted]         manifest
index.html  1.18 kB          [emitted]
chunk    {0} f5e08d1f02c18a540e0b.app.js (app) 1.53 MB {1} [initial] [rendered]
[66] ./src/components/style/button.jsx 4.42 kB {0} [built]
[67] ./src/index.js 2.07 kB {0} [built]
[91] ./src/components/style/cancel-button.jsx 979 bytes {0} [built]
[92] ./src/components/style/content-container.jsx 818 bytes {0} [built]
[93] ./src/components/style/content-title.jsx 816 bytes {0} [built]
[94] ./src/components/style/form-submit-button.jsx 1.03 kB {0} [built]
[95] ./src/components/toolbar/toolbar-button.jsx 3.93 kB {0} [built]
[284] ./demo/src/renderer.jsx 1.66 kB {0} [built]
[421] ./demo/src/catalog/items/cube/cube.jsx 1.33 kB {0} [built]
[434] ./demo/src/catalog/mycatalog.js 2.01 kB {0} [built]
[437] ./demo/src/ui/toolbar-screenshot-button.jsx 1.46 kB {0} [built]
[448] ./src/catalog/factories/area-factory.jsx 1.38 kB {0} [built]
[450] ./src/catalog/factories/wall-factory.jsx 2.97 kB {0} [built]
[588] ./~/react-container-dimensions/lib/index.js 5.18 kB {0} [built]
[775] multi (webpack)-dev-server/client?http://localhost:9000 ./src/renderer.jsx 40 bytes {0} [built]
+ 462 hidden modules
chunk    {1} f982b6862808acd87b51.vendor.js (vendor) 2.2 MB {2} [initial] [rendered]
[1] ./~/react/react.js 56 bytes {1} [built]
[5] ./~/three/build/three.module.js 990 kB {1} [built]
[12] ./~/immutable/dist/immutable.js 142 kB {1} [built]
[60] ./~/react-dom/index.js 59 bytes {1} [built]
[79] ./~/redux/es/index.js 1.08 kB {1} [built]
[109] ./~/react-redux/es/index.js 194 bytes {1} [built]
[110] (webpack)-dev-server/client?http://localhost:9000 5.44 kB {1} [built]
[602] ./~/react-dom/lib/ReactDOM.js 5.14 kB {1} [built]
[676] ./~/react-redux/es/components/Provider.js 2.66 kB {1} [built]
[677] ./~/react-redux/es/connect/connect.js 5.34 kB {1} [built]
[712] ./~/redux/es/applyMiddleware.js 1.8 kB {1} [built]
[713] ./~/redux/es/bindActionCreators.js 1.98 kB {1} [built]
[714] ./~/redux/es/combineReducers.js 5.58 kB {1} [built]
[774] (webpack)/hot/emitter.js 77 bytes {1} [built]
[776] multi (webpack)-dev-server/client?http://localhost:9000 immutable react react-dom react-redux redux three 100 bytes {1} [built]
+ 285 hidden modules
chunk    {2} 00ab87069cff41117f00.manifest.js (manifest) 0 bytes [entry] [rendered]

ERROR in ./demo/src/catalog/holes/door/door.png
Module parse failed: \react-planner 132\demo\src\catalog\holes\door\door.png Unexpected character '�' (1:0)
You may need an appropriate loader to handle this file type.
(Source code omitted for this binary file)
@ ./demo/src/catalog/holes/door/door.jsx 17:11-32
@ ./demo/src/catalog/mycatalog.js
@ ./demo/src/renderer.jsx
@ multi (webpack)-dev-server/client?http://localhost:9000 ./src/renderer.jsx
ERROR in ./demo/src/catalog/holes/door/door.mtl
Module parse failed: \react-planner 132\demo\src\catalog\holes\door\door.mtl Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
| # Blender MTL File: 'None'
| # Material Count: 1
|
@ ./demo/src/catalog/holes/door/door.jsx 128:14-35
@ ./demo/src/catalog/mycatalog.js
@ ./demo/src/renderer.jsx

Are you on Windows or Linux?

windows 10

we are working on it

OK

With release 1.2.7 it should be solved


_utilsCapitalizeString2.default is not a function

Here https://github.com/rofrischmann/inline-style-prefixer/blob/master/dist/prefixer.js#L153
I got an error
Uncaught TypeError: (0 , _utilsCapitalizeString2.default) is not a function
look for reference https://github.com/callemall/material-ui/issues/4361

Hmm, it seems like the dist build is broken... I have not tested this one for quite some time, Ill try to fix it today


More than 4 Multiple Result Sets Mapping

Hi,
I do see that there's a Pull Request that will add ability to do an unlimited amount of mapping with FetchMultiple? or
Even pass our own Query(Type[]) so we are not limited by 4 result sets.
Is there a plan for integrating that into the main library? It seems that pull request has been out for a while now.
Thank you for all the work on this.

We have been migrating to NPoco for almost all data access.  However this is one area that is preventing us from fully ripping out our internal way of handling multiple items.  At the moment we return 8 result sets.  I would love to be able to fully migrate everything over 100% in our code base.
Thanks.

Do we have this feature implemented? It's closed, but I cannot see in the latest version the possibility to fetch more than 4 result sets using FetchMultiple.

I faced with the same problem. Anybody has a solution for this?

I had a similar situation, but internally I have a helper class that handles this logic for me.  It was tedious, but I would up creating a bunch of methods similar to the following.  Hopefully that gets you a starting point.
        /// <summary>
        /// Fetches multiple result sets
        /// </summary>
        /// <typeparam name="T1">The type of the 1.</typeparam>
        /// <typeparam name="T2">The type of the 2.</typeparam>
        /// <typeparam name="T3">The type of the 3.</typeparam>
        /// <typeparam name="T4">The type of the 4.</typeparam>
        /// <typeparam name="T5">The type of the 5.</typeparam>
        /// <typeparam name="T6">The type of the 6.</typeparam>
        /// <typeparam name="T7">The type of the 7.</typeparam>
        /// <typeparam name="T8">The type of the 8.</typeparam>
        /// <param name="dsn">The DSN.</param>
        /// <param name="procedure">The procedure.</param>
        /// <param name="args">The arguments.</param>
        /// <returns></returns>
        public static Tuple<List<T1>, List<T2>, List<T3>, List<T4>, List<T5>, List<T6>, List<T7>, Tuple<List<T8>>> FetchMultiple<T1, T2, T3, T4, T5, T6, T7, T8>(string dsn, string procedure, params object[] args) {
            var list1 = new List<T1>();
            var list2 = new List<T2>();
            var list3 = new List<T3>();
            var list4 = new List<T4>();
            var list5 = new List<T5>();
            var list6 = new List<T6>();
            var list7 = new List<T7>();
            var list8 = new List<T8>();

            using (var db = new SqlDatabase(dsn)) {
                var sql = new StringBuilder();
                sql.Append(procedure.StartsWith("exec ", StringComparison.InvariantCultureIgnoreCase) ? procedure : $"exec {procedure} ");
                if (!procedure.Contains('@')) {
                    for (var i = 0; i < args.Length; i++) {
                        sql.Append($"@{i}");
                        if (i < args.Length - 1)
                            sql.Append(", ");
                    }
                }

                try {
                    var types = new List<Type> {
                    typeof(T1),
                    typeof(T2),
                    typeof(T3),
                    typeof(T4),
                    typeof(T5),
                    typeof(T6),
                    typeof(T7),
                    typeof(T8)
                };

                    var pdf = new PocoDataFactory(db.Mappers);
                    var conn = db.OpenSharedConnection();
                    using var cmd = db.CreateCommand(conn.Connection, CommandType.Text, sql.ToString(), args);
                    using var rdr = cmd.ExecuteReader();
                    var typeIndex = 1;
                    do {
                        var pd = pdf.ForType(types[typeIndex - 1]);
                        var factory = new MappingFactory(pd, rdr);

                        while (true) {
                            if (!rdr.Read())
                                break;

                            switch (typeIndex) {
                                case 1:
                                    list1.Add((T1)factory.Map(rdr, default(T1)));
                                    break;
                                case 2:
                                    list2.Add((T2)factory.Map(rdr, default(T2)));
                                    break;
                                case 3:
                                    list3.Add((T3)factory.Map(rdr, default(T3)));
                                    break;
                                case 4:
                                    list4.Add((T4)factory.Map(rdr, default(T4)));
                                    break;
                                case 5:
                                    list5.Add((T5)factory.Map(rdr, default(T5)));
                                    break;
                                case 6:
                                    list6.Add((T6)factory.Map(rdr, default(T6)));
                                    break;
                                case 7:
                                    list7.Add((T7)factory.Map(rdr, default(T7)));
                                    break;
                                case 8:
                                    list8.Add((T8)factory.Map(rdr, default(T8)));
                                    break;
                            }
                        }

                        // Increment the Type Index
                        typeIndex++;
                    } while (rdr.NextResult());
                }
                finally {
                    db.CloseSharedConnection();
                }
            }

            return Tuple.Create(list1, list2, list3, list4, list5, list6, list7, list8);
        }

Thank you so much! It's saved my day :)


3 layers approach separation - suggestion

It would be nice if this 3 layers' approach (webview and two frames) can be extracted from the project and make it common as a base for other similar projects.
I'm working on a mobile vision plugin and at the moment i'm using canvas to avoid native frames, but unluckily the device is not able to use camera in parallel process.

What are you talking about?

This plugin does not use camera.

ping

ping

i have updated the task.

What do you mean i have updated the task.? Please explain your comment.


Cached steem-js with post-quantum login

Expected behavior
Cache article enable login with post-quantum encryption algorithms could be named steem-js-pq
Actual behavior
Simply steem-js
How to reproduce
https://github.com/viper-network/viper-app/blob/master/src/js/utils/steem-api.js
Environment information
Let the team choose the best suited platform and provider (NPM) for the use as well.

Like this could be the start of a module to use with NPM in order to build wallet and everything else with more ease.


TrayIcon Clicker

I am trying to create function to click trayicons based on their tooltip name. It works for the ones showing, but I am unable to make it also work for those that have relegated to the popup. For UIA to see that area, it has to be clicked, but it seems to immediately disappear when I try to get ahold of it (see commented out line)
#Requires Autohotkey v2.0
Persistent
#SingleInstance

#Include "%A_ScriptDir%\Includes\UIA\UIA.ahk"

; Example usage
ClickTrayIcon("1Password") ; UPDATE HERE and make sure the reference tooltip is in main tray area (not popup)

; Function to click a tray icon by its tooltip text
ClickTrayIcon(iconTooltip) {
  trayIcons := []

  ; Get the system tray window
  hwndTaskbar := WinGetID("ahk_class Shell_TrayWnd")
  hwndTray := ControlGetHwnd("TrayNotifyWnd1", "ahk_id " hwndTaskbar)
  trayElement := UIA.ElementFromHandle(hwndTray)
  promotedNotifyArea := trayElement.FindElement([{ Name: "User Promoted Notification Area" }])
  chevron := TrayElement.FindElement([{ Name: "Notification Chevron" }]).Click()
  ;  overflowNotifyArea := trayElement.FindElement([{ Name: "Overflow Notification Area" }]) ; this causes popup to close, so can't be UIA'ed????
  promotedandoverflow := promotedNotifyArea
  ;promotedandoverflow.push(overflowNotifyArea*) ; like [...promotedNotifyArea, ...overflowNotifyArea]

  icons := promotedandoverflow.FindElements({ Type: "Button" })
  for icon in icons {
    iconName := icon.GetPropertyValue("Name")
    if (RegExMatch(icon.name, iconTooltip))
      icon.Click()
  }
}

It disappears because trayElement.FindElement([{ Name: "Overflow Notification Area" }]) throws an "Element not found" error and the error message window causes the popup to close. If you inspect the overflow area then you might notice that the UIA tree is smaller than the one for the taskbar. This is because the "popup" is actually a separate window, which you can verify by inspecting it with AHK Window Spy. With Window Spy we find out that its ahk_class is NotifyIconOverflowWindow, but WinExist("ahk_class NotifyIconOverflowWindow") won't return any window handle. This is because by default Windows has decided to filter some windows from the common methods that are used to find windows (see my PR about it), and AHK uses those methods for WinExist etc. We can work around it using FindWindowEx like this:
  ; Waits a maximum of 1 second for the popup to show
  timeout := A_TickCount+1000
  while !(hWnd := DllCall("FindWindowExW", "Ptr", 0, "Ptr", 0, "Str", "NotifyIconOverflowWindow", "Str", "", "UPtr")) && A_TickCount < timeout
    Sleep 1

  overflowNotifyArea := UIA.ElementFromHandle(hWnd)
  overflowNotifyArea.Highlight()

The next part of your code throws an error because promotedNotifyArea isn't an array and thus promotedandoverflow.push(overflowNotifyArea*) can't work.

Thank you for the great libraries, and the help you provided above. If anyone else finds this, Here is the working code.
ClickTrayIcon(iconTooltip, WhichButton := "", ClickCount := 1, DownOrUp := "", Relative := "", NoActivate := False) {
  hwndTaskbar := WinGetID("ahk_class Shell_TrayWnd")
  hwndTray := ControlGetHwnd("TrayNotifyWnd1", "ahk_id " hwndTaskbar)
  trayElement := UIA.ElementFromHandle(hwndTray)
  promotedNotifyArea := trayElement.FindElement([{ Name: "User Promoted Notification Area" }])
  icons := promotedNotifyArea.FindElements({ Type: "Button" })
  chevron := TrayElement.FindElement([{ Name: "Notification Chevron" }])
  chevron.Click() ; open overflow temporarily
  timeout := A_TickCount + 1000 ; See AHK2 Issue; https://github.com/AutoHotkey/AutoHotkey/pull/338
  while !(hWnd := DllCall("FindWindowExW", "Ptr", 0, "Ptr", 0, "Str", "NotifyIconOverflowWindow", "Str", "", "UPtr")) && A_TickCount < timeout
    Sleep 1
  overflowNotifyArea := UIA.ElementFromHandle(hWnd)
  icons2 := overflowNotifyArea.FindElements({ Type: "Button" })
  chevron.Click() ; close overflow
  icons.push(icons2*)
  for icon in icons {
    if (RegExMatch(icon.name, iconTooltip)) {
      icon.Click(WhichButton, ClickCount, DownOrUp, Relative, NoActivate)
      return
    }
  }
}


code tunnel asks to accept the server license terns

install VS Code insiders on a new machine
in a terminal run code-insiders tunnel service install
you are prompted to authorise
command terminates with

[2023-03-16 12:03:40] error Run this command again with --accept-server-license-terms to indicate your agreement.

Is that really necessary? The CLI is part of VS Code Desktop and my understanding is that by downloading/installing VS Code I agreed to license terms.
Also I just wanted to start the tunnel service, and the code server license terms seem to be unrelated (unless I know the internals of our remote architecture)
None of our other remote dev experiences asks for such agreement from the user.
If this is necessary, then we should ask for --accept-server-license-terms before asking to authorise
@bamurtaugh FYI

[aeschli@kyrian-fedora-vm ~]$ code-insiders tunnel service install --accept-server-license-terms
error: Found argument '--accept-server-license-terms' which wasn't expected, or isn't valid in this context

	If you tried to supply `--accept-server-license-terms` as a value rather than a flag, use `-- --accept-server-license-terms`

I will fix that arg not being present in service install. But asking is "by design" right now, pending any updates from Brigit or legal folks


ARTEMIS-2290 JMSBridgeImpl::stop is failing when called from FailureHandler

I'm writing a test for it :+1:

I'm writing a test for it

:)

@clebertsuconic @michaelandrepearce I need to understand a thing first: I see that the bridge stop could happen from any thread (FailureHandler or any caller thread): JMSBridgeImpl::stop is supposed to wait a completed racing stop happening from another thread?

@franz1981 i honestly dont know. We had some early issues with the jmsbridge so ended up where we needed to bridge different jms providers with a remote app made with spring integration.

I understand this and I would say that logic and scalability of JMSBridge could be improved for sure (it uses 3 threads for bridge!!)...
Not sure I would do it in this PR to avoid introducing too many changes...

I will add a test fo it in a separate PR: it seems not easy to be reproduced :+1:


defunct/zombie healthcheck processes

We're running AWS EC2 instances within a VPC, with many Docker containers running under [mainly] Docker 1.3.3. We're finding that the health-checks within the Consul container are not terminating properly, and leaving behind defunct/zombie processes. In some containers, there are only a few zombies, on other machines, it can run into the 1000s, probably because "interval" is 5 seconds; this is causing the process list to fill over few days, which in turn locks the Docker host machine. If the process list hasn't completely filled, killing the Consul container terminates all these zombies and frees the resources, but obviously this is not an optimal solution. We're running the latest Consul 0.4.1 in the progrium/consul image from Dockerhub. Consul has been amazing so far, and this is the only "glaring" issue we've run into. Anyone have any ideas? Here is an example healthcheck .json file, similar to one we're using:
{
  "id": "fooid",
  "name": "fooname",
  "tags": [
    "footag"
  ],
  "port": 12345
,
  "check": {
    "script": "/opt/consul/foo_health.sh <IP_ADDRESS> 12345",
    "interval": "5s",
    "note": ""
  }
}

The bash script we're using looks like:
#!/bin/bash

IP=$1
PORT=$2

OUT=`curl -s --data-binary '{"jsonrpc": "1.0", "id":"healthcheck", "method": "getwork", "params": [] }'  -H 'content-type: text/plain;' http://ziftr:abc123@$IP:$PORT/`

echo $OUT | grep '"error":null' > /dev/null

if [ $? -gt 0 ]; then
  echo $OUT | sed -n -e 's/.*\"error":{\([^}]\+\).*/\1/p' | sed -n -e 's/.*\"message":"\([^"]\+\).*/\1/p'

  echo && echo 'Raw message:' $OUT
  exit 2
else
  echo OK
  exit 0
fi

It seems that the above problem happens when the health-check's run-time exceeds the interval; it cannot deal properly with more than one health-check running at the same time, and the older one becomes a zombie.

Interesting. Might be a Consul issue.
On Wed, Jan 14, 2015 at 10:25 PM, Matthew Stoops<EMAIL_ADDRESS>wrote:

It seems that the above problem happens when the health-check's run-time
exceeds the interval; it cannot deal properly with more than one
health-check running at the same time, and the older one becomes a zombie.
—
Reply to this email directly or view it on GitHub
https://github.com/progrium/docker-consul/issues/45#issuecomment-70038323
.

--
Jeff Lindsay
http://progrium.com

@progrium, I think that might be because Docker does not respect --rm flag when docker run command finishes with an error:
$ docker run --rm --name test --net container:nonexistent_or_not_running --entrypoint /bin/bash progrium/consul -c "echo ok"
# FATA[0000] Error response from daemon: Cannot start container xxx: cannot join network of a non running container: yyy

$ docker ps -a
# CONTAINER ID  IMAGE                   COMMAND              CREATED       STATUS  PORTS  NAMES
# 2cab56aabded  progrium/consul:latest  "/bin/bash -c 'echo  1 minute ago                 test

So, when target container dies, all checks start producing zombie containers. Those containers are not running, but they hang in the list. I've got this issue and fixed it like this:
# check-http.sh
# ...

local check_id="chk-$(cat /proc/sys/kernel/random/uuid)"

docker run --name $check_id --net container:$container_id --entrypoint "/bin/bash" $IMAGE -c "$curl_cmd"
local code=$?
docker rm -f $check_id >/dev/null 2>&1 || true

exit $code

(and the same in check-cmd). Should I make a PR with this fix?

This is usually not an issue when using Registrator, because it deregisters a container as soon as it dies. But zombie containers can still be produced occasionally, when Consul manages to run its check after the target container dies, but before Registrator deregisters it.

To be clear, the zombie processes I'm experiencing are happening while the Consul Docker container is running. When I stop the Consul container, all the zombies are killed (if killing zombies were so easy ;)

Hmm, it seems that I misread you, sorry for that. You are definitely facing a different issue, probably a Consul one. Mine was about zombie containers produced by check-http and check-cmd scripts that come with docker-consul.

@mstoops, I couldn't reproduce your issue with Consul 0.4.1 and Docker 1.4.1 (though I believe that Docker version shouldn't matter here). I used this test script which returns after 20 seconds:
#!/usr/bin/env bash
sleep 20
exit 2

and this service definition:
{
  "ID": "test-service",
  "Name": "test-service",
  "Tags": [],
  "Port": 12345,
  "Check": {
    "Script": "/opt/consul/test-check",
    "Interval": "5s"
  }
}

Then I watched the output of docker exec -it consul top, and at each moment there were either no check processes in the list, or exactly one check process. So Consul seems to behave correctly, waiting 5 seconds between the finish of previous check and the start of a new one.

@skozin That is strange. I currently have 4 AWS Instances, each running about 9 separate docker containers with Consul keeping tabs on the health of the main process running in them; there is a separate Consul Docker container on each AWS Instance. I'm seeing 300-500 zombie processes inside the Consul Docker container when I do a ps aux (used docker exec to get into the container). This is after I set the service definition's interval to 10 seconds, and the curl call used in the heath check script is set to timeout after 5 seconds; the rest of the health check script should return almost immediately. From what you have implied, the interval's timing is based on the end of the script's last run. I'm wondering if the heath checks aren't releasing file descriptors when they finish for some reason.

I'm running into (probably) the same problem. I've been using consul with registrator and ambassadord locally. And I was wondering why my docker setup was getting unbearably slow. Turns our I have over 16k stopped docker containers from consul. Just retrieving the list with docker ps -a takes about a minute.
This is the State of one of those containers:
    "State": {
        "Dead": false,
        "Error": "cannot join network of a non running container: 102a3d3b0fbc",
        "ExitCode": 128,
        "FinishedAt": "0001-01-01T00:00:00Z",
        "OOMKilled": false,
        "Paused": false,
        "Pid": 0,
        "Restarting": false,
        "Running": false,
        "StartedAt": "0001-01-01T00:00:00Z"
    },

@mstoops ,
When you run ps within your consul container, does it report the name of the zombies processes as well (i.e. what executable is stuck)?
Seeing a part of that ps output might make it easier to figure out why zombie processes are created in the first place!
Cheers,

I see this consistently with Consul 0.5.0 (using the progrium/consul image - not yet been able to test with the new image) on CoreOS on AWS.
 Here's a portion:
11553 root     [docker]
12936 root     [docker]
16355 root     [docker]

It isn't really a big deal - it takes long enough to build that a Consul restart every few weeks is sufficient currently to avoid it getting to a point where it might be problematic. They're just zombie's after all and resource usage on the machines is fine.
I'm unsure which of our check scripts is causing it - several of them use the docker client. It would be nice if the container had a "proper" pid 1 (or if Consul functioned as one).

Not sure what to do about this issue. It's either a Docker issue or a Consul issue, I'm not sure there's much I can do here with the Docker image...

These are zombie processes. The issue is almost certainly something that manages to effectively double-fork and that Consul isn't reaping those child processes. The most likely cause is that the shell script of the test is killed while the docker client is still running, thus having the effect of orphaning the docker client. In that case, if Consul isn't wait-ing on the orphaned process, we'll have zombie's building.
This basically makes any check scripts that shell out to anything that may potentially overrun it's time slice on occasion unsafe.
When I get a chance I'll try to narrow down a specific test-case, and then try to build a modified version of the docker image that puts in place a minimal init like http://git.suckless.org/sinit  - if that fixes it, then the solution is to introduce a minimal init like that in the image (sinit is 79 lines of C) or modify Consul to support reaping the child processes.

@vidarh Sorry for the shameless plug, but in case you're interested, I actually went down the road of building a minimal init system that reaps zombies (which is what you were suggesting you'd do with sinit) and does proper signal handling.
You can find it here: https://github.com/krallin/tini
Cheers,

Both of these projects are very cool. I'm wondering if there's anything
close in Go or maybe somebody could port to Go? I'd love to include it in
https://github.com/progrium/entrykit
On Fri, Aug 14, 2015 at 12:34 PM, Thomas Orozco<EMAIL_ADDRESS>wrote:

@vidarh https://github.com/vidarh Sorry for the shameless plug, but in
case you're interested, I actually went down the road of building a minimal
init system that reaps zombies (which is what you were suggesting you'd do
with sinit) and does proper signal handling.
You can find it here: https://github.com/krallin/tini
Cheers,
—
Reply to this email directly or view it on GitHub
https://github.com/gliderlabs/docker-consul/issues/45#issuecomment-131190533
.

--
Jeff Lindsay
http://progrium.com

@progrium I haven't really considered a Go port of Tini. It's a simple program, but it mainly does low-level things like setting sigmasks, forwarding signals, waiting processes, so C felt like the right language for it.
I'd have to look at whether those things can easily be done in Go! (I originally considered Rust, where that wasn't the case)

@krallin very interesting, thanks.
@progrium The minimal requirements for an init are truly minimal, so as @krallin said id boils down to if they can easily be done in Go - they're certainly small enough that if the facilities are there it's not a huge effort.
But sinit ends up at 13512 byes with musl instead of glibc (with glibc it weighs in at 800KB) and no other runtime dependencies (additional build dependencies, of course).

@progrium I could resist looking into this, and here's a very, very limited init (even more limited than Suckless Init and certainly much more limited than what @krallin linked to) sufficient to reap the zombies translated to Go. Probably buggy/missing stuff, and I don't know the low level Go stuff well enough to be sure the os/exec stuff ends up being entirely equivalent, but it certainly does reap the child processes:
https://gist.github.com/vidarh/91a110792c86d6c3bb41
Note that as I mention in the readme file I added to the gist, the Go version ends up at 2.9MB vs <14KB for the musl libc statically linked Suckless Init, so I wouldn't recommend actually using this vs. simply dropping in sinit or similar.
However what's more viable is to simply drop this goroutine or a variation into projects to give them the ability to read child processes if/when they run as pid 1:
go func() {
    var wstatus syscall.WaitStatus

    for {
        pid, err := syscall.Wait4(-1, &wstatus, 0, nil)
        if err != nil {
            log.Println(err)
        } else {
            log.Println("Reaping child", pid)
        }
    }
}()

Proposing this for upstream Consul might be the best alternative if they'll take it, as it protects unsuspecting victims building their own containers at a very low complexity cost..

Yeah, if this is all it is, I might throw it into entrykit, which has some other features that will already use up the size of the runtime. But it'll let me make this container reap processes even if Consul doesn't.

@progrium On top of what's in my linked gist you might also want to consider gracefully forwarding SIGTERM and optionally other signals (SIGHUP, SIGUSR1 would both be useful to nicely handle apps that can be made to reload config etc. through a signal) to the spawned process. That adds something like this:
c := make(chan os.Signal, 1)
signal.Notify(c, os.Interrupt, [add other signals as needed])
go func(){
    for sig := range c {
       // Signal the child process that was spawned with the same signal
    }
}()

If you're already going to be spawning things under entrykit, then the earlier goroutine will make it better behaved in any case.

Yep, passing signals already.
On Wed, Aug 19, 2015 at 6:35 AM, Vidar Hokstad<EMAIL_ADDRESS>wrote:

@progrium https://github.com/progrium On top of what's in my linked
gist you might also want to consider gracefully forwarding SIGTERM and
optionally other signals (SIGHUP, SIGUSR1 would both be useful to nicely
handle apps that can be made to reload config etc. through a signal) to the
spawned process. That adds something like this:
c := make(chan os.Signal, 1)
signal.Notify(c, os.Interrupt, [add other signals as needed])
go func(){
for sig := range c {
// Signal the child process that was spawned with the same signal
}
}()
If you're already going to be spawning things under entrykit, then the
earlier goroutine will make it better behaved in any case.
—
Reply to this email directly or view it on GitHub
https://github.com/gliderlabs/docker-consul/issues/45#issuecomment-132556612
.

--
Jeff Lindsay
http://progrium.com

Here is how you can absolutely delete all the zombie services: Go into your consul server, find the location of the json files containing the zombies and delete them.
For example I am running consul in a container:
    docker run --restart=unless-stopped -d -h consul0 --name consul0 -v /mnt:/data \         -p $(hostname -i):8300:8300 \         -p $(hostname -i):8301:8301 \         -p $(hostname -i):8301:8301/udp \         -p $(hostname -i):8302:8302 \         -p $(hostname -i):8302:8302/udp \         -p $(hostname -i):8400:8400 \         -p $(hostname -i):8500:8500 \         -p $(ifconfig docker0 | awk '/\<inet\>/ { print $2}' | cut -d: -f2):53:53/udp \         progrium/consul -server -advertise $(hostname -i) -bootstrap-expect 3
Notice the flag -v /mnt:/data this is where all the data consul is storing is located. For me it was located in /mnt. Under this directory you will find several other directories.
config	raft  serf  services  tmp
Go into services and you will see the json files containing your services, find any ones that link to a zombie and delete them.  Then restart consul.  Then repeat for each server in your cluster that has zombies on it.

Using the http api for removing services is another much nicer solution. I just figured out how to manually remove services before I figured out how to use the https api.
To delete a service with the http api use the following command:
curl -v -X PUT http://<consul_ip_address>:8500/v1/agent/service/deregister/<ServiceID>
Note that your is a combination of three things: the IP address of host machine the container is running on, the name of the container, and the inner port of the container (i.e. 80 for apache, 3000 for node js, 8000 for django, ect) all separated by colins :
Heres an example of what that would actually look like:
curl -v -X PUT http://<IP_ADDRESS>:8500/v1/agent/service/deregister/<IP_ADDRESS>:sharp_apple:80
If you want an easy way to get the ServiceID then just curl the service that contains a zombie:
curl -s http://<consul_ip_address>:8500/v1/catalog/service/<your_services_name>
Heres a real example for a service called someapp that will return all the services under it:
curl -s http://<IP_ADDRESS>:8500/v1/catalog/service/someapp

@cohenaj194 those are useful tips, but this is not the kind of zombies this issue is/was about. This issue was about a problem where if health checks intentionally or accidentally ended up "double-forking", you'd build up zombie processes for those health checks if running consul in a container without a zombie-reaping init. It was an entirely separate problem from cleaning out services.


feat: Add wrangler pages deployment list

This adds a wrangler pages deployment list command that lets you list the deployments in your Cloudflare Pages for an account.
It reuses the requireAuth helper (which I've moved into utils) to render an account selector (similar to https://github.com/cloudflare/wrangler2/pull/757)
This is what it renders:

Notice the lengthy Build url. That is annoying and I would really like us to use a url shortener across the board to shorten these down to prevent overflow on smaller terminal windows. We'll follow up in a PR for this eventually.

Is there any way to get the branch name on here anywhere? Maybe a second line in the source cell?


doxygen comments should include code samples

feedback on other SDKs is that the documentation should include code snippets that will illustrate how to use the items documented.

Other languages have sample apps which put regions around the relevant sample code snippet. We could have the doxygen generation put the snippets in the docs and this way samples compile and run.
We currently have some code snippets in the README, but having more copy-pastable samples just for core could be useful.
https://github.com/Azure/azure-sdk-for-c/blob/master/sdk/docs/core/README.md#working-with-spans
The IoT client already has extensive samples which is the mainline scenario (for example https://github.com/Azure/azure-sdk-for-c/tree/master/sdk/samples/iot/provisioning/src).
Hence moving to backlog.

@danieljurek based on Ashon comment

The IoT client already has extensive samples which is the mainline scenario (for example https://github.com/Azure/azure-sdk-for-c/tree/master/sdk/samples/iot/provisioning/src).

Can we consider this issue done?
It makes sense that service client are expected to be documented with examples.  Not so sure if azure core should be like that as well.

Not so sure if azure core should be like that as well.

We should do it for azure core as well, it is just lower priority. The issue is in the backlog. I don't think we should close it.


[Bug] - Advanced Dogma

Hey,
Advanced Dogma (Archetype Feat) does not have a choice set akin to basic dogma. It would be helpful to have a choices available :)
Thanks!

#4477 would fix this, but it's very out of date. I'll look at updating it with the latest changes and we'll see if it can get merged.

The new filter format required for v11 may end up more flexible, but it's still going to be a difficult problem.
As for this issue, it's a duplicate of #1956 so I'll close it.


Prevent the check of HTML5  tags with a tel protocol

When checking a href which references a phone number (for instance +33102030405, Guzzle is throwing the error:

[GuzzleHttp\Exception\ConnectException]
cURL error 6: Couldn't resolve host name

This ensures phone numbers in  tags are not parsed.

Nice catch, thanks!


Fix device discovery through iSCSI for SoftLayer

iSCSI device discovery could not be called a second time after disk partioning,
since code was refactored for IaaS-native disk resize.
Here we modify slightly the algorithm so that a never-mounted but
already-partitioned disk doesn't trigger any unnecessary iSCSI restart.
Fixes #252.
While working on this fix, I've reviewed other strategy classes implementing the DevicePathResolver interface. Conclusion is that only the iSCSI strategy is dependant on whether the disk device is partitioned or not, which leads to different results when called before or after partitioning.

@donacarr Could you verify this change indeed fixes #252?

Looks good to me, let's wait for feedback from @donacarr.
@bgandon Out of curiosity, is iSCSI only used on SoftLayer?

The fix is partially working... I put comment here #252

We need still the fix.
Thx

Hello @donacarr, as discussed last month I've implemented a small cache in order to fix the issue pointed in your https://github.com/cloudfoundry/bosh-agent/issues/252#issuecomment-977712657. I've also added more unit tests in order to cover the issue that had been identified.
Could you please give it a shot and provide feedback? Thank you!

@donacarr were you able to test the changes made by Benjamin?

I plan to test it in the next two weeks

@donacarr, any new on testing the new updated code?

@donacarr, any new on testing the new updated code?

Hi @bgandon , sorry for late answer ... I was sick..
Btw my collegue tried your updated code but he got a failure:
Failures:

  1) with release and stemcell and subsequent deployments with persistent disk size changing should migrate disk contents
     Failure/Error: expect(persistent_disk('colocated', 0, deployment: deployment)).to_not eq(@size)

       expected: value != "20509264"
            got: "20509264"

       (compared using ==)
     # ./spec/system/with_release_stemcell_spec.rb:103:in `block (3 levels) in <top (required)>'

Unfortunately he did not collect new logs, so if you need it then the next time we build new stemcell, we will collect it...

Hello @donacarr,
With the issue you've encountered, it seems that growing the disk size using the classical disk migration process has failed in the Bosh Acceptance Tests.
It's not easy to relate that with the fix in this PR for resolving iSCSI device paths.
Yes, we would need the Agent logs in order to investigate the problem that prevented the disk from being properly resized.
Could you please provide these? Thank you.

@bgandon could you rebase these changes against master?

ping @bgandon

Sorry for late reply, will rebase soon!

All right, it's rebased!

Has this been validated to fix the problem? @donacarr created the original issue, but I haven't seen confirmation that these changes fix things.

@jpalermo yes the issue was fixed by the new code.
thank you


Connect more than one ios device to OSX

Hi,
great work. Is there way to connect two ios devices to OSX and recognize where is first and where is second, I need to make app bundle source synchronization between two ios devices through USB connected to OSX.
I need to sync, video and images.
is there possible?
thank you very much.

Hi there,
yes, that should be possible already. You need to start the JMMobileDevicePort on both iOS devices. On OSX you need to start the JMUSBDeviceManager and wait for the -(void) deviceManager:(nonnull JMUSBDeviceManager*)manager deviceDidAttach:(nonnull JMUSBDevice*)device callback for each of the devices. As soon as a device has been attached to your Mac you just need to open a JMUSBDeviceConnection and connect to it. When both devices have been connected you just need to forward the incoming data from one JMUSBDeviceConnection to the other.
Hope that helps!

cool man Thanks for the response.
Also Is there possible to do from one ios device to second ios device without osx mediator, just connect devices through dual USB cable. Right  now I use MultipeerConnectivity framework to sync ios devices through Wifi or Bluetooth but the speed of sync is too slow. So maybe is possible to sync devices through USB without osx. Can you say your thought about that?
Thanks, with you every success:)

Unfortunately, a direct device to device connection via Lightning/USB cable is impossible. You could downsize the whole setup to a usbmuxd server on a SoC board such as Raspberry Pi or Beaglebone. Have a look at https://github.com/davidahouse/PiTalk for more information on that.

Ok thanks that let me know.
Also can you tell me If use mac app and two ios app for sync feature through DarkLightning, there need mfi program certification?

Nope, you do not need MFI certification for that. You might have heard about Duet Display. Same technology, no MFI.


use with CuteChess ?

hi, i just discovered your Andoma chess engine. Although it's made with Python, i should be able to run it in CuteChess, but it fails .. see screenshots .. i think your UCI protocol is not fully compatible with CuteChess .. i can send you the logs, but you can easily test it in CuteChess yourself .. it seems Andoma is not connecting properly, it performs one move and stops listening to the "CuteChess master" - same with Andoma playing White
[ i use Xubuntu 20.04 ]

Hi!
Thanks for raising this. Looks like #7 relates.
Per the README, this project only commits to maintaining:

A slice of the Universal Chess Interface (UCI) to allow challenges via lichess.org

However, a PR to enable more UCI functionality is welcome 😄

Hi @tissatussa,
I was able to get some more UCI functionality implemented in #18 and got Andoma running in Cute Chess (and others). Give it a shot: there might still be problems, but it might at least be to a point where this issue (and your issue #7) can be closed.

yes, now Andoma works in my CuteChess !


VS crashes instantly after installing this extension

I formatted my machine recently, but I've been doing xamarin/maui dev since. It's been working fine, but after installing the extension - it crashes on the load of the app.

VS 2022 v17.7.0
VS 2022 Preview (v17.8.0 Preview 1.0)
Stack from event viewer:

Application: devenv.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.DirectoryNotFoundException
   at System.IO.__Error.WinIOError(Int32, System.String)
   at System.IO.FileSystemEnumerableIterator`1[[System.__Canon, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b77a5c561934e089]].CommonInit()
   at System.IO.FileSystemEnumerableIterator`1[[System.__Canon, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b77a5c561934e089]]..ctor(System.String, System.String, System.String, System.IO.SearchOption, System.IO.SearchResultHandler`1<System.__Canon>, Boolean)
   at System.IO.Directory.GetFiles(System.String, System.String)
   at VsAndroidEm.EmulatorControlViewModel.Timer_Tick(System.Object, System.EventArgs)
   at System.Windows.Threading.DispatcherTimer.FireTick(System.Object)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(System.Object)
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
   at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
   at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)

Attached is the activity log, which shows it's an extension crash that's occurring in the EmulatorControlViewModel Timer_Tick:
, which must be this code: https://github.com/adospace/vs-android-emulator/blob/main/src/EmulatorControlViewModel.cs#L66-L67
ActivityLog.txt

I was able to revert for now using this (in dev command prompt), though I'd like to definitely use this when it works:
VSIXInstaller.exe /uninstall:VsAndroidEm.5dfcfa73-0d82-4b24-9c01-479eaa271e61

Hi, thank you for the detailed issue description. Yes, that's the problem, the extension monitor this folder to know when an emulator is running:
C:\Users\user\AppData\Local\Temp\avd\running
In your case, that folder doesn't exist (yet?).
Please download the latest version of the extension just published (1.6) which should at least not crash the IDE.


[DOCS] improve prose for smol course

What does this PR do?
This PR makes a small change to the prose of the link to smol course.

Fixes # (issue)
Before submitting

[x] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).

Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.
cc @qgallouedec

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


[Bug]: MySQL: test datasource shows pass when port number field is left blank

Is there an existing issue for this?

[X] I have searched the existing issues

Description
https://theappsmith.slack.com/archives/C040LHZN03V/p1692927779184399
Steps To Reproduce
https://theappsmith.slack.com/archives/C040LHZN03V/p1692927779184399
Public Sample App
No response
Environment
Production
Issue video log
https://theappsmith.slack.com/archives/C040LHZN03V/p1692927779184399
Version
cloud, self hosted

not reproducible anymore


Auto-generated API docs seem not to be using TypeScript files

If you look at the new API page (https://colorjs.io/api/), many variables and parameters just have any as their types. It looks to me like TypeDoc is pointed at the wrong files (i.e. the JS source instead of .d.ts files).
Here's the page for the Color class, for example: https://colorjs.io/api/classes/color.color

Saw this after reviewing the PR. Yikes! Thanks @MysteryBlokHed for the PR!

@MysteryBlokHed So to be clear, what are the JSDoc comments in the src/ files being used for? There's a lot of duplication currently between those comments and the comments in types/.

@MysteryBlokHed So to be clear, what are the JSDoc comments in the src/ files being used for? There's a lot of duplication currently between those comments and the comments in types/.

At the moment, I don't think they do anything other than maybe provide IntelliSense while working on the library itself.
I'd be for removing JSDoc from the JavaScript files personally, to avoid confusion for contributors as to where docs come from. Anything that’s currently documented there is probably from before the TypeScript types were added.

Oof, but having the comments in a completely different place instead of when working on the actual source is also very suboptimal. Is there any way to merge the two for typedoc, so we don't have to duplicate them and they can still live together with their definitions?
If not, it may be time to move to TypeScript. :/

Something might be possible with the @inheritdoc JSDoc directive? Maybe it can be used to point to docs from files in some way. But other than that, I don't think there would be any way to use docs from the JS and types from the TS.
Even on DefinitelyTyped (Microsoft's repository for library typings), documentation is just manually copied from the source libraries.

I just opened this to discuss: https://github.com/color-js/color.js/issues/499


update to fix maxrect to work with modern libraries.

cvxpy is substantially different now. CVXOPT cannot solve the problem, and the default autosolve approach works just fine with convex coordinates. the resolved values have a different shape, so we must return the raw coordinates.

no interest in this at all huh? :D oh well, at least it helped others


Fix system chrome colors on gallery and definition in iOS

Uses new SystemChrome API.

Fixes https://github.com/flutter/flutter/issues/18344

NICE
LGTM too.


Question: Tanka vision/roadmap

Hi,
As far as I understood, Tanka is replacement to ksonnet tool. Unfortunately, I did not use it and I wonder, how do you see the future of tanka. It's related somehow to #193, #75, #101 , #88 . What are minimal set of features would be considered for v1?
Thanks.

Hi! Yes, a clear roadmap is definitely a good thing to have.
Until we have come up with something to discuss publicly, these will probably be the focus points:

Ecosystem: The current Jsonnet ecosystem is poor in comparison to the Helm one for example. Mostly related to the lack of libraries

Libraries: These need to be written. To do that, we need to get a guide together how to do that effectively, so that all libraries follow a common pattern
(Helm support): Easy win, cause we can use Charts until we have our own ones. Need to evaluate if we can do that in a nice way tho
integrate https://github.com/jsonnet-bundler/jsonnet-bundler as tk pkg, so you only need a single binary

Tooling: Jsonnet language tooling is pretty bad

Docs: Most important. Do ASAP
LSP: A language server to do getdoc, complete, highlight, etc would be super neat

Of course this is open for discussion and this list can be extended / changed if sensible :D

I fully agree that we should work on this things (as a broader Jsonnet community - only "Helm support" and tk pkg are Tanka-specific.

Libraries: These need to be written. To do that, we need to get a guide together how to do that effectively, so that all libraries follow a common pattern

If you see a need for some specific library feel free to open an issue for that in https://github.com/google/jsonnet. I'm not saying that we will implement it as maintainers, but I think it's good to accumulate these needs and discussions in one place and work on these together as a community.

Thanks for answering. I like tanka for simplifying the building process with override feature, reasonable concept of environments and easy to get started tutorial.

Libraries: These need to be written. To do that, we need to get a guide together how to do that effectively, so that all libraries follow a common pattern

It could be hard to find  a consensus on common style, just because the ksonnet style is quite different from style used by Bitnami. However, the style/structure used in kube-prometheus is straight-forward and can be used as a good reference; considering the number of people using/contributing to it.
I think the main issue is how/to create a "hub" similar to helm or terraform  with a governance and a reliable support for community. I may assume that's why this project has been started.

integrate https://github.com/jsonnet-bundler/jsonnet-bundler as tk pkg, so you only need a single binary

It's nice to have but easy to overcome with make.
How about enhancing the deploying stage with features such as: "control/order flow" and a prune of the old resources?

LSP: A language server to do getdoc, complete, highlight, etc would be super neat

Totally agree.

If you see a need for some specific library feel free to open an issue for that in https://github.com/google/jsonnet.
@sbarzowski I'd like to see this merged https://github.com/google/jsonnet/pull/665

I've been enjoying tanka, and the jsonnet-libs.  Been trying to evaluate kubecfg and tanka and this thread seemed to sum up some of my experience with tanka. How does tanka play with gitops and ci/cd or other tools in general?  Is export meant to output the files for another tool to consume?  kubernetes says the objects are managed by kubectl; does this suggest its part of a classic unix pipeline?   However piping show to other tools requires a long switch; does this suggest tanka prefers some prioritized relationship to managing the workflow?  Wondering how much to expect tanka to interop more with the system around it vs focusing on an interactive terminal, vs maintaining the utility, backwards compatibility, and workflow surrounding jsonnet-libs, k, et al?  kubecfg doesn't seem to work with the jsonnet-lib stuff, but does facilitate getting started with components using yaml or json files as input (kubecfg show -o json previously_formatted.yaml is a good way to seed new jsonnet lib ready for factorizing).  It's also been tricky dealing with different components that will create or consume different namespaces within the same environment.  Is cloning lots of duplicate environments to manage different components expected?
I realize @sh0rez has been working on much needed documentation efforts.  These are some of the questions rattling around after spending the summer with tanka.  It's been great in assuring me that my resources are linked together appropriately and very much filling needs in this domain.

Hey @bewest, let me try to answer some of your questions.

How does tanka play with gitops and ci/cd or other tools in general? Is export meant to output the files for another tool to consume?

Yes it does! The tk export command is specifically meant to be used for handing the YAML resources to some sort of CD tooling. We pilot https://fluxcd.io/ internally and have promising results. @captncraig can tell more on that.

kubernetes says the objects are managed by kubectl; does this suggest its part of a classic unix pipeline? However piping show to other tools requires a long switch; does this suggest tanka prefers some prioritized relationship to managing the workflow

Tanka uses kubectl, not the go-library for cluster communication. Piping however is discouraged for safety reasons: kubectl must be pointed at a given cluster, which resources are sent do when doing kubectl apply. Not being careful about this can have fatal outcomes, e.g. when you apply to the wrong cluster. This happened before and wiped a cluster.
To combat this, tk apply and tk diff invoke kubectl with the --context flag, to force a context that matches the cluster of spec.json. However, when you pipe tk show to kubectl apply, Tanka can't do this for you. The long switch makes this responsibility clear.
In day-to-day operations there should be no need for piping tk show. If you want to export for CD, use tk export. For everything else (diff, apply, delete) Tanka has controlled commands. Does this make sense?

Wondering how much to expect tanka to interop more with the system around it vs focusing on an interactive terminal, vs maintaining the utility, backwards compatibility

Not sure whether I understand this question fully.
The Tanka workflow is primarily interactive: You edit your Jsonnet, tk diff it to verify the outcome and tk apply to make it happen. For automated deployments, tooling is available, notably FluxCD and ArgoCD. tk export provides a bridge to those.
We strongly value backwards compatibility, no core area of Tanka should ever break when upgrading.

and workflow surrounding jsonnet-libs, k, et al?

Let's try to clarify on the Kubernetes libraries.
In the beginning it was ksonnet-lib, which was a Jsonnet library for quickly piecing together Kubernetes objects. When the Heptio was acquired by VMWare, ksonnet was deprecated and thus all development stopped.
Due to a lack of alternative, we stayed on this library, even after we released Tanka as a replacement for ksonnet. Around February 2020, during FOSDEM, @metalmatze and I forked ksonnet-lib to https://github.com/kube-jsonnet/k, aiming to maintain it. Unfortunately we realized that the code-base was far more complex than we had time for to understand to be able to fix issues.
We re-wrote the generator, which formed https://github.com/jsonnet-libs/k8s. This library serves us well for over 2 months in prod now, and will be default in Tanka by the time we declare it GA.
A notable thing here is kausal.libsonnet, which is an extension on top of ksonnet-lib to do some new things we needed for ourselves. Most of what kausal provides is already merged into jsonnet-libs/k8s, so soon there will be only one library left.

kubecfg doesn't seem to work with the jsonnet-lib stuff, but does facilitate getting started with components using yaml or json files as input (kubecfg show -o json previously_formatted.yaml is a good way to seed new jsonnet lib ready for factorizing). It's also been tricky dealing with different components that will create or consume different namespaces within the same environment. Is cloning lots of duplicate environments to manage different components expected?

I can't tell too much about kubecfg, never really used it.
On Environments, they should usually be subset of a namespace. Say a environments/loki/us-central1 would deploy into the loki namespace of a us-central1 cluster. The reason resources are allowed into different namespaces is the fact that some operators require resources in certain namespaces they watch.
As this goes quite into detail, also requiring more information on your setup to answer properly, I suggest you join the #tanka channel on https://grafana.slack.com and ping the there!

Hi :) After nearly 4 years I think we can close this ticket. As far as Tanka's future: We are using it heavily internally and as far as I can tell that's not going to change in the foreseeable future.
Regarding a 1.0 roadmap: We don't have one (yet) but that might still come 🙂


Add profile/password management

Allow users to change email address, password, etc

Done with the CRUD functions for user. As of https://github.com/datacite/saluki/commit/7088101e9b5802fc9ca51f2cfd6e64c0efb24f67 a user can be updated by the user themselves or a staff member/admin


Correct information outputting from runners

Merged in https://github.com/cinek810/ansible-deployer/pull/170


ARTEMIS-1223 OutOfDirectMemoryError raised from TimedBuffer

Force allocation of direct ByteBuffer with Cleaner to help GC on tests.

what is the difference?

@clebertsuconic Unpooled::directBuffer is not specified on Netty javadoc but could allocate a direct ByteBuffer with no Cleaner in it i.e. when GC occour the JVM doesn't free it.
Calling directly ByteBuffer.allocateDirect forces the instantiation of the buffer with a Cleaner, hence tests, that create and destroy multiple TimedBuffer instances do not goes OOM anymore.

@franz1981  mind adding some // about it?

@clebertsuconic Probably it would be better to push a PR on Netty to add some doc on it too, but I agree, I'll pur a comment to make it more clear :+1:


MariaDB ER_NOT_SUPPORTED_AUTH_MODE

I cloned the ubb import in order to write my own importer for a self written forum.
I tried to import out of a MariaDB:
/usr/bin/mysql --version
/usr/bin/mysql  Ver 15.1 Distrib 10.3.25-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

and received the following error:
ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MariaDB client {"code":"ER_NOT_SUPPORTED_AUTH_MODE","errno":1251,"sqlState":"08004","fatal":true}
Upgraded the mysql driver to

   "mysql": "~2.4.2"

   "mysql": "~2.18.1",

but error stayed the same.
Is there a recommendation to solve this problem?

oof, maybe try using a different module all together, maybe this https://www.npmjs.com/package/mariadb
The importer plugins doesn't care how you get the data, as long as you maintain the API functions
https://github.com/akhoury/nodebb-plugin-import/blob/master/write-my-own-exporter.md

I finally learned that ;-) My very first step, was to avoid those changes in order to understand how the importer works at all. I used another work around: dump restored into a mysql - that helped me in first place.


awesome works

We have tested your several related works on our own large real dataset and the result is exciting. Respect bro.

It is glad to hear that our works facilitate your current researches and works. We will continuously update the pretrained model if necessary. Welcome to follow our works!


WIP - figure out why we have way too many draw calls / fix for reducing the number of redundant glPrograms

Linking
related to #651
Problem
Description of the problem including potential code and/or screenshots as an example
Solution
Quick explanation of change to be done
Breaking Change
If this is a breaking change describe the before and after and why the change was necessary
Notes
Notes and any associated research or links

Required to Merge

[ ] PASS - all necessary actions must pass (excluding the auto-skipped ones)
[ ] TEST IN HEADSET - main dev-testing-example and any of the other examples still work as expected
[ ] VIDEO - if this pr changes something visually - post a video here of it in headset-MR and/or on desktop (depending on what it affects) for the reviewer to reference.
[ ] TITLE - make sure the pr's title is updated appropriately as it will be used to name the commit on merge
[ ] BREAKING CHANGE

DOCUMENTATION: This includes any changes to html tags and their components

make a pr in the documentation repo that updates the manual docs to match the breaking change
link the pr of the documentation repo here: #pr
that pr must be approved by @lobau

SAMPLES/INDEX.HTML: This includes any changes (html tags or otherwise) that must be done to our landing page submodule as an effect of this pr's updates

make a pr in the mrjs landing page repo that updates the landing page to match the breaking change
link the pr of the landing page repo here: #pr
that pr must be approved by @hanbollar

the issue
the issue is due to too many materials being created with new that are redundant to each other - where their differences are just selected uniform variables
the supposed fix
instead of doing new everywhere, we should grabbing from a catalogue of materials unless a user creates something specific (for normal and debug items).

implementing now to confirm

down from 22 --> 16 render calls --> still looking into

still looking into ways to reduce the number of glPrograms, but here's where we're at for now

same out come

number of draw calls depends on number of models in scene with differing materials (including text and otherwise)
draw call count changes depending on what is within frustum area
glprogram count increases as scene loads in (and scroll down to new items) - until has loaded int data all items from scene

things to do:

[ ] see if can optimize troika material setup / reusability
[ ] instancing geometry (that's a future pr)
[ ] LOD - i think we're okay on this being something user specified if they want to define that in the scene directly

number of draw calls depends on number of models in scene with differing materials (including text and otherwise)
draw call count changes depending on what is within frustum area
glprogram count increases as scene loads in (and scroll down to new items) - until has loaded int data all items from scene

things to do:

[ ]  see if can optimize troika material setup / reusability
[ ]  instancing geometry (that's a future pr)
[ ]  LOD - i think we're okay on this being something user specified if they want to define that in the scene directly

we're going to need an actual material caching system setup - same thing with geometry instancing

turning this into a draft since we'll be doing a rework of MeshInstancing and MaterialInstancing in a future pr and those are super relevant to this getting improved


Add emmet plugin

Fixes #861

 You should sign our Contributor License Agreement in order to get your pull request merged.


Loosen Faraday dependency to ~> 1.1.0

What?
Updating the Faraday gem from 0.17.x to 1.1.x.
Tickets / Documentation
The Faraday changelogs can be reviewed here:

0.17.4
1.1.0

Screenshots (if appropriate)

RSpec tests pass
Tested creating a client and manipulating resources successfully

Thank you so much for this! Much appreciated!

@gregblass  👍  Sorry it took so long! We will be pairing to cut a new release with these changes next week for the gem. Stay tuned! 🥳


Same demo app for Navigation SDK is required

I need the same demo app for navigation sdk, we can't move on with only small examples you provided because there are lot of things in actual app i.e manoeuvres, routes,  estimated times, traffic data and many other things to handle. This one is complete demo which is prefect but it's for premium SDK only.

With navigation SDK you mean the HERE SDK 4.x Navigate Edition? If yes, we offer the following demo app -
https://github.com/heremaps/here-sdk-ref-app-flutter
A iOS specific application is not planned.

but mostly developer prefer native, it would be awesome if you plan something on native iOS/android.

I will discuss this matter with the management.

Hi,
I got the feedback and the support of native demo applications for iOS and Android is currently not planned.


[BEAM-124] WordCountIT: Add outputs verification

+R: @jasonkuster @dhalperi @lukecwik
Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[x] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

Implement onSuccessMatcher for WordCount Integration Test to verify checksum of WordCount output.
Using IOChannelUtils which dynamically creates IOChannelFactory and avoids the dependence on specific storage type.

R: @jasonkuster first, i think.

PTAL. Thanks
@jasonkuster @lukecwik

PTAL
R: @lukecwik @jasonkuster

PTAL @lukecwik

Done

LGTM


Use Kubernetes secret for Postgres in Worker

Note: This breaks hub (will be fixed when we ship the next beta version to Hub later today)


Bump version to v5.1.0

Noticed via https://juice-shop.github.io/juice-shop/#/8 which pull the version automatically into the HTML slide:

I'll merge it for now, but can't really promise to keep it up to date 😔
I've automated setting the number before a release so that I can't forget this anymore, but it's not getting commited (doesn't) need to.
Best place to pull this number is probably the GitHub release api or maybe the index.yaml from the helm chart repo: https://iteratec.github.io/multi-juicer/index.yaml


Can not resolve data:, from index.html.

Steps to reproduce
index.html head tag add

What is expected?
Build Success
What is actually happening?
Build failed due to errors:
Can not resolve data:, from index.html.
Original error: None.
Potential Causes:
1.The file that data:, points to does not exist.
2.Install it first if data:, is an dependency from node_modules, if you are using pnpm refer to [https://pnpm.io/faq#pnpm-does-not-work-with-your-project-here] for solutions.
3. If data:, is a alias, make sure your alias config is correct.
System Info
System:
    OS: Windows 10 10.0.19044
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz
    Memory: 1.95 GB / 15.79 GB
  Binaries:
    Node: 20.10.0 - C:\Program Files\nodejs\node.EXE
    npm: 10.2.3 - C:\Program Files\nodejs\npm.CMD
    pnpm: 8.10.3 - ~\AppData\Roaming\npm\pnpm.CMD
  Browsers:
    Edge: Spartan (44.19041.3636.0), Chromium (119.0.2151.72)
    Internet Explorer: 11.0.19041.3636
  npmPackages:
    @farmfe/core: ^0.14.8 => 0.14.8

Any additional comments?
No response

fixed in 0.14.10


Sorry to be that guy... types?

Is there any interest in adding types to the module?  I'm looking for something to replace helicone, and so far this is the only thing that I've found that I like (I don't trust langchain to make langsmith, but their features in relation to dataset building look quite interesting to me).  I'd say one thing that stops me from jumping right in is the lack of type annotations.  I'm not asking you guys to do them, I'm asking if it's even something you guys would be interested in having.  I'm not sure how hard it would be (though I'd be willing to take a crack at it at some point), mostly because I haven't played around too much with the opentelemetry stuff (and really don't want to).
But the lightweight straightforward adaptation of opentelementry to the OpenAI use case is exactly what I want and seems like you guys have pretty much implemented, so great.

Hi @nathan-chappell,
You’re talking about python right?
If this is the case, we definitely plan to add them.

@hughcrt yes python, and glad to hear it!  I'll probably start using you guys once I have an opportunity to switch over.


fix errors on 'blur'

The wrong object/method combination was being invoked on blur events, causing undefined methods to be called. The correct invocation is either [medium editor].activatePlaceholder, or [insert plugin].editorActivatePlaceholder (which alias to the same function).

Thank you.


fasd: 2015-03-29 -> 2016-08-11

Motivation for this change
Changes license to MIT, which is the license that fasd uses.

fasd license: https://github.com/clvv/fasd/blob/master/LICENSE
MIT license: https://opensource.org/licenses/MIT

Things done

[x] Tested using sandboxing
(nix.useChroot on NixOS,
or option build-use-chroot in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] OS X
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)

code/nixpkgs > ./result/bin/fasd --version
1.0.1

[x] Fits CONTRIBUTING.md.

if you squash commits I'll merge.

@FRidh Done, thanks for the review!