Installing multiple Eclipse packages leads to collisions and only one XDG desktop item available for app launchers that support XDG desktop items

Describe the bug
Installing multiple Eclipse packages leads to collisions and only one XDG desktop item available for app launchers that support XDG desktop items.
Steps To Reproduce
Steps to reproduce the behavior:

Install eclipses.eclipse-java, eclipses.eclipse-modeling, eclipses.eclipse-platform.
See collisions, and that only one eclipse binary is available to $PATH, and only one XDG desktop item will be shown by an app launcher like rofi

Expected behavior
No collisions. Have different binaries available in $PATH for running for each package, e.g. eclipse-java, eclipse-modeling, eclipse-platform. Each with its desktop item having different values for the parameters.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/editors/eclipse
https://github.com/NixOS/nixpkgs/blob/fe8d073af7723da7b981c593e6b4399757aa1b0c/pkgs/applications/editors/eclipse/build-eclipse.nix#L41-L46
https://github.com/NixOS/nixpkgs/blob/fe8d073af7723da7b981c593e6b4399757aa1b0c/pkgs/applications/editors/eclipse/build-eclipse.nix#L10-L18
https://github.com/NixOS/nixpkgs/blob/fe8d073af7723da7b981c593e6b4399757aa1b0c/pkgs/applications/editors/eclipse/build-eclipse.nix#L48-L52
Notify maintainers

There's no meta.maitainers... So I'm @ according to git blame on the makewrapper and/or desktop item bits
@muradu
@jerith666
@Nervengift
@c0bw3b
@rycee
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.34, NixOS, 22.05 (Quokka), 22.05.20220415.5181d59`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.7.0`
 - channels(root): `"nixos-22.05pre343944.ff377a78794"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

I see how this could be annoying, but this isn't a use case for me, so I probably won't spend time on a fix.
In theory one could even install multiple versions of eclipse-platform with different sets of plugins -- not sure how those could be disambiguated either.

Adding it to the wrapper name should be easy.  I'm less certain about the desktop item.  Happy to review a PR though!  :)


DataStore does not recover after extended background time

Describe the bug
We have a working Amplify application that uses DataStore. DataStore is working as expected under normal conditions.
If the app is placed into the background for some period of time (5 minutes is enough), DataStore reconnection is not successful and the app must be restarted to reconnect again.
Steps To Reproduce
1. Run application
2. Place the application in the background
3. Wait for some period of time (in my case 5 minutes is enough)
4. Activate the application
5. Check connection of DataStore

Expected behavior
We expect the connection to be re-connected and data sync to resume.
Amplify Framework Version
1.26.0
Amplify Categories
DataStore
Dependency manager
Swift PM
Swift version
5.6.1
CLI version
8.3.1
Xcode version
13.4
Relevant log output
No response
Is this a regression?
No
Regression additional context
No response
Device
iPhone 11 (real device), iPhone 12 (real device), iPhone 11 (simulator) and indicated on other test devices too
iOS Version
15.5
Specific to simulators
No response
Additional context
App after background time:
2022-05-30 12:25:31.262485+0200 MyApp[59721:3670226] [RealtimeConnectionProvider] Realtime connection is stale, disconnecting.
2022-05-30 12:25:31.262709+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.268534+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.287593+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.289064+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.289139+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.290499+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.290561+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.291352+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.291422+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.291464+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292400+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292481+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292521+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292555+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292586+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292625+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292737+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.292770+0200 MyApp[59721:3670226] ConnectionProviderError.connection
2022-05-30 12:25:31.298063+0200 MyApp[59721:3671904] [AWSModelReconciliationQueue] receiveCompletion: error: DataStoreError: Subscription item event failed with error
Caused by:
APIError: Subscription item event failed with error
Caused by:
connection
2022-05-30 12:25:31.298077+0200 MyApp[59721:3671902] [AWSModelReconciliationQueue] receiveCompletion: error: DataStoreError: Subscription item event failed with error
Caused by:
APIError: Subscription item event failed with error
Caused by:
connection
2022-05-30 12:25:31.298566+0200 MyApp[59721:3671904] [AWSModelReconciliationQueue] receiveCompletion: error: DataStoreError: Subscription item event failed with error
Caused by:
APIError: Subscription item event failed with error
Caused by:
connection
2022-05-30 12:25:31.299105+0200 MyApp[59721:3671900] [AWSModelReconciliationQueue] receiveCompletion: error: DataStoreError: Subscription item event failed with error
Caused by:
APIError: Subscription item event failed with error
Caused by:
connection
2022-05-30 12:25:31.299694+0200 MyApp[59721:3670226] [AWSModelReconciliationQueue] receiveCompletion: error: DataStoreError: Subscription item event failed with error
Caused by:
APIError: Subscription item event failed with error
Caused by:
connection
2022-05-30 12:25:31.299751+0200 MyApp[59721:3671901] [AWSModelReconciliationQueue] receiveCompletion: error: DataStoreError: Subscription item event failed with error
Caused by:
APIError: Subscription item event failed with error
Caused by:
connection
2022-05-30 12:25:31.294133+0200 MyApp[59721:3670223] [connection] nw_read_request_report [C1] Receive failed with error "Software caused connection abort"
2022-05-30 12:25:31.301662+0200 MyApp[59721:3670223] [connection] nw_read_request_report [C3] Receive failed with error "Software caused connection abort"
2022-05-30 12:25:31.301854+0200 MyApp[59721:3670223] [connection] nw_read_request_report [C2] Receive failed with error "Software caused connection abort"
2022-05-30 12:25:31.306568+0200 MyApp[59721:3671904] [AWSDataStorePlugin] StorageEngine completed with error: DataStoreError: Subscription item event failed with error
Caused by:
DataStoreError: Subscription item event failed with error
Caused by:
APIError: Subscription item event failed with error
Caused by:
connection
Then Amplify.DataStore.save results in success although updated data does not show in DataStore (there is no connection until we restart app)

Thanks for opening this, @agnieszkazimmer. We will take a look and get back to you.

Hi @ruisebas. Thank you for taking care of this case. Do you have any updates on how to solve it?

I'm seeing the same problem. After about 5 minutes, DataStore appears dead.

The only in-app fix, i.e. without outside restart, that I found, is to call DataStore.clear and trigger sync from scratch. That seems to do the trick but is hardly a solution.
I believe that earlier DataStore versions didn't exhibit this behaviour.

+1 on this issue

I just took some time to compare the verbose traces of one live-version of DataStore with one that has been sitting for > 5 minutes.
Some observations:

Live-version contains calls to OutgoingMutationQueue, dead-version doesn't
Live-version contains calls to StateMachine<State, Action>, dead-version doesn't
The last message, both versions have in common is save(mutationEvent:storageAdapter:completionPromise:): invoking nextEventPromise with, then the dead version goes to straight to save(mutationEvent:storageAdapter:completionPromise:): invoking completionPromise with success whereas the live version has OutgoingMutationQueue as well as StateMachine<State, Action> statements in the middle.

I'm not sure if that helps anything, but I figure I quickly point it out.
If this problem is not just me but many others, DataStore is in a dangerous state, as it may silently not sync to cloud anymore.

Another quick info: I just scanned through some older versions and checked which one still works for me.
1.21.0 still works
1.24.1 doesn't

Thanks @anatomybook for your input.
Current version does not keep basic promise of syncing to the cloud.
The only solution for now is to change to the older version..
@chrisbonifacio, @ruisebas is there any update when it can be fixed?

Hello @lawmicha ,
regarding the engine coming to life when queried was also my understanding. However, for me it remained dead. The only thing that did revive it for me was to clear and start from scratch.

I have PR https://github.com/aws-amplify/amplify-ios/pull/1901 out for this under the branch fix/datastore-defer-restart, please give it a try if you can. The proposed fix is to stop the storage engine and sync engine whenever it receives a terminal completion event from the storage engine, the completion event from the storage engine is often sent for non-retryable errors which is most of them until further classification is done. This defers the start of the sync process until the next DataStore operation.

Sorry for my late reply @lawmicha . For me it works now, thanks!


Stats missing for dataSkippingStatsColumns when special characters

Environment
Delta-rs version: 0.19.2
Binding:  Python
Environment:

Cloud provider:
OS: MacOS
Other:

Bug
What happened:
Stats are not captured for some columns in dataSkippingStatsColumns. If you were to write the table without that option, the same columns will appear in min/max values stats.
In the case below, only stats for "x" are captured. It appears that escaping the column name causes the column to be skipped
However, some columns must be escaped otherwise you get an error, e.g.
Stats column z.z not found in schema

What you expected to happen:
The stats captured the columns specified - in this case all of "x", "y" and "z.z"
How to reproduce it:
import polars as pl

df = pl.DataFrame({"x": [1, 2], "y": [5, 6], "z.z": [3, 4]})

df.write_delta(
    "table",
    delta_write_options={
        "configuration": {"delta.dataSkippingStatsColumns": "x,`y`,`z.z`"}
    },
)

More details:

A somewhat related bug - if you specify a column in delta.dataSkippingStatsColumns that is binary you'll get this error, even though the same column works without DSSC config option specified
_internal.DeltaError: Generic DeltaTable error: Stats column req_body has unsupported type binary

It seems odd that by using the DSSC config option, a lot of things that work normally suddenly break?


Frontend phase failed compilation.

Ubuntu 14.04
AMD Radeon 7970
Running the test miner
[OPENCL]:
Listing OpenCL devices.
FORMAT: [deviceID] deviceName
[0] Tahiti
	CL_DEVICE_TYPE: GPU
	CL_DEVICE_GLOBAL_MEM_SIZE:<PHONE_NUMBER>
	CL_DEVICE_MAX_MEM_ALLOC_SIZE:<PHONE_NUMBER>
	CL_DEVICE_MAX_WORK_GROUP_SIZE: 256

Number of Platforms:1
[OPENCL]:Found suitable OpenCL device [Tahiti] with<PHONE_NUMBER> bytes of GPU memory
[OPENCL]:Using platform: AMD Accelerated Parallel Processing
[OPENCL]:Using device: Tahiti(OpenCL 1.2 AMD-APP (1800.11))
[OPENCL]:"/tmp/OCLZw2eDE.cl", line 61: warning: arithmetic on pointer to void or
          function type
      for ( ; n-- ; s1++, s2++) {
                      ^

"/tmp/OCLZw2eDE.cl", line 61: warning: arithmetic on pointer to void or
          function type
      for ( ; n-- ; s1++, s2++) {
                            ^

"/tmp/OCLZw2eDE.cl", line 97: warning: argument of type "const void *" is
          incompatible with parameter of type "void *"
    memcpy(&w, src, sizeof w);
               ^

"/tmp/OCLZw2eDE.cl", line 104: warning: argument of type "const void *" is
          incompatible with parameter of type "void *"
    memcpy(&w, src, sizeof w);
               ^

"/tmp/OCLZw2eDE.cl", line 196: warning: integer conversion resulted in a
          change of sign
    S->f[1] = -1;
              ^

"/tmp/OCLZw2eDE.cl", line 216: warning: integer conversion resulted in a
          change of sign
    S->f[0] = -1;
              ^

"/tmp/OCLZw2eDE.cl", line 351: warning: argument of type "const void *" is
          incompatible with parameter of type "void *"
      memcpy( block, key, keylen );
                     ^

"/tmp/OCLZw2eDE.cl", line 431: warning: argument of type "const uint8_t *" is
          incompatible with parameter of type "void *"
        memcpy( S->buf + left, in, fill ); /* Fill buffer */
                               ^

"/tmp/OCLZw2eDE.cl", line 442: warning: argument of type "const uint8_t *" is
          incompatible with parameter of type "void *"
        memcpy( S->buf + left, in, inlen );
                               ^

"/tmp/OCLZw2eDE.cl", line 521: error: can't enable all OpenCL extensions or
          unrecognized OpenCL extension
  #pragma OPENCL EXTENSION cl_intel_printf : enable
                           ^

"/tmp/OCLZw2eDE.cl", line 620: error: argument of type "__global digest_t *"
          is incompatible with parameter of type "__global void *"
              memcpy_step0(dst_digests + new_el->digest_index, new_digest + (j*EQUIHASH_N/8), DIGEST_SIZE);
                           ^

"/tmp/OCLZw2eDE.cl", line 94: warning: function "load32" was declared but
          never referenced
  BLAKE2_LOCAL_INLINE(uint32_t) load32( const void *src )
                                ^

"/tmp/OCLZw2eDE.cl", line 118: warning: function "load48" was declared but
          never referenced
  BLAKE2_LOCAL_INLINE(uint64_t) load48( const void *src )
                                ^

"/tmp/OCLZw2eDE.cl", line 130: warning: function "store48" was declared but
          never referenced
  BLAKE2_LOCAL_INLINE(void) store48( void *dst, uint64_t w )
                            ^

"/tmp/OCLZw2eDE.cl", line 141: warning: function "rotl32" was declared but
          never referenced
  BLAKE2_LOCAL_INLINE(uint32_t) rotl32( const uint32_t w, const unsigned c )
                                ^

"/tmp/OCLZw2eDE.cl", line 146: warning: function "rotl64" was declared but
          never referenced
  BLAKE2_LOCAL_INLINE(uint64_t) rotl64( const uint64_t w, const unsigned c )
                                ^

"/tmp/OCLZw2eDE.cl", line 151: warning: function "rotr32" was declared but
          never referenced
  BLAKE2_LOCAL_INLINE(uint32_t) rotr32( const uint32_t w, const unsigned c )
                                ^

"/tmp/OCLZw2eDE.cl", line 220: warning: function "blake2b_clear_lastblock" was
          declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_clear_lastblock( blake2b_state *S )
                           ^

"/tmp/OCLZw2eDE.cl", line 238: warning: function
          "blake2b_param_set_digest_length" was declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_param_set_digest_length( blake2b_param *P, const uint8_t digest_length )
                           ^

"/tmp/OCLZw2eDE.cl", line 244: warning: function "blake2b_param_set_fanout"
          was declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_param_set_fanout( blake2b_param *P, const uint8_t fanout )
                           ^

"/tmp/OCLZw2eDE.cl", line 250: warning: function "blake2b_param_set_max_depth"
          was declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_param_set_max_depth( blake2b_param *P, const uint8_t depth )
                           ^

"/tmp/OCLZw2eDE.cl", line 256: warning: function
          "blake2b_param_set_leaf_length" was declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_param_set_leaf_length( blake2b_param *P, const uint32_t leaf_length )
                           ^

"/tmp/OCLZw2eDE.cl", line 262: warning: function
          "blake2b_param_set_node_offset" was declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_param_set_node_offset( blake2b_param *P, const uint64_t node_offset )
                           ^

"/tmp/OCLZw2eDE.cl", line 268: warning: function "blake2b_param_set_node_depth"
          was declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_param_set_node_depth( blake2b_param *P, const uint8_t node_depth )
                           ^

"/tmp/OCLZw2eDE.cl", line 274: warning: function
          "blake2b_param_set_inner_length" was declared but never referenced
  BLAKE2_LOCAL_INLINE(int) blake2b_param_set_inner_length( blake2b_param *P, const uint8_t inner_length )
                           ^

2 errors detected in the compilation of "/tmp/OCLZw2eDE.cl".
Frontend phase failed compilation.

Perfect @danwxyz!. I'm currently working on solving this problem, I was hoping it wasn't just me with this issue.
I assume you're using catalyst drivers? Which card?

Radeon 7970 and yes I am using catalyst drivers (proprietary ones downloaded from AMD's site).

Yep cool. I'm working on this. Hopefully will get it sorted soon.

Awesome. Thanks!

This is now the same issue as #22


Add GITHUB_TOKEN env var to the npm install step (take 2)

Trying to fix the Azure build failures: https://dev.azure.com/github/Atom/_build/results?buildId=35928

Ok, got the Azure pipelines correctly building... now it's time for Travis 😅

Ok, it's going to be challenging to fix the issue with Travis, at least for external PRs: the main issue is that Travis does not expose env variables to external PRs for security reasons.
I think that the behaviour of Travis is correct in most of the cases: by exposing env vars to PRs somebody could create a malicious PR and get the value of any variable without any code review from a repo owner... In this case, though, the vector attack is almost non-existant: the GITHUB_TOKEN that we're using as an env var is a completely unprivileged token with only read-access to the Atom public repos which allows us to get a higher rate limit from the GitHub API than unauthenticated requests... so there's not much value on stealing that token.
In the case of Azure pipelines and AppVeyor I could expose the single GITHUB_TOKEN env var to PRs, so the only problem remains with Travis.
I see 2 possible solutions here:
Find out if we can disable Travis builds from PRs (or from everywhere)
From a previous conversation with @jasonrudolph :

We rely on Travis for Linux builds of PRs and release branches

Since we also do Linux builds on Azure right now, we may be able to disable the Travis ones, but somebody with more familiarity on our build system will know better.
Stop using vscode-ripgrep to download the ripgrep binaries
This means that we'll have to find another way to either download the binaries for each platform or build them ourselves during our CI builds.
If follow this path, we'll have to take care of a few things that vscode-ripgrep currently does for us:

Build a binary for each platform (more info.
Update the binaries every time there's a new version of ripgrep.
Be sure that we don't include multiple ripgrep binaries for different platforms on each installation, since each binary is quite big.

I'm not sure which solution it's going to be easier to implement, but my gut tells me that's going to be the first one...

Ups, it seems like atom.io uses the linux artifacts created by Travis builds 😞.

Find out if we can disable Travis builds from PRs

I think this might be the way to go. A few thoughts:

For all PRs, we'd like to be able to verify that the changes can still build successfully on Linux. The Azure DevOps Linux builds already meet this need. (example)
For release branches inside the atom/atom repo (e.g., the 1.35-releases branch), we need to publish build artifacts. The Travis CI build currently performs this duty. The Azure DevOps build does not yet perform this duty. For the near term, it's probably easiest to continue having the Travis CI build perform this duty. Since this is only needed for branches inside the atom/atom repo (i.e., not from forks), these builds will have access to the protected environment variables. With that in mind, if there's a way to tell Travis CI to not build PRs from forks (and instead just let Azure DevOps run those builds), then I think that could meet our needs.

Thanks for the response @jasonrudolph!

The Travis CI build currently performs this duty. The Azure DevOps build does not yet perform this duty.

Makes sense... Just to understand better, what we would need to do to generate linux releases from Azure DevOps is to make both github/atom.io and atom/atom-release-publisher use the artifacts generated from Azure right?

For the near term, it's probably easiest to continue having the Travis CI build perform this duty.

I agree, from what I saw the changes needed to atom.io and the release publisher website are not trivial...

With that in mind, if there's a way to tell Travis CI to not build PRs from forks (and instead just let Azure DevOps run those builds), then I think that could meet our needs.

I think that this should be possible, I'm gonna take a look at it 😄

Just to understand better, what we would need to do to generate linux releases from Azure DevOps is to make both github/atom.io and atom/atom-release-publisher use the artifacts generated from Azure right?

@rafeca: That sounds right. As prior art, https://github.com/atom/maintainers-log/issues/148 tracked the process of migrating the macOS builds from CircleCI to Azure DevOps, and most of the same concerns likely apply to migration the Linux builds from Travis CI to Azure DevOps.
https://github.com/github/atom.io/pull/1267 and https://github.com/atom/atom-release-publisher/pull/14 handled the atom.io and atom-release-publisher tasks respectively.

Thanks for the background! That's gonna be useful if we ever want to do that migration 😄
Something I realized also is that the atom-release-publisher logic assumes that there's a build status for each platform (code), which is currently the case:

If we ever want to build releases for multiple platforms from Azure we'd have to change either that logic or make Azure report a separate status for each platform.

Ok, I've been able to disable Travis builds on Pull Requests and after force-pushing a commit on this one it seems that Travis doesn't pick it up anymore 😄
Once the other builds finish I'll merge this PR and check that everything is fine on master

Ok, I've been able to disable Travis builds on Pull Requests and after force-pushing a commit on this one it seems that Travis doesn't pick it up anymore 😄

Oh, cool. Did that require a configuration change on https://travis-ci.com?

Yup exactly, I disabled the following checkbox on the project settings for Atom:


Functional test added by mistake, removed now

/azp run

/azp run

/azp run

/azp run

/azp run


Add mobile ecosystem image

Add mobile image for the following pages:
How Carbon Works
Designing>Get started
Developing

This is related to the design issue: #943

Hey team! Please add your planning poker estimate with Zenhub @alisonjoseph @andreancardona @francinelucca @jdharvey-ibm


How to pass additional attributes to /create-account

Currently, I create an account by calling /create-account (JSON API) but it only accepts email/password. I'd like to pass some additional attributes (user firstname/lastname) in that request and have them stored in a separate users table which points to the accounts table.
How should I go about that? If it's not possible with the /create-account endpoint, I could use the create_account library method directly from within my own endpoint, but I'm not sure whether in doing so I'd be giving up on some rate-limiting middleware in the default endpoint.
Thanks

Ah, I see I need to use the before_create_account and after_create_account hooks. Closing!


Return $DOKKU_NOT_IMPLEMENTED_EXIT when a non-existing command is called

Should be pretty self-explanatory :)

:+1:

Thx a bunch :)


Please update for TLD 2.06 version

Hi ds5678
First thanks for the good work for the long dark mods
Second, Could you please update this mod for the 2.0.6 version
Thanks alot and stay safe
Kareem Mansour
<EMAIL_ADDRESS>

I hope you're not going to post this on all of my mod repositories. I am aware that any mod not updated is broken.


chore(master): release 1.5.8

:robot: I have created a release beep boop
1.5.8 (2023-07-18)
Miscellaneous

deps: update quay.io/keycloak/keycloak docker tag to v22.0.1 (5b23591)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/wayofdev/docker-project-services/releases/tag/v1.5.8 :sunflower:


Custom ttl options for each collection and fixed tests

@mcollina
Changes

Feat: option to set custom TTL to each collection: subscriptions, incoming, outgoing, will, retained (keep back compatibility)
Docs: Updated readme with new ttl features
Fix: Remove previous created indexes on connect
Fix: deprecation warning of url.parse with native-url npm package
Fix: test.js mongodb deprecation warnings
Updated mqemitter-mongodb to version 6.0.1
Added createRetainedStreamCombi and outgoingEnqueueCombi methods
Dropped nodejs 6 support from .travis.yml

@mcollina  I have also made the support for createRetainedStreamCombi and outgoingEnqueueCombi

Dropping nodejs 6 support in travis as also aedes-persistence-redis did it. Tests are good now

@mcollina I have tried to upgrade aedes-persistenct to 8.0.0 but there are some tests that fails. Seems all tests are related to the property messageId that is null instead of undefined. I don't know if this should be fixed in aedes-persistence tests abstract.js or in this library. Let me know if I need to change something.

The behavior has changed, and the behavior of this library would have to be fixed.

Ok if you explain me what has changed I could try to fix it in another pr. What about this one? Can you make a review?
Daniel

On 13 Dec 2019, at 16:02, Matteo Collina<EMAIL_ADDRESS>wrote:

The behavior has changed, and the behavior of this library would have to be fixed.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

See https://github.com/mcollina/aedes-persistence/pull/31, https://github.com/mcollina/aedes-persistence/pull/33 and https://github.com/mcollina/aedes-persistence/pull/32

@mcollina Just one question: Why this very long timeout in the test?

I think it's ok now. Could you take a look to #27 please? It is a critical bug and I think it's the root cause of all my problems with aedes right now.

@mcollina Travis build fails for no reason, I try to trigger new builds hoping it fixes, seems stucked

@mcollina should be ok now

I think dropping indexes at every start is going to be extremely disruptive for long-running operations. Can you keep that behavior behind an option?

@mcollina Yout right, fixed

@mcollina Done. There is one test that fails sometimes, it check two dates and the difference is of 1ms, I have no idea why

@mcollina Should be ok now


Incorporate "keyless" verification of base images.

This change enables folks to start verifying their base images are signed against Fulcio by specifying COSIGN_EXPERIMENTAL=true, which will ensure each digest we intend to base an image on is verified.
Unless COSIGN_EXPERIMENTAL=true is enabled, this change will have no effect.
When COSIGN_EXPERIMENTAL=true is enabled, this change will verify base image digests, and emit a WARNING: when they are not signed (the gcr.io/distroless images are now signed!).
When COSIGN_EXPERIMENTAL=true is enabled AND --strict is passed, then failure to verify a base image digest will fail the ko command.
Related: https://github.com/google/ko/issues/356
Related: https://github.com/google/ko/pull/433

Codecov Report

Merging #436 (fdd8787) into main (501111b) will decrease coverage by 0.74%.
The diff coverage is 3.57%.

@@            Coverage Diff             @@
##             main     #436      +/-   ##
==========================================
- Coverage   53.46%   52.71%   -0.75%
==========================================
  Files          36       36
  Lines        1835     1863      +28
==========================================
+ Hits          981      982       +1
- Misses        703      729      +26
- Partials      151      152       +1

Impacted Files
Coverage Δ

pkg/commands/config.go
46.80% <3.57%> (-10.72%)
:arrow_down:

Continue to review full report at Codecov.

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

I would like to take a chainsaw to the cosign dependency graph.

Ok cool, as expected with --strict the windows leg fails because the mcr..... image for Windows isn't signed, duh...

I would like to take a chainsaw to the cosign dependency graph.

Do it!

... and https://github.com/sigstore/cosign/issues/666 which seems very popular 😅

Needs rebase.

Needs rebase.

Done


Refactor core/environment&stack module - part 2

Feature or Bugfix

Refactoring

Detail

All queries moved from resolvers and services to *_repositories
Stack renamed to StackRepository

Relates

#741

Security
Please answer the questions below briefly where applicable, or write N/A. Based on
OWASP 10.

Does this PR introduce or modify any input fields or queries - this includes
fetching data from storage outside the application (e.g. a database, an S3 bucket)?

Is the input sanitized?
What precautions are you taking before deserializing the data you consume?
Is injection prevented by parametrizing queries?
Have you ensured no eval or similar functions are used?

Does this PR introduce any functionality or component that requires authorization?

How have you ensured it respects the existing AuthN/AuthZ mechanisms?
Are you logging failed auth attempts?

Are you using or adding any cryptographic features?

Do you use a standard proven implementations?
Are the used keys controlled by the customer? Where are they stored?

Are you introducing any new policies/roles/users?

Have you used the least-privilege principle? How?

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

Tested changes locally and created an environment - all functionality working as expected
Think just need to fix the Stack type hint (in the comment above)


first pass at linux gpu support

This is the basic implementation of enabling a linux build with GPU support.
Building for Linux with CPU support is unchanged (generate and build as normal).
Building for Linux with GPU requires generating with the gpu tag. This is to allow non-GPU linux builds to continue to be built locally without issue.
go generate ./... -tags gpu
Follow up:

Packaging nvidia drivers or downloading them automatically
Better heuristics for determining the number of layers to load into GPU

Part of #259

I think the instructions on this are incomplete, or there's a bug of some description.  I've spent about three hours trying to get this version of ollama to utilize the GPU on Google Cloud Platform VM's (n1-standard-1) with GPU's (T4, L4, A100) and I have not been successful at getting it to call the GPU at all.  I've tried a few different images, including pre-made CUDA images and clean Debian 11 and 12 images that I installed NVIDIA drivers on manually.  Can you share your testing configuration to see if we can reproduce the GPU functionality you were able to achieve?

@Bronzite GPU build requires the gpu flag when calling go generate. Ensure you're passing this value otherwise GPU support will not be available. For more information, see the PR description

Hi @Bronzite, thanks for giving this a test. I was actually testing this on a GCP VM using a T4 also. Here's how I was testing it in detail:

checkout the brucemacd/linux-gpu branch with the changes
generate the required dependencies with the gpu flag: go generate ./... -tags gpu
build the binary go build .
and run as normal:

./ollama serve &
./ollama run llama2

Might also be worth checking if the nvidia-smi driver installed successfully? You can check by running nvidia-smi. In my case when running the GCP VMs it prompted to install this when I first connected.

@BruceMacD Thanks, that's good to know.  I think I was doing it the way described, and I did try a few variants of the generate command.  I'm now, but knowing the T4 is the reference configuration suggests I am doing something wrong.  I'll take another whack and see if I can figure out what later this weekend.

OK, I ran through my tests a couple more times, and I'm pretty convinced that there's an issue here.  Using both GPU and non-GPU configurations, it appears we're only running on the CPU's in all configurations.  I verified both by using nvidia-smi pmon and building a GPU-less machine and running the same code on that.  Exact test protocol is below for anyone who wants to check my work, or point out where I'm screwing up the GPU configuration.
Ollama Linux GPU Test
Test Data
Date: 3 September 2023
Tester: John Brewer<EMAIL_ADDRESS>Test Procedure
GPU Machine Test
Configuration
Google Cloud Platform
ollama-gpu-test
Zone: us-west1-b
Machine: n1-standard-4 with 1x NVIDIA T4
Image: Deep Learning VM with CUDA 11.8 M110
Boot Disk Type: Balanced Persistent Disk
Size: 50 GB
Test Protocol
This is a two-session SSH test.  The second session is used to provide a running status of the GPU to confirm if it is experiencing load while running the LLM.

Connect to instance via SSH [Session A]
[Session A] Respond with "Y" to prompt to install NVIDIA Driver
[Session A] git clone https://github.com/jmorganca/ollama
[Session A] cd ollama
[Session A] git checkout brucemacd/linux-gpu
[Session A] (check step) cat docs/development.md.  Verify development.md contains GPU build instructions.
[Session A] cd ..
[Session A] wget https://go.dev/dl/go1.21.0.linux-amd64.tar.gz
[Session A] sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz
[Session A] export PATH=$PATH:/usr/local/go/bin
[Session A] echo "export PATH=\$PATH:/usr/local/go/bin" >> ~/.profile
[Session A] (check step) go version.  Verify output is go version go1.21.0 linux/amd64
[Session A] cd ollama
[Session A] go generate ./... -tags gpu
[Session A] go build .
Connect to instance via SSH [Session B]
[Session B] (check step) nvidia-smi.  Verify output includes Tesla T4
[Session B] nvidia-smi pmon
[Session A] ./ollama serve &
[Session A] ./ollama pull llama2:7b
[Session A] ./ollama run llama2:7b
[Session A] Please summarize the Hitchhiker's Guide to the Galaxy by Douglas Adams.

At this point in the test procedure, observe on the monitor running on Session B that no load is being placed on the GPU.  This point can be more explicitly by running top in another session, which will show the server process consuming all or nearly all available CPU resources, while the GPU remains at idle.  In my test, the result was generated in 2m34s.

The Hitchhiker's Guide to the Galaxy is a science fiction comedy series created by Douglas Adams. Here's a summary of the story:
The book follows the misadventures of an unwitting human named Arthur Dent and his friend Ford Prefect, who is actually an alien researching Earth for a travel guide. When Earth is destroyed to make way for a hyperspace bypass, they hitch a ride on a passing spaceship and embark on a journey through space.
The duo encounters various eccentric characters and species, including the depressed robot Marvin, the sinister Zaphod Beeblebrox (Ford's friend and the President of the galaxy), and Trillian, a human woman who is the only survivor of Earth's destruction. Along the way, they discover the true purpose of the bypass: to create a hyperspace express that will allow aliens to travel to distant planets without the need for spacecraft.
The group also learns about the Eye of God, a superweapon that can destroy entire galaxies, and the Ultimate Question, which has the power to answer any question asked of it. However, they fail to find the Answer to the Ultimate Question before Earth is destroyed.
Throughout their journey, the characters face various challenges, including being chased by a group of mice in space suits and encountering a race of beings who are obsessed with painting. They also discover that the universe is controlled by a computer named Deep Thought, which takes 7.5 million years to calculate the answer to the Ultimate Question.
In the end, the characters succeed in finding the Answer to the Ultimate Question and preventing the destruction of the universe. However, they soon realize that the question they found is actually meaningless, as the Universe itself has no inherent meaning. The book ends with the characters contemplating the absurdity of existence and their own place in it.
Overall, The Hitchhiker's Guide to the Galaxy is a humorous and imaginative tale that pokes fun at science fiction tropes and explores themes of existence, meaning, and the absurdity of life in the universe.

Non-GPU Machine Test
GPU Machine Test
Configuration
Google Cloud Platform
ollama-gpuless-test
Zone: us-west1-b
Machine: n1-standard-4
Image: Debian GNU/Linux 12 (bookworm)
Boot Disk Type: Balanced Persistent Disk
Size: 50 GB
Test Protocol
This test is intended to demonstrate that performance on an equivalently-sized VM with no GPU matches the performance of the GPU-equipped machine.

Connect to instance via SSH [Session A]
[Session A] sudo apt-get update; sudo apt-get install git build-essential gcc cmake -y
[Session A] git clone https://github.com/jmorganca/ollama
[Session A] cd ollama
[Session A] git checkout brucemacd/linux-gpu
[Session A] (check step) cat docs/development.md.  Verify development.md contains GPU build instructions.
[Session A] cd ..
[Session A] wget https://go.dev/dl/go1.21.0.linux-amd64.tar.gz
[Session A] sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz
[Session A] export PATH=$PATH:/usr/local/go/bin
[Session A] echo "export PATH=\$PATH:/usr/local/go/bin" >> ~/.profile
[Session A] (check step) go version.  Verify output is go version go1.21.0 linux/amd64
[Session A] cd ollama
[Session A] go generate ./...
[Session A] go build .
[Session A] ./ollama serve &
[Session A] ./ollama pull llama2:7b
[Session A] ./ollama run llama2:7b
[Session A] Please summarize the Hitchhiker's Guide to the Galaxy by Douglas Adams.

Observing the output speed, and optionally the top command on the Linux server from another session, you'll see performance almost identical to the GPU configuration.  Here is the result I received from the GPU-less VM, which generated in 2m5s:

The Hitchhiker's Guide to the Galaxy is a science fiction comedy series created by Douglas Adams, which follows the misadventures of an unwitting human and his alien friend as they travel through space. Here's a summary of the series:
The book begins with the destruction of Earth by a race of mice who are tired of humans exploiting the planet's resources. The protagonist, Arthur Dent, is rescued by his friend Ford Prefect, who turns out to be an alien researching Earth for a travel guide. They hitch a ride on a passing spaceship and embark on a journey through space, encountering various strange and humorous situations along the way.
The duo joins a intergalactic mission to save Earth from destruction by a race of super-intelligent beings known as the Vogons. Along the way, they meet a Zaphod Beeblebrox, the two-headed president of the galaxy, and Trillian, a human woman who was also rescued by Zaphod.
The group eventually discovers that the Earth's destruction was just a ploy to build a hyperspace bypass, which they must stop before it's too late. In the end, they succeed in stopping the bypass and saving Earth, but not without encountering many more absurd and humorous situations along the way.
Throughout the series, Adams explores themes of existence, technology, bureaucracy, and the meaning of life. He also pokes fun at various aspects of science fiction tropes, such as the concept of faster-than-light travel and alien invasions. The book is known for its clever wordplay, absurd situations, and satirical humor, which have made it a cult classic.

Conclusion
I don't believe this build of ollama is actually using the GPU on the VM.

Same results on Fedora 38 + rtx3060 (Driver Version: 535.104.05   CUDA Version: 12.2)
ollama utilize only CPU

My environment is
ubuntu 20.02
nvcc: NVIDIA (R) Cuda compiler driver
Cuda compilation tools, release 12.2, V12.2.140

I followed the method as showed above
git clone https://github.com/jmorganca/ollama
cd ollama
git checkout brucemacd/linux-gpu

Branch 'brucemacd/linux-gpu' set up to track remote branch 'brucemacd/linux-gpu' from 'origin'.

Thanks to everyone for testing this, going to take another look at this now.

This will work now, I broke the GPU build when I tried to preserve the CPU build with the gpu flag.
Here's the steps:

pull the most recent changes
go generate ./...
go build .
Start the server ./ollama serve &
Now when you run a model it will use the GPU ./ollama run llama2

I was pretty conservative with the number of model layers to load into the GPU by default to prevent crashes. If you want to play with the number of layers loaded into the GPU you can specify more layers in a Modelfile.
FROM llama2
PARAMETER num_gpu 1000

This will load all the GPU layers (if less than 10000 layers are present).
Then create and run it:

./ollama create gpu-llama -f path/to/Modelfile
./ollama run gpu-llama

@BruceMacD Confirmed, that did the job.  Prompt that was taking 150-180 seconds is now taking 47 seconds and using the T4 in the test environment.  Well done, and thank you!

I tried the update again, got such errors
Consolidate compiler generated dependencies of target server
[ 90%] Building CXX object examples/server/CMakeFiles/server.dir/server.cpp.o
[100%] Linking CXX executable ../../bin/server
[100%] Built target server
CMake Error: Unknown argument --fresh
CMake Error: Run 'cmake --help' for all supported options.
Error: could not load cache
llm/llama.cpp/generate_linux.go:10: running "sh": exit status 1

seems it doesn't execute sh  generate_linux.sh,
if which nvcc > /dev/null; then
  cmake --fresh -S ggml -B ggml/build/cpu -DLLAMA_CUBLAS=on -DLLAMA_ACCELERATE=on -DLLAMA_K_QUANTS=on
  cmake --build ggml/build/cpu --target server --config Release

  cmake --fresh -S gguf -B gguf/build/gpu -DLLAMA_CUBLAS=on -DLLAMA_ACCELERATE=on -DLLAMA_K_QUANTS=on
  cmake --build gguf/build/gpu --target server --config Release

wondering is it an error due to the cmake version , my current cmake version is  3.20.2

wondering is it an error due to the cmake version , my current cmake version is 3.20.2

When I got this to work, I was using cmake 3.18.4 on Debian 11.

Great PR. 🚀
Works on Nvidia T4 (multi-gpu) set up.

Hello I'm getting this error when running go generate ./... in my ubuntu server:
go generate ./...
Submodule path 'ggml': checked out '9e232f0234073358e7031c1b8d7aa45020469a3b'
-- CMAKE_SYSTEM_PROCESSOR: x86_64
-- x86 detected
-- Configuring done (0.1s)
-- Generating done (0.1s)
-- Build files have been written to: /home/www/ollama/llm/llama.cpp/ggml/build/cpu
[ 27%] Built target ggml
[ 36%] Building CXX object CMakeFiles/llama.dir/llama.cpp.o
[ 45%] Linking CXX static library libllama.a
[ 45%] Built target llama
[ 72%] Built target common
[ 81%] Generating build details from Git
-- Found Git: /usr/bin/git (found version "2.25.1")
[ 81%] Built target BUILD_INFO
[ 90%] Building CXX object examples/server/CMakeFiles/server.dir/server.cpp.o
[100%] Linking CXX executable ../../bin/server
[100%] Built target server
Submodule path 'gguf': checked out '53885d7256909ec3e2176cdc2477f3986c15ec69'
-- CMAKE_SYSTEM_PROCESSOR: x86_64
-- x86 detected
-- Configuring done (0.1s)
-- Generating done (0.1s)
-- Build files have been written to: /home/www/ollama/llm/llama.cpp/gguf/build/cpu
[ 27%] Built target ggml
[ 45%] Built target llama
[ 72%] Built target common
[ 81%] Generating build details from Git
-- Found Git: /usr/bin/git (found version "2.25.1")
[ 81%] Built target BUILD_INFO
[100%] Built target server
Submodule path 'ggml': checked out '9e232f0234073358e7031c1b8d7aa45020469a3b'
-- Found CUDAToolkit: /usr/include (found version "10.1.243")
-- cuBLAS found
-- The CUDA compiler identification is NVIDIA 10.1.243
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Check for working CUDA compiler: /usr/bin/nvcc - skipped
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
-- Using CUDA architectures: 52;61;70
-- CMAKE_SYSTEM_PROCESSOR: x86_64
-- x86 detected
-- Configuring done (1.8s)
-- Generating done (0.1s)
-- Build files have been written to: /home/www/ollama/llm/llama.cpp/ggml/build/gpu
[  8%] Building C object CMakeFiles/ggml.dir/ggml.c.o
[ 16%] Building C object CMakeFiles/ggml.dir/ggml-alloc.c.o
[ 25%] Building CUDA object CMakeFiles/ggml.dir/ggml-cuda.cu.o
nvcc fatal   : 'f16c': expected a number
make[3]: *** [CMakeFiles/ggml.dir/build.make:104: CMakeFiles/ggml.dir/ggml-cuda.cu.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:478: CMakeFiles/ggml.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:1911: examples/server/CMakeFiles/server.dir/rule] Error 2
make: *** [Makefile:881: server] Error 2
llm/llama.cpp/generate_linux.go:10: running "cmake": exit status 2

This is the cmake version I'm already using
cmake --version
cmake version 3.27.4

I tried bellow code without success:
cd llm/llama.cpp/ggml
cmake -DLLAMA_CUBLAS=1 -DCMAKE_CUDA_COMPILER=/usr/lib/nvidia-cuda-toolkit/bin/nvcc

Hi @BruceMacD the branch brucemacd/linux-gpu  is not available?

@xzitlou this is merged into the main branch now so the brucemacd/linux-gpu got automatically deleted. You can follow the instructions from the description in the main branch and it should work on Linux with GPU support. It will be in an official release very soon.

thanks @BruceMacD !

@xzitlou No problem. I forgot I merged another change on this yesterday, so check the instructions in docs/development.md for the most up to date instructions on building for linux GPU.


Fix missing libraries bug in make bundle

Description

Type of change

[x] Bug-fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

References

How has this been tested?

[ ] example: the test suite for my feature covers cases x, y, and z
[ ] example: all tests pass with my change

Final checklist:

[ ] My PR is the minimum possible work for the desired functionality
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works

@sofroniewn @ziyangczi fixed

Thanks!  Do you happen to know why these libs are now necessary when it used to build fine without them?

Thanks! Do you happen to know why these libs are now necessary when it used to build fine without them?

Since Qt 5.15 part of xcb dependencies are not bundled and need to be installed in the system.  See https://codereview.qt-project.org/c/qt/qtbase/+/253905.

Good to know, thanks again


Added a --skip-deps flag to skip installing Amplify JS dependencies

Issue #, if available:
#146
Description of changes:
In this PR I've added a --skip-deps or -s flag to the awsmobile init command. When this flag is set, Amplify JS dependencies will not be installed. A message "Skipping Amplify Dependency installation" will be shown.
See issue #146 for more details about why this is needed.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Support for the Amplify library is an important intended usage of the awsmobile cli, the current implementation is indeed a little rigid on this by installing the Amplify library at init, but init it a one pass operation, the cli user can easily remove the dependencies afterwards without loosing the cli functionalities.

@UnleashedMind I understand that Amplify is an important part of the CLI.
Do you have any recommendations for addressing the linked issue (#146)? Are you suggesting that we let awsmobile init clobber the existing package.json, and then reset it somehow? We could re-check it out from Git and then re-run yarn install. It seems pretty inelegant though.


[workloadmeta] Make remote workload meta more generic and add unit tests

What does this PR do?
This PR makes remote workload meta more generic and add unit tests.

Motivation
We plan to add a remote process collector. Since most of the code should be the same, we want to make remote workloadmeta more generic.
Unit tests are also necessary.

Additional Notes
This PR does not target main and is only the first part of the implementation of the RemoteProcessCollector. We'll add a release note later

Possible Drawbacks / Trade-offs
None

Describe how to test/QA your changes
See #14482.
Run unit tests. Deploy the agent with process collection enabled and make sure processes are collected with container tags.
  processAgent:
    enabled: true
    processCollection: true

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

Note that the test yaml is wrong. It should be:
process_config:
  process_collection: {enabled: true}
  language_detection: {enabled: true}

Note that the test yaml is wrong. It should be:
process_config:
  process_collection: {enabled: true}
  language_detection: {enabled: true}

I forgot to add that I was referring to the helm chart


Epinio server not working on localhost

Hi
The option to run the localhost server to access Applications is not working on v0.0.18, if I run epinio server on v0.0.17 I can browse organizations and applications and connect to the route. On v0.0.18 the server starts but no information on the application is visible.
System details:
openSUSE Tumbleweed 20210704
Docker 20.10.6_ce-1.2
k3d version v4.4.6
k3s version v1.21.1-k3s1 (default)
Epinio Version: v0.0.18
As a side note, incorrect version numbers are shown for epinio;
:~> epinio version

Epinio Version: v0.0.18
Go Version: go1.16.5

:~> epinio info

Epinio Environment

Platform: k3s
Kubernetes Version: v1.21.1+k3s1
Gitea Version: unavailable
Epinio Version: v0.0.17 <=== incorrect

Using a freshly created k3d/k3s cluster and installing the epinio I do not see the incorrect version.
work@tagetarl:~/SUSE/dev/epinio> ep version
Epinio Version: v0.0.18-15-g0a86081
Go Version: go1.14.15
work@tagetarl:~/SUSE/dev/epinio> ep info

✔  Epinio Environment
Platform: k3s
Kubernetes Version: v1.20.6+k3s1
Gitea Version: unavailable
Epinio Version: v0.0.18-15-g0a86081

So. I suspect that your cluster is still running the old version of epinio for the server, somehow.
I further suspect that this may also be the cause of your other issues.

I verified that the Epinio version returned by epinio info is the one of the server binary. This means your cluster was somehow still running the epinio server v0.0.17 (previous install?). @malcolmlewis can you re-try with consistent versions and see if your problems are solved? Start with a fresh cluster to be sure.

I see a similar effect with a local install on a fresh minikube cluster:
> epinio info

✔  Epinio Environment
Platform: minikube
Kubernetes Version: v1.21.2
Gitea Version: unavailable
Epinio Version: unavailable

I had that when my epinio config was not up to date. Can you try some other epinio command to see if cli can talk to the server? E.g. epinio apps list. If not, try running this first: epinio config update-credentials and then re-try.

Even after running epinio config update-credentials epinio apps list fails with
> epinio apps list

🚢 Listing applications
Organization: workspace
error listing apps: Get "https://epinio.<IP_ADDRESS>.omg.howdoi.website/api/v1/orgs/workspace/applications": dial tcp <IP_ADDRESS>:443: connect: network is unreachable

So my problem might be related to using --skip-default-org during installation ?!

if you are using a development build of epinio, the steps to install epinio included skipping the creation of the default org (https://github.com/epinio/epinio/blob/main/docs/developer/howtos/development.md#installing-epinio). After patching the server deployment (see the instructions on the link), you should run epinio orgs create workspace to create it.

Hi
Still no luck here, cleaned out all images and started test again;
epinio apps list

🚢 Listing applications
Organization: hello

✔  Epinio Applications:
|    NAME    | STATUS |                  ROUTES                  | SERVICES |
|------------|--------|------------------------------------------|----------|
| helloworld | 1/1    | helloworld.<IP_ADDRESS>.omg.howdoi.website |          |

epinio config update-credentials

🚢 Updating the stored credentials from the current cluster

✔  Ok

epinio info

✔  Epinio Environment
Platform: k3s
Kubernetes Version: v1.21.2+k3s1
Gitea Version: unavailable
Epinio Version: v0.0.18

@malcolmlewis are you trying to run the server outside the cluster? Right now, the cli discovers the server's url by looking at the cluster ingresses. There is a plan to change this and then you should be able to run the server outside the cluster but for now, that is not possible. Do you need that for debugging/development? If yes, then there is already a way to do that:

https://github.com/epinio/epinio/blob/main/docs/developer/howtos/development.md#installing-epinio
https://github.com/epinio/epinio/blob/main/docs/developer/howtos/behind-the-curtains.md

@jimmykarily yes outside the cluster, on the host machine, this feature works if I switch to v0.0.17? I'm testing the rpm version I built on OBS (static binary).

I don't think the server works outside the cluster in v0.0.17 either. I mean, the server can probably start but there is no way to point the cli to it. The comment you sent above shows that epinio apps list works as expected. Isn't that enough to tell that it's working?
As long as you build a tagged version of Epinio, you can simply install it as per the docs. You don't need to patch any deployment or anything. The only exception is when we first tag a commit, until the release pipeline is finished and the new images for the epinio server available. But that usually only takes some minutes.

@jimmykarily Hi, perhaps some clarification on the purpose of the server is needed?
In version v0.0.17 if I run from the cli epinio sever --port 30000 and open a web browser to localhost:30000 I can select the name in the dropdown and the URL is populated in the browser window, click the link and opens the page. Is this not the intended purpose of the server option on the host?

The epinio binary is really 2 applications in one. The same binary is both the cli and the server. Have a look at the image here:
https://github.com/epinio/epinio/blob/main/docs/user/explanations/detailed-push-process.md#the-process-visualized
The "Epinio API" box in the image, is actually the epinio binary running the epinio server command. The user is running the same binary from outside the cluster in order to talk to the api (e.g. by running the epinio push command).
The user is not supposed to run the epinio server command ever. When you run epinio install, epinio sets up the various components on your cluster. One of them is the epinio API which runs the server.
I hope this clarifies how epinio server is used.

@jimmykarily understood now, this issue can be closed then. Perhaps the completion should be removed or a reference in the inline help?

Created a PR to improve the inline docs: https://github.com/epinio/epinio/pull/685


feat(other): welcome table

Motivation
This implements a state-less "welcome" table.
Accessible for all authenticated users, everyone becomes moderator (most likely an issue, but fine for now).
How to test

Visit http://localhost:3000/
Click on the sidebar and then on "DreamMall Coffeetime"

It's also deployed at https://join-welcome-table.git.dreammall.earth/
squashed commits

frontend: join welcome table route
backend: write software tests

close #2141

We could approve it as it is. I did not expect another resolver. I did not expect business logic in the client. Why change from route string to file system routing? Now we have both :(

File system based routing is actually the default, but if desired, we can surely use route strings. :shrug:
@Mogge regarding the resolvers, I created this PR for you #2380 have a look what would change. I think it's cleaner, if we leave it this way.
Usually it doesn't hurt to have a separate resolver. For schema authorization, it's a little easier.


Error while installing libo3d3xx framegrabber

Hello,
i follow the instruction to install libo3d3xx on my linux 14.04 and i do it without problems for camera but when i try to do it for frammegrabber i have the following issue:
-- UBUNTU_VERSION: 14.04.4
-- UBUNTU_MAJOR: 14
-- UBUNTU_MINOR: 04
-- UBUNTU_PATCH: 4
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   program_options
--   system
CMake Error at /home/vrebaud/devel/libo3d3xx/cmake/modules/Findo3d3xx_camera.cmake:22 (include):
include could not find load file:
/o3d3xx_camera/o3d3xx_camera-config-version.cmake

Call Stack (most recent call first):
CMakeLists.txt:69 (find_package)
-- Could NOT find O3D3XX_CAMERA (missing:  O3D3XX_CAMERA_LIBRARIES O3D3XX_CAMERA_INCLUDE_DIRS)
CMake Error at /home/vrebaud/devel/libo3d3xx/cmake/modules/Findo3d3xx_camera.cmake:54 (message):
o3d3xx_camera: 0.4.5 !=
Call Stack (most recent call first):
CMakeLists.txt:69 (find_package)
-- Configuring incomplete, errors occurred!
it didn't happen during my last installation of the 0.4.0 version.
Do you have any idea ??
thanks

Where did you install o3d3xx-camera? It is not in a standard location. The Find file will look for it in: /opt/libo3d3xx or /usr.

Hello, I deal with the same problem. I tried to depackage the deb file of the camera module with:
sudo dpkg -i --instdir=. libo3d3xx-camera_0.4.5_ubuntu-14.04.4_amd64.deb
But then I still get the error while cmake the framegrabber module. How do I fix it?
Thanks

I follow exactly the installing instruction.
It works with an older version 0.4.0 that I compiled few month ago.
A friend did the same because he had the same issue.
I install o3d3xx-camera by doing a :
sudo dpkg -i libo3d3xx-camera_0.4.5_ubuntu-14.04.4_i386.deb
and then issues while doing the "make" for libo3d3xx-framegrabber

@HeloiseFFMH
For the moment e only advice i can give you is to checkout to an older version :s
v0.4.0 works fine for me

When installing each module, run your cmake command line with
-DCMAKE_INSTALL_PREFIX=/usr And it should work. I will try to get a patch
out in the next day or so, but that should work.
--
Tom Panzarella
(sent from my phone)
On Jul 14, 2016 9:50 AM, "Darty"<EMAIL_ADDRESS>wrote:

I follow exactly the installing instruction.
It works with an older version 0.4.0 that I compiled few month ago.
A friend did the same because he had the same issue.
I install o3d3xx-camera by doing a :
sudo dpkg -i libo3d3xx-camera_0.4.5_ubuntu-14.04.4_i386.deb
and then issues while doing the "make" for libo3d3xx-framegrabber
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/lovepark/libo3d3xx/issues/59#issuecomment-232670938,
or mute the thread
https://github.com/notifications/unsubscribe/AAnai0dOXPZnMnM0mlyk0teDfgiQVv8Kks5qVj6bgaJpZM4IyBfP
.

Hi @REBAUD
Thank you! Right I am installing version 4.5 too, how to install version 4.0?

Hi
Try first the solution from @tpanzarella he's probably right :)
I think i did
git checkout tags/v0.4.0
on the folder which i clone from https://github.com/lovepark/libo3d3xx.git
Hope it's helping you

Hi @tpanzarella , I am trying with cmake .. -DCMAKE_INSTALL_PREFIX=/usr. Where is the deb package installed? Thank you very much!

Great
I added -DCMAKE_INSTALL_PREFIX=/usr to the cmake commands and it works!
Thank you very much!

Just patched master so that specifying -DCMAKE_INSTALL_PREFIX=/usr is not necessary -- albeit, still preferred. See the commit 255781b for details.


[Explore]: How should we package korifi CRDs

Background
There has been several discussions on how to distribute CRDs and there is a new agreement to guarantee green upgrades from one korifi release to the next one. CRDs and the way they are distributed play a major role in that green upgrade guarantee. Another concern albeit not overly important right now is the potential usage of korifi resources from external projects. Today this will mean that they will have to get a lot of unneeded dependencies.
Acceptance Criteria
Experiment with different strategies of packaging and management of CRDs and write a proposal document that addresses the following concerns:

Korifi has green upgrade path going from one release to its immediate successor
Adding new fields to CRDs does not require too much work (like version migrations) at least until v1.0.0
There is a safe way to deprecate and later remove fields from CRDs
Optional: External users of our resources do not inherit our dependencies. This might as well wait for v1.0.0 which will allow breaking changes.

Timebox
No timebox
Dev Notes
Given that we have chosen helm as a distribution tool it is useful to go through their recommended patterns of CRD management:

https://helm.sh/docs/chart_best_practices/custom_resource_definitions/
https://github.com/helm/community/blob/f9e06c16d89ccea1bea77c01a6a96ae3b309f823/architecture/crds.md
https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/

It looks like CRD management is a tough problem, but we could probably simplify it by making assumptions about how our CRDs are used. For example we could state that we do not support any external usage of some or all of our CRDs to make sure that our controllers are the only ones to reconcile them. This will make upgrades and deletes of our CRDs more predictable. We will have to have some special thoughts about resources that are considered as interfaces of the system or seams for extension, e.g. CFApp, CFAppWorkload, CFRoute, etc.

It would be nice to know with how much we can get away with without explicitly introducing new CRD versions, at least as long as we're not v1.0.
For example: if we add a field to the CRD without bumping its version, and then apply the change, does anything break? Could this work as long as we consider any new field added this way as optional in our controllers?


Forge: OTG should use normal world borders

Don't cut off the world, use world borders like vanilla mc.

Fixed for v8_r2


release: 0.17.3

This release makes our Python 3.11 support "official" without requiring users to upgrade to a new pyo3 0.18 (which I think we'll probably release soon too).
I'll push this live on Tuesday if there's no reason to delay.

Reminder: should include https://github.com/PyO3/pyo3/pull/2715

Thanks, picked #2715 and #2717 and will release shortly if CI all green!

Release is live!


Readme Typo in section: ValueListenables / ValueNotifiers

First things first, this is an awesome package! Thank you very much.
I found a little typo in the docs in the section ValueListenables / ValueNotifiers:
class UserManager
{
  final userName = ChangeNotifier<String>();
}

and this does not compile, it probably should be something like:
class UserManager
{
  final userName = ValueNotifier<String>('James');
}

Good catch
Am 30. Okt. 2023, 19:00 +0100 schrieb florentmx @.***>:

First things first, this is an awesome package! Thank you very much.
I found a little typo in the docs in the section ValueListenables / ValueNotifiers:
class UserManager
{
final userName = ChangeNotifier();
}
and this does not compile, it probably should be something like:
class UserManager
{
final userName = ValueNotifier('James');
}
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


Charlie/readme

[x] added new UML
[x] updated readme to add UML
[x] added stack overflow to readme

Codecov Report

Merging #55 (52e7e42) into dev (8ebcfe6) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev      #55   +/-   ##
=======================================
  Coverage   51.91%   51.91%
=======================================
  Files           8        8
  Lines         183      183
  Branches       23       23
=======================================
  Hits           95       95
  Misses         81       81
  Partials        7        7

Impacted Files
Coverage Δ

src/routes/user.js
21.81% <ø> (ø)

Continue to review full report at Codecov.

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


Added contact page

Description
Added "contact" page which follows the theme.
Captcha feature included in the submission form in contact page for making a hard time for bots.
Also contains validation to prevent empty form submission for UI

Type of Change

[x] ✨ New feature (non-breaking change which adds functionality)
[ ] 🛠 Bug fix (non-breaking change which fixes an issue)
[ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
[x] 🧹 Code refactor
[ ] ✅ Build configuration change
[ ] 📝 Documentation
[ ] 🗑 Chore

Changes

Please which part of the project your changes affect ?

[x] Frontend (Templates, CSS, JS)
[ ] Backend (Dancer2, api-docs, Dockerfile)

Screenshot

Thanks for your contributions. @himanshisrestha

Thank you 🙌🏻😊


Prefill jobId and vehicleId field with last used value

I had a brief look and this doesn't seem to be that easy. Maybe we have to use an activity instead of a Dialog?

If I understand correctly the issue, could store the last used values in static variables which would be available until the Android onDestroy is called.

Thanks for the feedback @devemux86. The issues for me was how to prefill the text boxes with the last used values. I couldn't find a good way to do this for a Dialog, things seem different for an Activity?

If store the last used values in static variables which live across Android app lifecycle, then can retrieve them on each dialog (or other component) initialization and prefill the text boxes. Is that the requirement?


Networked scene gameobjects which are not replaced on initiation.

Issue Type
Feature
Description
Ability to have networked scene gameobjects which are not replaced on initiation on the client by a prefab version.
This would mean you can use drag and drop references from the scene hierarchy to and from the sceneobject.
It also gives the ability to make modification of the object in the scene.

Done https://github.com/MidLevel/MLAPI/pull/172


Feature: Add "copy" option to right click menu for sidebar and widgets

Is your feature request related to a problem?
In Windows Explorer, the user can copy a DVD in the main view, where the drives are displayed, and paste it on the Desktop.
Windows Explorer automatically creates a main folder with the name of the DVD and then the internal data (files and folders) are copied.
Requirements

Add "copy" option to right click menu for sidebar and widgets
The "copy" option should be a primary command

Should we implement this for drives, if so, what would be the expected functionality?

I'll implement this when @Ferrario-Filippo implements context for widgets

Should we implement this for drives, if so, what would be the expected functionality? (A full copy of the drive contents/create a shortcut to it)

What does File Explorer do? We should be consistent with this.

Should we implement this for drives, if so, what would be the expected functionality? (A full copy of the drive contents/create a shortcut to it)

I would expect to copy the contents. We can add an option to paste as a shortcut but that's a different feature.

For some reason, primary items don't appear in the sidebar context menu (I'm looking into it but help would be appreciated)

@hecksmosis have you had any luck?

For some reason, primary items don't appear in the sidebar context menu (I'm looking into it but help would be appreciated)

Right-click context menu items are created manually in sidebar. Check out:
GetLocationItemMenuItems(INavigationControlItem item, CommandBarFlyout menu) at Files.App.ViewModels.UserControls.SidebarViewModel


[vcpkg] Add initial versioning documentation

This PR brings versioning into a near-ship state:

Adds reference documentation for the experimental user-facing features of versioning.
Renames $x-default-baseline to builtin-baseline and adds proper parsing support
Improves error messages throughout the versioning experience to help guide users to success
Improves performance of versioning to avoid all git manipulation in the happy path.
Uses git archive to achieve high performance git tree checkouts.
Improved test coverage of versioning
Users without any versioning fields will not experience any behavior changes with the versions feature flag enabled (+test).
Remove version=.

Two issues not addressed in this PR:

Emit warnings if the user uses overrides or constraints in a top-level manifest and doesn't have a baseline set (the user won't get versioning behavior in this case and that could be surprising)
Overrides currently uses schemed field names, however those schemes have no semantic meaning.

The initial spec is in #11758. Convenience link to the new docs is: https://github.com/ras0219/vcpkg/blob/dev/roschuma/versions/docs/users/versioning.md.
For local experiments, you will need to pull in versioning files:
git pull https://github.com/ras0219/vcpkg dev/roschuma/version-files

Example:
As an example, you can try:
{
    "name": "example",
    "version-date": "2020-01-01",
    "builtin-baseline": "334ba25e577b83331d5cfeb14d65768553ea1d9e",
    "dependencies": [
        {
            "$comment": "Note that this old rapidjson uses version-string",
            "name": "rapidjson",
            "version>=": "2019-06-28"
        },
        "zlib"
    ],
    "overrides": [
        {
            "name": "rapidjson",
            "version-string": "2019-06-28"
        }
    ]
}

and in that directory
vcpkg install --feature-flags=manifests,versions
vcpkg list --feature-flags=manifests,versions

Observing the result of 2019-06-28 and 1.2.11#9 for rapidjson and zlib respectively. If you didn't pull in the version files, you should see an error message like:
Failed at [/workspaces/vcpkg/toolsrc/src/vcpkg/registries.cpp(296)] with message:
Error: Couldn't find explicitly specified baseline `"334ba25e577b83331d5cfeb14d65768553ea1d9e"` in the baseline file, and there was no baseline at that commit or the commit didn't exist.
Error: while checking out baseline '334ba25e577b83331d5cfeb14d65768553ea1d9f:port_versions/baseline.json':
fatal: Path 'port_versions/baseline.json' does not exist in '334ba25e577b83331d5cfeb14d65768553ea1d9f'

This may be fixed by updating vcpkg to the latest master via `git pull`.
The current commit is "efe40c8c882c2bf3125b27e10294089f94e7b87b"

or
Failed at [/workspaces/vcpkg/toolsrc/src/vcpkg/install.cpp(877)] with message:
Error: no version entry for rapidjson at version 2019-06-28.
We are currently using the version in the ports tree (2020-09-14), since no rapidjson.json was found in /port_versions.

I've added support for { "name": "zlib", "version>=": "1.2.11#8" } via the comment banners SUPPORT_HASH_SYNTAX; once the bikeshed has been painted, we can delete any offending code.

I've added support for { "name": "zlib", "version>=": "1.2.11#8" } via the comment banners SUPPORT_HASH_SYNTAX; once the bikeshed has been painted, we can delete any offending code.


Backcountry: Discovery Flow - Simple Clickable Prototype

Description:
We need to create a clickable figma prototype of the backcountry booking experience so that we can gather feedback from business area. This prototype should be quite simple so we don't get distracted by design elements, and stay focused on the workflow.
This particular ticket is to cover the prototype for the Discovery part of the workflow.
Acceptance Criteria:
[Note: Use 'Given/When/Then' format if it makes sense to. Otherwise, a simple checklist that can be tested.]

[ ] there is a SUPER SIMPLE clickable prototype in Figma
[ ] Prototype uses design library components
[ ] There is a map
[ ] The design follows the figjam workflow and the user story map (linked below)
[ ] the design is very simple
[ ] corresponds with flows: https://www.figma.com/board/HNsft6y1lXjuGF2mh1Icv7/Backcountry-Booking-Flow?node-id=0-1

Development Checklist:

[ ] include map
[ ] ...
[ ] ...

Dependencies

Blocked by bcgov/reserve-rec-api#6
Blocking
Related to #13

Relevant documentation as reference
Figjam workflows: https://www.figma.com/board/HNsft6y1lXjuGF2mh1Icv7/Backcountry-Booking-Flow?node-id=0-1
Story Map: https://app.mural.co/t/dds5274/m/dds5274/1716328311757/3983a5eaa7656fc356ba830af75b09d3c342cde3?wid=0-1716333059350
Prototype: https://www.figma.com/design/1QHd1cWiRqeC0Ua0E9nfhr/PDTR?node-id=0-1&t=xXBBTpuCuXQB2eoy-1
Definition of Ready

[ ] Acceptance criteria are included
[ ] Wireframes are included (if applicable)
[ ] Design / Solution is accepted by Product Owner (if applicable)
[ ] Dependencies are identified (technical, business, regulatory/policy)
[ ] Story has been estimated (under 13 pts)

Definition of Done

In progress:

[ ] Acceptance criteria are tested (Functionality meets the acceptance criteria defined in the ticket)
[ ] UI meets accessibility requirements
[ ] Unit tests are written
[ ] Work is traceable in GitHub
[ ] PR linked to ticket number
[ ] If needed/required - Dev adds flag/label to highlight any migration steps necessary prior to PROD deployment

Code review:

[ ] Code is peer reviewed and has passed CI/CD tests

QA:

[ ] Acceptance criteria are tested (Functionality meets the acceptance criteria defined in the ticket)
[ ] Code is potentially shippable to the production environment
[ ] Functional features have been tested and passed by QA
[ ] UI components tested by designer
[ ] Code is deployed to PROD when moved to 'done' column (unless requested otherwise by PO)

PO Review:

[ ] Acceptance criteria are tested (Functionality meets the acceptance criteria defined in the ticket)
[ ] Reviewed and approved by Product Owner

Notes:

Moving to done as per conversation yesterday, thanks @pavelcreates


small changes

Coverage decreased (-10.7%) to 69.844% when pulling 10190de0a0ba271eacaa3341aa3af71737686b89 on dev into 147b250c4a17a125d9bebf8a1c33557ac0209eda on master.

Coverage increased (+0.2%) to 80.763% when pulling e769d60eb2c880bb884b1dd96e79d183b60d7c17 on dev into 147b250c4a17a125d9bebf8a1c33557ac0209eda on master.


Error with inject and karma-esbuild

An error occurs when using the inject option with karma-esbuild.  Not sure if it is an issue with esbuild-css-modules-plugin or karma-esbuild but I figured I would start here since karma-esbuild was handling CSS files and CSS modules without the inject option set.  Here is an example repository to reproduce the issue.
Can you provide any insight into what difference the inject: 'selector'option is making in the output produced by esbuild?
Thanks for publishing this module btw!

could you please have a try with 3.x and set inject: false to my plugin?

I think you could try to bundle generated css files with karma-esbuild

Using ^3.0.0 and setting plugins: [cssModulesPlugin({ v3: true, inject: false})], works without errors. However the styles do not load in that case.


Table Editor widget: removing columns and rows

Follow up of #10293
The option for removing column/row should be in context menu, probably.

Refinement notes:

We can configure context menus to add remove row/cell option https://www.ag-grid.com/vue-data-grid/context-menu/
We can also consider adding a column, being "row header". And add appropriate menus to both column's and row's headers.


Added moment.range.fromInterval

/cc @AO16

i'd love to incorporate something similar in the 3.1.0 milestone, unfortunately this'll probably require some refactoring to work with the 3.0.0 codebase :(

Just updated to match the API changes that had occurred since I made this. It's a much smaller diff now as a result.

Change looks good! Are you also able to add the flow declaration for this function in the additions section of declarations/moment.js.flow?


s/ConversionPatternRewriter/RewriterBase/ in utils (NFC)

s/ConversionPatternRewriter/RewriterBase/ in utils (NFC)
You can't create a ConversionPatternRewriter in C++ unit tests, so this means
that anything which is touched from a C++ unit test cannot transitively touch
anything which uses a ConversionPatternRewriter.
This is a simple search+replace, there's no functional difference between these
types for our purposes.
PR chain

👉 #4140 👈 YOU ARE HERE
#4141

Thanks!


(SERVER-252) Fix bad irb acceptance test... again.

Same issues as before, string interpolation was happening in beaker when it
should be passed through.  Switched from #{} to concatenation with +.

:+1:


Improved marketplace-product-3

Closes #1040 . Improved marketplace-product-3. Attached screenshots:

@Rajdip019 This one is implemented as radio.

Would suggest you to make this also as checkbox, so that filtering for more than one can be done easily .

Make this a checkbox @Dibyendu303

Updated now @Rajdip019


This code is still C

https://github.com/chuigda/vulkan4j/blob/03e0849dced65e890fca2ab96bed4da3eff284b1/tutorial/mdbook/en/src/setup/validation-layers.md?plain=1#L17-L31

This is the intended behavior since vkCreateInstance itself is a native function, and we're using native code to illustrate how this native function works internally. You may think that one reading this tutorial may not have experience on C programming, but a guy without C language basis is unlikely to be capable of learning the Vulkan API itself anyway.

I see I see


Support multiarch image builds

Hi!
We’ve found ourselves in a position where having multiarch Docker images of the goloop/ICON node containers is necessary and are wondering about the feasibility of having the official images be built to support both AMD64 (as they are now), and ARM64.
If this is not something the dev team can/wants to add into their roadmap, Geometry Labs would gladly submit a CPS proposal to make the necessary changes, as this both solves one of our major problems, but also would allow anyone running a (sub) P-Rep node to realize significant cost savings if running on a cloud provider that supports ARM instances. It might also help developers who are using the newer macs (M1 chips) without having to worry about transpiling or dealing with performance losses through the interpreter.

As you can see, we've already have the patch for 30b3f02f4b32b3726e502edce6d9c22a2f2afb28.  So the only thing remaining is just build a docker image with the buildx CLI as described below.
https://docs.docker.com/desktop/multi-arch/
So I close this issue because I don't think it's a problem anymore.


replaced collection.Iterable by collection.abc.Iterable

The collections.Iterable has been deprecated since Python 3.3 and stopped working in Python 3.10, hence the PR replaces collections.Iterable with collections.abc.Iterable

Superseded by https://github.com/boschresearch/pcg_gazebo/pull/150.


Write Hello World in Go

Each of us should write a basic Go program to get familiar with the language.

What's everyone status on this? Write "Done" in a comment when you're done so we can track the progress.
@Ni7070 @segerstorm @Meeptard @cenza1 @FerDovah

Done


[BUG] Compiler crash on binary operators in constants

Describe the bug
The next cython compiler crash is observed:
Error compiling Cython file:
------------------------------------------------------------
...
cdef extern from *:
    const int A = 0
    const int B = A + 1
                   ^
------------------------------------------------------------

my.pyx:3:20: Compiler crash in OptimizeBuiltinCalls

ModuleNode.body = StatListNode(my.pyx:1:5)
StatListNode.stats[0] = CDefExternNode(my.pyx:1:5)
CDefExternNode.body = StatListNode(my.pyx:2:4)
StatListNode.stats[1] = SingleAssignmentNode(my.pyx:3:4)
SingleAssignmentNode.rhs = AddNode(my.pyx:3:20,
    infix = True,
    operator = '+',
    result_is_used = True,
    use_managed_ref = True)

Compiler crash traceback from this point on:
  File "c:\python39\lib\site-packages\Cython\Compiler\Visitor.py", line 180, in _visit
    return handler_method(obj)
  File "c:\python39\lib\site-packages\Cython\Compiler\Visitor.py", line 531, in visit_BinopNode
    return self._visit_binop_node(node)
  File "c:\python39\lib\site-packages\Cython\Compiler\Visitor.py", line 545, in _visit_binop_node
    if obj_type.is_builtin_type:
AttributeError: 'NoneType' object has no attribute 'is_builtin_type'

To Reproduce
Code to reproduce the behaviour:
cdef extern from *:
    const int A = 0
    const int B = A + 1

Expected behavior
Successful compilation.
Environment

OS: Windows
Python 3.9.0
Cython 0.29.21

Additional context
Found when testing auto-generation of .pxd files from Rust libraries (https://github.com/eqrion/cbindgen/pull/590).

Thanks for the report. The obvious work-around is to leave out the assignments. Cython doesn't care about them anyway, since these are extern declarations.
We might want to disallow them allogether.


Provide s3 storage as optional storage system instead of file storage

Currenlty we provide only file system based upload directories. There shall be an option to store data instead to an s3 bucket (e.g. source uploads).
This must be configurable, default shall be filesystem as before.

Potential java library to use for s3 object storage:
AWS
https://www.baeldung.com/aws-s3-java
Minio
https://github.com/minio/minio-java
https://docs.min.io/docs/minio-client-complete-guide
Could also use minio inside a test container:
https://stackoverflow.com/questions/55402610/configuring-minio-server-for-use-with-testcontainers

S3 as shared storage inside kubernetes:
https://icicimov.github.io/blog/virtualization/Kubernetes-shared-storage-with-S3-backend/

S3 PVC
https://medium.com/asl19-developers/create-readwritemany-persistentvolumeclaims-on-your-kubernetes-cluster-3a8db51f98e3

Goovys
Maybe a good alternative to s3s-fuse, written in Go.
see
https://github.com/kahing/goofys
not available in alpine linux packages ,but ...
https://github.com/gliderlabs/docker-alpine/issues/268 shows usage in alpine docker image.
(but there is a git checkout on docker image build time - so not production ready. But we could build go client in a dedicated version/commitId and use this inside docker creation)

Result
A native approach is better than providing s3 by a "pseudo filesystem".
Reasons

We can integrate storage tests inside our integration test suite (e.g. by using https://github.com/adobe/S3Mock)
Errors can be handled inside SecHub server code
More information available on problems, so relience should be easier to implement
Scalable out of the box (in Kubernetes every POD instance has got its own connection to S3)
Less complex in deployments

If somebody wants to use the "pseudo filesystem" this will still work.

One S3 storage test did fail because of a minio problem already issued at https://github.com/minio/minio-java/issues/710 . This seems to be same, but the issue is closed.
There is also the possibliity to use amazon s3 sdk client instead of minio.
We will check what memory footprint will be in sechub server bootJar when switching to aws s3 variant and if test do no longer fail with amzon s3 sdk client.


Need help to integrate akamai video with angular app

Hello Team,
I am not sure of this is right place to get my query addressed by appropriate team. We are working on angular app with AEM in backend leveraging akamai for video integration in our app .
I am unable to find an angular example for akamai video integation. Could any one of your dev team or anyone can help me.
Thanks,
Pawan
<EMAIL_ADDRESS><EMAIL_ADDRESS>

Hello,
The best place for this type of question is on the Akamai Developer Community: https://community.akamai.com/community/developer
Thanks,
Kyle


Evaluate if the algorithm view is how the information should be presented

[ ] evaluate if information is presented in a scientific manner
[ ] create new tasks if changes are needed and close this issue

The evaluating was done during last client meeting and tasks were created during sprint planning.


Deprecate meshExpansion and add ingress Service ports 15012 and 15017 by default

As part of #25933. Note that the tcp-dns-tls port is unused
Removing the ExposeIstiod test flag is deferred to a future PR to reduce scope for this change
[ ] Configuration Infrastructure
[ ] Docs
[X] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Put a hold to give others a chance to review, as I don't think this should be merged after 1hr
cc @linsun @sdake @irisdingbj

@tbarrella: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-ipv6-k8s-tests_istio
398520a9511ce4305a5425a8572367f35f1a3575
link
/test integ-ipv6-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@tbarrella: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-ipv6-k8s-tests_istio
398520a9511ce4305a5425a8572367f35f1a3575
link
/test integ-ipv6-k8s-tests_istio

unit-tests_istio
398520a9511ce4305a5425a8572367f35f1a3575
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

with this change, we will open 15012 and 15017 by default. I recalled we do not want to expose them directly due to some security reason.
Thinking can we only expose them for integration test? if we want to make them default exposed, we can add some logic in operator.go to hack this.

Good point @irisdingbj. I actually prefer to just start with 15012. It's much easier to add 15017 later if needed because it was never present in meshExpansionPorts, and relatively harmless, whereas removing it would be a breaking change. Will update (unless someone disagrees)

/retest

LGTM, may consider adding 15017 as well.  Would be good to make sure multicluster docs (and/or vm expansion docs) are updated accordingly.
cc @GregHanson @irisdingbj


[New API] : ChatBox Api using Chat GPT

Brief Description 🤓
Enable smooth and seamless chat experiences in your applications with this API, incorporating user authentication, message history management, and error handling capabilities.
How will you develop it?🤩
The ChatGPT API is a Node.js-based application designed to facilitate real-time communication between users through a chat interface. It incorporates features such as user authentication using JSON Web Tokens (JWT), message history storage in MongoDB, error handling with meaningful error messages, and rate limiting to prevent abuse and ensure fair usage of the API. With these capabilities, the ChatGPT API provides a secure, reliable, and scalable platform for building chat applications and integrating conversational functionalities into various projects.
Deployment
None
Select the open source program you are contributing to
Other
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINES of this project.

Greetings @sum1t-here🎀 ! , We are excited to have you dive into another issue with us!🚀
Your involvement in our project has been invaluable, and we're confident that your skills and insights will help us conquer this challenge😇.  Use command /gssoc24 to self assign the issue.  This issue represents an exciting opportunity for us to improve and enhance our project, and we are thrilled to have you on board.
We request you to follow CONTRIBUTING GUIDELINES.
Looking for your PR soon!
In case of any issues, you can contact us on Discord.❣

/gssoc24


Bug report: task getting strike-through on their own

What happened?
When checking a task, other task in the query get strike-through even before getting checked.
https://user-images.githubusercontent.com/38974541/173917219-3fa1ddd8-29d9-43d9-82c9-402d1a831ed6.mov
DQL
task
from "file.md"
where !completed

JS
No response
Dataview Version
0.5.34
Obsidian Version
0.14.15
OS
MacOS

Hahaha this reminds me of some meme on r/programmerhumor where clicking one toggle enabled or disabled others lol.

Dataview playing with your tasks xp
Btw the task are displayed normally again after a reload

Dataview playing with your tasks xp
Btw the tasks are displayed normally again after a reload

That got me confused, but it is pretty weird need a reload to see clearly your tasks...

Bad interaction between React and some hacks I had to add to make the view properly responsive... must have broken when I updated React... I'll have to fiddle with it for a bit until I find something that works.


Project, Navigator etc. windows do not autoscroll

Description
When you drag an item (for example a script) up or down the Project window, if you reach the top or bottom of the window you cannot scroll to other items that are there but not displayed
DBeaver Version
Community Edition 22.3.5
Operating System
Windows 10 Enterprise
Database and driver
Any
Steps to reproduce
Have a project with lots of scripts divided between several folders
Open the Project window
Open one folder near the top, click and drag one script to move to another folder near the bottom.  The target folder is not displayed because it's too far down
As you drag to the bottom of the window, the window does not scroll down to show the target folder
Additional context
No response

Thank you for bug report.

@E1izabeth
It's been well over a year since this was reported. Is it possible we could revisit this and get the auto-scrolling in the project and navigator windows implemented? It is such a big pain when you are having to move scripts around within a big nest of script folders and projects.

@micheal-icp
You can vote for the issue with 👍 under the issue description to promote it to a higher priority.

@E1izabeth
I thumbed it up, but I had no idea we had to upvote bugs. I thought that was for feature requests. This ticket was flagged as a bug, not feature request.


Logo 2.0

Is this the time to revive issue #230 ? With Koa soon to be releasing a major version, I thought it could be possible to renew it's logo, or something. Well, at least I thought adding a 2.0-ish mention somewhere so it is more apparent that this project made a leap forward and has got substantial changes.  Since some like the tree, here's my first proposal. Point to note, there is too much details in the tree. A simpler tree should perhaps be a better candidate.

(EDIT: here's the GIMP project.)

:+1: I like this tree. The third one should be combined with the existing koa title in the readme.

I like it too, could maybe do with some simplification for the smaller icons, and if I'm nitpicking I feel the border is too thick at larger sizes, but, I like it

we could 99design's it up, the Koa logo fund haha

:+1: for a new logo :D

:+1: tree is neat

I like the tree but agree the sample icon is too detailed. I'll pitch in $5 towards the winning design.

seems not a simple one

:+1: Cool

I don't know generally i prefer something more simple

Reminds me of Smog City's logo... not that it's a bad thing. I like beer.

Simple is the best.
Hard to draw is not good Logo, imo.

gonna close for now since we're not actively looking for a new logo. If we get an OpenCollective thing going we could probably put together a little contest or 99design it


An easy way to position hotspots

Is there a simple way to create and position hotspots without geometry knowledge? Visually, is it possible?

If you set the hotSpotDebug parameter to true, coordinates of mouse clicks will be printed to your browser's developer console. You can then click where you want to place a hot spot, and it will print the location to the console, so you can copy the coordinates into your configuration.


When will Microsoft Search be available for GCC?

September 2021. For updates, you can follow the roadmap entry.


No Ruuvitags detected

I have this running in docker on a Raspberry PI 4 using the sample docker compose file. I have 6 Ruuvitags nearby (all of which are detectable using the native Ruuvi iPhone app).
When I turn on trace level debug I can see lots of BLE advertisements but none are detected as being for the Ruuvitags. For example:
[2022-7-12 08:46:55] [trace] [/go/src/github.com/Scrin/ruuvi-go-gateway/gateway/gateway.go] Received data from BLE adapter, is_ruuvi: false, data: 4C0003161100000277C0A856200000000000000000000000000B, mac: 0D:72:48:9F:69:10, rssi: -59
[2022-7-12 08:46:55] [trace] [/go/src/github.com/Scrin/ruuvi-go-gateway/gateway/gateway.go] Received data from BLE adapter, is_ruuvi: false, data: 4C0002152686F39CBADA4658854AA62E7E5E8B8D000100000B, mac: 05:3E:AB:3B:0D:ED, rssi: -61
[2022-7-12 08:46:55] [trace] [/go/src/github.com/Scrin/ruuvi-go-gateway/gateway/gateway.go] Received data from BLE adapter, is_ruuvi: false, data: A705051001000000000000022200CA, mac: F3:33:A1:94:48:35, rssi: -66
So, I assume the BLE stack is working ok. If I change all_advertisements to true, I can see MQTT posts for the detected devices. So MQTT is working too. My tags are using data format 5 and running recent firmware.
Have you any idea why the gateway would see everything EXCEPT my Ruuvitags?

Since you get some data that looks like it's real, BLE stack should be working correctly indeed. You mentioned iPhone, there is (or was? not sure) some limitations in some cases with at least some firmware versions that in some cases using the Ruuvi Station iPhone app will stay connected to the tag(s), which will prevent the tags from broadcasting the measurements during that. Here is one forum thread which stumbled up on this "feature" (near the end of the thread): https://f.ruuvi.com/t/sync-issues-with-ios/4613/17 - perhaps that could be related? Which firmware version specifically do you have on the tags?
I don't own any iPhones (or other iOS/Apple devices) so I can't test this myself unfortunately, but I suspect the issue is that the tags are not actually broadcasting. To double-check that, keep the all_advertisements enabled and see if you get any kind of data from the ruuvitags (check the MAC addresses). Basically when the all_advertisements is true, ruuvi-go-gateway will "blindly" forward all broadcast data it gets from ble, no matter if the data makes sense in any way so the ruuvitags should show up there if they're actually broadcasting anything.

Thanks - that's helpful. I force-quit the Ruuvi app on my phone and restarted everything but still no tags are being logged in the GW.
I fired up the nRF Connect app on my phone and it can see multiple Ruuvi tags advertising (without connecting).

Regarding firmware version - it looks like they are on v3.31.1+default (I didn't check them all).

Interesting. That looks correct, the tags are broadcasting in the correct format, with the correct company identifier, so nothing wrong with the tags either. Next suspicion is the BLE stack, it might be possible that some other service is filtering the BLE data somehow on your raspberry pi.
If you compare the devices seen by nRF Connect and what ruuvi-go-gateway sees on your pi, is it just the ruuvitags missing or are there other "missing" devices?
You could also check if there are any other services or apps active on your raspberry that use bluetooth which could interfere

Shouldn't be, since ruuvi-go-gateway uses passive scanning already so that doesn't apply.
I just verified this by grabbing a fresh ruuvitag with v3.30 firmware (I use a custom firmware on my "normal tags") and tested running ruuvi-go-gateway on a raspberry pi and the data seems to flow normally

This is the strangest thing. I build a fresh Raspberry Pi and even using hcitool, I can't see the tags. I guess it's not a gateway issue then! Thanks again for your help.

No problem. If/when you find out the cause, I'd be happy to hear about it :)