Security/Privacy of Search

I remain deeply concerned with the security and privacy of this feature!
After quite a bit of searching, it remains completely unclear as to what Microsoft has access to in OneDrive and SharePoint items. If it can be read and searched by your tools, then it can also be viewed by anyone with access to those tools.
If Microsoft can search through, retrieve and present information from these sources, EXACTLY WHAT ACCESS does Microsoft (and it's employees, contractors, vendors, users, etc.) have access to? There is NO INFORMATION is this and that leads me to have great concern about using this (or any) Microsoft feature. Are you saying that you don't have any responsibility in ensuring the security and privacy of the information we entrust you with? Are you just making promises that "it'll be ok" and we're supposed to accept that on faith?
The typical lifecycle of this issue is:

Little if any guarantee is made as to the security/privacy of a feature
People just assume, "It'll be ok..."
...Until it's not and some enormous and egregious breech occurs
Which then MAY get publicized - or may not
To which everyone throws apologies and promises to "do better"...
...and some low-level employee gets punished...
But nothing really changes and everyone just throws up their hands and says, "Well, that's the price of using technology!" and "There's no real privacy!"

This simply isn't good enough! As we've seen time and again, access to data is ALWAYS EXPLOITED. This new search product is a glaring example of where this type of exploitation occurs and we've seen nothing from the development, sales or management sides on this.
If there are REAL SECURITY MEASURES available, SAY SO and why. If not, ADMIT IT and let us know that using this feature or OneDrive or SharePoint makes one vulnerable to these breeches and that you take no real responsibility; and that, it's on us to NOT use these tools for anything that needs to remain secure - even in the slightest way.

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

ID: 1df67176-e302-f972-dbf7-d7e0747e5bd2
Version Independent ID: e213129d-0fb1-31ee-a654-091d032c2746
Content: Set up Microsoft Search
Content Source: MicrosoftSearch/setup-microsoft-search.md
Service: mssearch
GitHub Login: @jeffkizn
Microsoft Alias: jeffkizn

Please refer to the Microsoft Trust Center, https://www.microsoft.com/en-us/trust-center, for the latest details on the topics of security, privacy, and compliance in M365 products and more.


NV12 Video format

Any pointers for creating videos that are compatible for playback using the real time media library? I have uploaded a few samples and cant seem to get them to stream across. I see in the source code it requires NV12 Frames.

You could convert the videos that you have with ffmpeg into NV12 format before streaming through the library. https://ffmpeg.org/ffmpeg.html

Thats what I did and its working.


[Feature] support for local/package level and serializable python modules/macros.

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature
Suppose that we need to remove (dedent) the same number of leading whitespaces in each line of a sql command or a string of documentation. I've been googling for jinja solutions, however the solutions are quite complicated. And it would be quite ease if we can invoke a python module/function.
The proposed method is, we can write a macro in a python file "macros/my_python_module.py":
from textwrap import dedent

and then we can call the defined module/function in our model "models/test1.sql":
{% set query_cmd %}
    select col_1,
              col_2
    from table_name
    where col3=1
        and col4=2
{% endset %}
{{ my_python_module.dedent(query_cmd) }}

What's more, as the implementation of this python macro is within the project locally, we can call the macro using my_project.my_python_module.dedent if this project is imported to other projects as a package, just as what we do with a jinja macro.
Describe alternatives you've considered
The requirement for "dedent" is just an example, actually we need python functions in a lot of cases. For example:
1. Generate a datetime range from "start" to "end", in which each element is the first day of each month.
2. Create JDBC tables in spark or call the "mysql" function in clickhouse without hard coding the configurations (host/port/password) in the sql command.
3. Have better integrations with airflow.
4. ......
Who will this benefit?
The ones who need more elegant way to implement a complex logic and haven't access to dbt cloud (offline/internal use cases).
Are you interested in contributing this feature?
Yes, I've pushed a PR.
Anything else?
Why do we need python macros:

I really agree with what Anders Hejlsberg (the creator of programming languages such as Turbo Pascal, Delphi, C and TypeScript) talked about Low-Code/No-Code platforms or tools in this interview:

I think the challenge has always been with these tools, how to put appropriate escape hatches in so that when you hit the glass ceiling of what this particular low-code environment can do, you aren’t stuck. There needs to be escape hatches that allow you to then move to a fuller or complete programming environment, which means there needs to be meaningful extensibility models.

The implementation of the PR I pushed won't introduce more complexity or name/namespace conflicts than a regular jinja macro. And the terminal uses who use the python macros which are developed by other developers don't even need to care about whether the macros are written in python or jinja.
If I'm not mistaken, It seems that the DBT team want to create a "language" which can solve the "TRANSFORM" step of data engineering elegantly using a small set of rules and instructions. I really agree with this idea. However this goal is not easy to be achieved using pure jinja and SQL commands, actually it seems that this is a goal that Python has achieved.
Normally someone won't understand jinja very well if he/she doesn't know python at all. Actually one of my colleagues has left DBT as he doesn't even know how to set up a python environment as well as solving the package dependencies, much less write a nice jinja macro. I mean, one would have known python if he/she knows jinja and sql.
DBT has introduced a lot of python modules like "datetime" or others, who knows what other packages we may need? What's the boundary/condition about whether a package/module should or should not be introduced to DBT?

Thanks for reaching out @woods-chen !
Our overall rationale and approach is described here: https://github.com/dbt-labs/dbt-common/issues/71#issuecomment-1961852473
Our answer now (May 2024) is going to be the same as before: We won't be creating a new entry point to inject arbitrary user code into the Jinja context.
I'm going to close this issue and the associated PR as a duplicate of https://github.com/dbt-labs/dbt-common/issues/71.
Thank you for the time and effort you spent considering this and opening this issue and the associated PR.


insertReturningPrimary for Collection of pojos

We have an insert for a collection of pojos so it would be nice if we could also get an insertReturningPrimary for a collection of pojos on the AbstractVertxDAO or at least an insertReturningMany on the queryExecutor to be able to easily implement oneself.

What @Globegitter asks is a really useful feature. I was constrained to insert, make compose and then call select to obtains the primary key or some other value. JOOQ give you a possibility to get in return any value you want from an inserted record.
See JOOQ Documentation
Of course, I'm new to vertx-jooq library. Maybe there is some workaround with small effort to get this kind of feature. I'm using vertx with kotlin and I thought that using kotlin extension function I could do something. I'm aware that the intention of using QueryResult as generic and driver agnostic response is a very good thing.
Any suggestion welcome

I agree this is a useful feature. Main issue here is, that this method's return-value needs to be parameterized on the DAO-Interface, as the return value depends on the API (Future vs CompletableFuture vs Single) and is not covered by any existing type. This is a breaking change and thus requires some caution and planning.
There is a workaround when working with the JDBC-driver. Write a helper-class like the following:
public class JooqUtil {

    public static <R extends UpdatableRecord<R>, K> CompletableFuture<List<K>> insertReturning(JDBCCompletableFutureGenericQueryExecutor queryExecutor, Collection<R> records, Table<R> table, Collection<? extends Field<?>> returnFields){
        return queryExecutor.executeAny(dslContext -> doInsertReturn(records, table, returnFields, dslContext));
    }

    public static <R extends UpdatableRecord<R>, K> CompletableFuture<List<K>> insertReturningPrimary(JDBCCompletableFutureGenericQueryExecutor queryExecutor, Collection<R> records, Table<R> table){
        return insertReturning(queryExecutor,records,table,table.getPrimaryKey().getFields());
    }

    @SuppressWarnings("unchecked")
    protected static <R extends UpdatableRecord<R>, K> List<K> doInsertReturn(Collection<R> records, Table<R> table, Collection<? extends Field<?>> returnFields, DSLContext dslContext) {
        InsertSetStep<R> insertSetStep = dslContext.insertInto(table);
        InsertValuesStepN<R> insertValuesStepN = null;
        for (R record : records) {
            insertValuesStepN = insertSetStep.values(setDefault(record).intoArray());
        }
        Result<R> fetch = insertValuesStepN.returning(returnFields).fetch();
        return fetch.stream().map(rec -> rec.key()).map(key -> {
            if (key.size() == 1) {
                return ((Record1<K>) key).value1();
            }
            return (K) key;
        }).collect(Collectors.toList());
    }

    private static Record setDefault(Record record) {
        int size = record.size();
        for (int i = 0; i < size; i++)
            if (record.get(i) == null) {
                @SuppressWarnings("unchecked")
                Field<Object> field = (Field<Object>) record.field(i);
                if (!field.getDataType().nullable() && !field.getDataType().identity())
                    record.set(field, DSL.defaultValue());
            }
        return record;
    }
}

While thinking about integrating that feature, I realized it doesn't make sense to have it added like the existing insertReturningPrimary, because what would you do with a list of ids if you cannot connect those ids to the records you've just created?
The only useful return value would be a collection of the POJOs with the inserted ids set.

@jklingsporn that is a very good point you are making and I assumed that the order of the returned IDs would be matching the order of the inserted collection. But yes, returning a collection of pojos would also make sense.


Bug: Searchbar sometimes changes after result

Using version 3.0.1 of this library, tapping a search result in the search bar can sometimes result in a different result being displayed:
Example:

Type "Backwerk" in the search bar.
Choose the first result: "Backwerk 11, Hardenbergplatz, Charlottenburg, Charlottenburg-Wilmersdorf, Berlin, 10623, Germany"

Expected Behavior:

Animation of Map to that Location
Search bar reads "Backwerk 11, Hardenbergplatz, Charlottenburg, Charlottenburg-Wilmersdorf, Berlin, 10623, Germany"

Observed Behaviour:

Animation of Map to that Location
Search bar reads "Zoologischer Garten, Hardenbergstraße, C..."

This happens with different stores that are located in train stations or shopping centers too.
I think the root cause is that tapping the result will

Geocode the result into coordinates and  trigger the map to move to that location
This triggers onLocationChanged, which then reverse-geocodes the coordinates back into an address (which can differ from the initial result because of inaccuracies).

So maybe if the result of the search that has been tapped can be re-used in onLocationChanged, this issue could be avoided.

fixed on version 3.1.0 ✅


errors in IE8

I opened http://craigshoemaker.github.io/offlinejs-simulate-ui/ in IE10 with emulation of IE8 and I've got errors:
SCRIPT5: Access is denied.
File: offline.min.js, Line: 2, Column: 6307

SCRIPT5007: Unable to get property 'appendChild' of undefined or null reference
File: offline-simulate-ui.min.js, Line: 2, Column: 346

Also in real IE8 I have errors:
SCRIPT438: Object doesn't support property or method 'addEventListener'
File: offline.min.js, Line: 2, Column: 1709

in README for offline.js you clame to support IE8+
Browser Support

Modern Chrome, Firefox, Safari and IE8+

version of offline.min.js that I'm using is v0.7.8

IE8 has 1.5% of global users and was end-of-lifed 6 months ago.  I move to close this ticket and update the README to specify IE9.

Possibly addressed by https://github.com/HubSpot/offline/issues/209 .


refactor(syntax): remove some unsafe code creating IDs

#6324  👈
main

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

Join @overlookmotel and the rest of your teammates on  Graphite


[4/7] Refactors vault construction to use storage config

Describe your changes and why you are making these changes
This PR unifies the vault and storage. The vault now uses the store for all operations and is configured using storage config instead of having a separate config to manage.
Note that we cannot merge this PR directly without an initial migration that syncs the vault with the current storage. This work can be found at: TODO[]
Related issue number (if any)
ENG 1798
Loom demo (if any)
Checklist before requesting a review

[x] I have created a descriptive PR title. The PR title should complete the sentence "This PR...".
[x] I have performed a self-review of my code.
[ ] I have included a small demo of the changes. For the UI, this would be a screenshot or a Loom video.
[ ] If this is a new feature, I have added unit tests and integration tests.
[ ] I have run the integration tests locally and they are passing.
[x] I have run the linter script locally (See python3 scripts/run_linters.py -h for usage).
[ ] All features on the UI continue to work correctly.
[x] Added one of the following CI labels:

run_integration_test: Runs integration tests
skip_integration_test: Skips integration tests (Should be used when changes are ONLY documentation/UI)

@likawind
Let's focus on the open source case first, so for open source k8s, we still use an S3 storage and currently the vault is the local filesystem. The only time k8s secrets are being used is when we're passing in S3 credentials. This is a communication mechanism and not a persistent storage mechanism, which is the point of the vault.

Sounds good! I remember you have a task to track follow-ups for enterprise version? Let's make sure we decide what to do with the K8S vault as a part of this task?


example boundary2: added image boundary check sample.

I'm not a big fun of this example, as well as the Boundary.cpp. They are more like tests than examples for the user. So I'd merge them into one example - you could either replace some of the shapes with pictures or add them on the top.
But it's your call, the example is correct.

@mgrudzinska I know your point. This is to verify the visual result of the ranging correction. we can't verify with the our api tests suite. yet examples is the best place we can put them in.


loadTexture TypeError: this.game is null

Below error occurs after I switch back from another state to my main state. The code is called with a button press after the state is fully loaded. So I don't think it is some sort of racing condition.
A few details;
1- gameUI is not null or undefined.
2- gameUI.newFlipCoinPieceKey is not null, undefined or invalid value.
3- This issue does not happen if I change states without clearing the world. But I believe this results in previous state not to be cleaned?
 game.state.start("stateName", false, false);

I would be glad if any has an explanation for this.game is being null in phaser.js.
Phaser version: * v2.4.4 "Amador" - Built: Thu Oct 15 2015 11:52:26
Error
TypeError: this.game is null
Phaser.Component.LoadTexture.prototype.loadTexture()
phaser.js:45038
GameUI.prototype.flipCoin/<()
index.html:257
Code
        if (gameUI.coinSymbol) {
            game.add.tween(gameUI.coinSymbol.scale).to({ y: 0 }, 300, Phaser.Easing.Linear.In, true, 105);
        }
        gameUI.coinFlipStartAnim.play(15);
        gameUI.coinFlipStartAnim.onComplete.addOnce(function () {
            //Switch Sprite
            if (gameUI.coinSymbol) {
                gameUI.coinSymbol.loadTexture(gameUI.newFlipCoinPieceKey); //This is line 257
                gameUI.coinSymbol.position = { x: gameUI.goldCoinSprite.position.x, y: gameUI.goldCoinSprite.position.y };
                gameUI.coinSymbol.width = 100;
                gameUI.coinSymbol.height = 100;
                game.world.bringToTop(gameUI.coinSymbol);
            } else {
                gameUI.coinSymbol = game.add.sprite(
                    gameUI.goldCoinSprite.position.x,
                    gameUI.goldCoinSprite.position.y,
                    gameUI.newFlipCoinPieceKey);
            }
            gameUI.coinSymbol.anchor.set(0.5);
            gameUI.coinSymbol.scale = { x: 0.8, y: 0 };
            gameUI.coinFlipEndAnim.play(15);
            gameUI.coinFlipEndAnim.onComplete.addOnce(gameUI.onSpinCompleted, gameUI);
            game.add.tween(gameUI.coinSymbol.scale).to({ y: 0.8 }, 350, Phaser.Easing.Linear.In, true, 105);
        }, gameUI);

Almost certainly a context issue. When it gets to the next state it's in the wrong context (as a result of the context provided to the button callback), so none of the things it needs exist. Usually the context of a callback should be the State itself, not the object on which it was invoked.

Will be checking and updating here.

@photonstorm
I have made some checks and updated my callbacks with Phaser Signals which solved some of the callback context issues that I was previously having.
But still could not manage to fix the above issue.
I am relatively new to Phaser and JavaScript, mostly coming from .NET, Java and C++.
Below is the pdated method. "gameUI" ref was used before due to incorrect usage of callbacks. I have changed them back to "this" since I have updated my callbacks to use Phaser.Signal instead.
this reference is defined and seems to be correctly referencing to my current state. But this.game is still null. Also this does not happen if I use game.add.sprite instead.
Another detail (Might be a bit far fetched)
I am switching from state "A" to state "B" without clearing the world.
When I switch back from state "B" to state "A", I only have the issue if I send clearWorld parameter true. I am wondering, if the clearworld parameter is clearing both previously not cleared "A" and current state "B" before switching to "A" and thus resulting in null ref with "this.game".
flipCoin method is called from gameUI with "this" context in below code. Which I believe should have the correct context.
Both of the below examples are prototype methods of gameUI(A), that is my state.
Event which calls flipCoin
spinTween.onStart.addOnce(function () { game.time.events.add(500, gameUI.flipCoin, this); }, this);

flipCoin method
  flipCoin: function () {
        if (this.coinSymbol) {
            game.add.tween(this.coinSymbol.scale).to({ y: 0 }, 300, Phaser.Easing.Linear.In, true, 105);
        }
        this.coinFlipStartAnim.play(15);
        this.coinFlipStartAnim.onComplete.addOnce(function () {
            //Switch Sprite
            if (this.coinSymbol) {
                this.coinSymbol.loadTexture(this.newFlipCoinPieceKey);
                this.coinSymbol.position = { x: this.goldCoinSprite.position.x, y: this.goldCoinSprite.position.y };
                this.coinSymbol.width = 100;
                this.coinSymbol.height = 100;
                game.world.bringToTop(this.coinSymbol);
            } else {
                this.coinSymbol = game.add.sprite(
                    this.goldCoinSprite.position.x,
                    this.goldCoinSprite.position.y,
                    this.newFlipCoinPieceKey);
            }
            this.coinSymbol.anchor.set(0.5);
            this.coinSymbol.scale = { x: 0.8, y: 0 };
            this.coinFlipEndAnim.play(15);
            this.coinFlipEndAnim.onComplete.addOnce(this.onSpinCompleted, this);
            game.add.tween(this.coinSymbol.scale).to({ y: 0.8 }, 350, Phaser.Easing.Linear.In, true, 105);
        }, this);

    },

OK, I have moved below code to my create function instead of event callback. I believe calling it in event callback was causing sprite to be created in a different game context somehow and moving it to, start function solved issue.
 this.coinSymbol = game.add.sprite(
                    this.goldCoinSprite.position.x,
                    this.goldCoinSprite.position.y,
                    this.newFlipCoinPieceKey);


Request for button integration - Microsoft Planner

Users requesting a button integration for Microsoft Planner (can probably use a lot of Trello code, maybe)
https://tasks.office.com/

I have added this integration, and submitted a pull request for it. It has not been merged into the main branch yet, but if you want to take a look at it, here is the pull request. #964

Superb! Thanks. How can we stimulate them to merge?

There is one small error in the README for the pull request. I didn't catch it until now. I also commented on the pull request about this. #964

Any comments on why this issue has been closed and not integrated?

This was integrated in #964
https://github.com/toggl/toggl-button/wiki/Where-can-I-find-the-Button%3F#microsoft-planner

D'oh, I forgot I had to enable it in the settings which is why I thought this was never integrated. Thanks for the link :-).


[CT-977] [Feature] Ignore changes in profiles.yml when using partial parsing

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature
Differences in profiles.yml currently force a full re-parse even if the changes in profiles.yml would not warrant a new parse. For example changing the authentication method forces a full re-parse, even though authentication method will (should at least) not have an effect on the compiled manifest.
In our case we compile and deploy our dbt image from our CI/CD, where dbt is authentication is done through credentials, but then run the image from kubernetes in GKE where authentication method is oauth. Due to this we always need to re-parse and its slowing down our dbt runs.
Describe alternatives you've considered

moving the compilation of the manifest to the same environment where dbt is ran where we can have the same authentication method during compilation & run

Who will this benefit?
No response
Are you interested in contributing this feature?
No response
Anything else?
No response

Some of the information in the profile really does require that everything be reparsed, in particular the database and schema, which is embedded in many different places in the manifest. So we would have to switch to recognizing changes on an individual profile field basis, and the fields that could be allowed to change would be different for every adapter and every adapter connection method.

We have special handling for "secret" env vars which might be helpful. We don't match environment variables starting with 'DBT_SECRET_ENV_' when doing partial parsing.

That's right — that's the workaround we've recommended for other folks in the past. If you know that a specific profile field is likely to change frequently, and shouldn't have any effect on the parsed content of your project, you can set it to a secret env var:
# profiles.yml

profile-name:
  targets:
    prod:
      ...
      method: "{{ env_var('DBT_ENV_SECRET_AUTH_METHOD') }}"

dbt will not record the value of that secret env var, and so it will not detect any changes made to that profile configuration. For its purposes, the config remains unchanged from one parse to the next.
Does that seem like a reasonable workaround for your use case? To be honest, I haven't heard many instances of folks using different authentication mechanisms within the same dbt deployment.

@gshank For other reasons, we may eventually want the ability to map specific adapter/profile fields to specific resource types. I can imagine a future where one dbt project supports models running via different adapters, for example.

@jtcohen6 interesting suggestion, I had not thought of that. I suppose that means that I would need to pass the keyfile parameter even if my authentication method is 'oauth' just so that the two profiles would look identical from dbts perspective? Wonder if that would cause dbt to get confused though.

We have a similar issue, except we specify the warehouse through an environment variable:
        dev:
            type: snowflake
            ...
            warehouse: "{{ env_var('DBT_SNOWFLAKE_WAREHOUSE', 'xsmall_1') }}"

Using a different warehouse than the default also triggers a full re-parse. I realize that we could add more profiles for each warehouse as a workaround, but we would prefer not to.

Currently for the partial parsing state checks we look at a filehash of the entire contents of the profile.yml file. This is not ideal from a granularity standpoint and does mean that changing an unused profile target will still cause reparsing. We also check for the non-secret environment variables changing in the profile or dbt_project files,  the cli vars that are passed in, and the target that's passed in. So one of the only ways to avoid a reparse if any of those things change is to use DBT_SECRET_ENV_ env vars.

@gshank I see, thanks for clarifying. My understanding was that it compares the profile in use, not the entire contents profile.yml file. Appreciate the help!


Unable to retrieve child resources -> This request is not authorized to perform this operation

Error when clicking on Blob Containers -> Unable to retrieve child resources -> This request is not authorized to perform this operation

Here, when I try to expand the tree, I get this:
Unable to retrieve child resources.
Details:
["Error:Unable to retrieve authentication token."]

@AsiaKosim that error messages means you don't have the right permissions needed to access whatever it is you are trying to access. How are you connecting to your resources? Sign in and then via subscription? Attach with SAS? Attach with Azure AD? Attach with connection string?
@StargazerNC can you go to Settings -> Services -> Disks, uncheck the checkbox and then restart? That should unblock you (assuming you don't need to work with disks).

Hi I am connecting from Azure VM within the same Virtual Network. Do I need to apply any changes on the VM.

@MRayermannMSFT Actually, after a while I just closed and reopened Azure Storage Explorer,  and magically it all worked as always have been. It's worth noting that yesterday, around 4 pm (GMT) all kinds of strange stuff was happening on our Azure services (Functions, Databases, DevOps...), so I'll just blame that. 🤣

@MRayermannMSFT I was connecting via subscription based on my Azure account. So I would assume it will automatically show all the resources to which I have access. So, after successful authentication, it shown the resources tree correctly (as on the screen shot), but I get the error on the lowest level, when I try to open the Blob:

I was also trying to connect manually  based on storage account name and the key, but result was the same.
And I definitely have the access to the resources via azure.portal:

@AsiaKosim are you running storage explorer on a VM which is in a VNet?
@mutjay have you enabled storage firewall? If so, then you will need to add the VNet as an allowed network to the firewall?

Closing due to lack of response. Please open a new issue if you're still having problems.


Exit Animation not showing in FlatList

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
When trying to animate the mounting/unmounting of a list of items, the mounting animation (from) works as expected but the unmounting animation (exit) isn't.
Expected Behavior
Unmount item with exiting animation.
Steps To Reproduce
Just try to animate the rendering of a list of items with FlatList and notice the item's behavior upon deleting an item:
<MotiView
  from={{ opacity: 0, translateX: -ms(25) }}
  animate={{ opacity: 1, translateX: 0 }}
  exit={{ opacity: 0, translateX: -ms(25) }}
  transition={{ type: 'spring' }}
>

.....

Versions
- Moti: v0.23.7
- Reanimated: v2.14.4
- React Native: v0.71.3

Screenshots
No response
Reproduction
const data = [
  {
    id: 1,
    name: 'Jack'
  },
  {
    id: 2,
    name: 'John'
  },
  {
    id: 3,
    name: 'Joe'
  },
]

// Render item
  const renderItem = ({ item }) => (
    <AnimatePresence>
      <Sample item={item} />
    </AnimatePresence>
  );

<FlatList
  data={data}
  extraData={data}
  renderItem={renderIncomingOrderCard}
  keyExtractor={item => item.id}
  horizontal={false}
/>

that kind of behavior isn’t possible, since the animate presence element is getting unmounted too. you could try reanimated layout animations if you’re on reanimated v3.

alternatively, you can do a normal list instead of a flatlist, have a single animate presence at the root, and give each direct child a unique key. that’ll work too.

I see.
Would love to see Moti integrating reanimated v3 soon.

moti should work with it out of the box

alternatively, you can do a normal list instead of a flatlist, have a single animate presence at the root, and give each direct child a unique key. that’ll work too.
with this code not working
`

      <FlatList
        ItemSeparatorComponent={() => (
          <View className="h-0.5 bg-slate-500" />
        )}
        className="flex-1 h-full"
        data={filterFolders}
        keyExtractor={item => item.id}
        renderItem={({ item }) => (
          <MotiView
            key={item.id}
            from={{ opacity: 0, scale: 0.9 }}
            animate={{ opacity: 1, scale: 1 }}
            exit={{ opacity: 0, scale: 0.8 }}
            transition={{ type: "timing", duration: 300 }}
            className="w-full"
            // style={styles.item}
          >
            <FlatItem
              workSpaceId={id}
              duplicateRequest={duplicateRequest}
              setOpenRequest={setOpenRequest}
              setOpenFolder={setOpenFolder}
              removeFolder={removeFolder}
              removeRequest={removeRequest}
              item={item}
              pinRequest={pinRequest}
            />
          </MotiView>
        )}
      />
    </AnimatePresence>`


[BUG] - Using Supabase data provider, the onMutationSuccess callback from useForm doesn't return data

Describe the bug
Using the Supabase data provider, in useForm() the onMutationSuccess callback doesn't return any data.
Steps To Reproduce

go to this condesandbox taken from the Supabase codesandbox example
edit a blog post and save, look at the console log that prints the variables from the onMutationSuccess callback. data is undefined

Expected behavior
According to the doc, data should hold the result of the mutation.
Packages

@refine/supabase

Additional Context
The problem seems to be present when creating new record as well. The codesandbox doesn't show this because at the moment we can't create a new record from the Supabase example, see #5678.

Having the same experience.
`"use client";
import { Create, useForm } from "@refinedev/antd";
import { Form, Input } from "antd";
import { useCreate } from "@refinedev/core";
import { ITemplate } from "@utility/interfaces";
export default function BlogPostCreate() {
const { mutate } = useCreate();
const { formProps, saveButtonProps } = useForm({
onMutationSuccess: (data, variables, context, isAutoSave) => {
console.log({ data, variables, context, isAutoSave });
},
});
return (

<Form {...formProps} layout="vertical">
<Form.Item
label={"Title"}
name={["title"]}
rules={[
{
required: true,
},
]}
>

</Form.Item>

);
}`

Hello @jbeaudlet @zelbazk,
What is the response in your tests? In my tests, response is empty so because of that onMutationSuccess data is undefined
Request URL:
https://iwdfzvfqbtokqetmbmbp.supabase.co/rest/v1/blog_posts?id=eq.000e3b65-43f5-4b0d-891b-ad73df4033e8
Request Method:
PATCH
Status Code:
204 No Content

Hi @alicanerdurmaz Thanks for pointing this out. it's the same for me. Do you know why the response is empty and not returning anything? I am using the refine/supabase data provider, is there a setting I am missing?

Hello again @jibize @zelbazk,
for supabase to return data, we need to specify the fields we want. you can use like this
    const { formProps, saveButtonProps } = useForm({
        meta: {
            select: "*",
        },
    });

Hi @alicanerdurmaz,
Thank you for the tip. Is this the intended behaviour? There is no mention in the doc. Also it looks like when using another data provider we don't need to set the meta select option. Also in Supabase doc, when the data is needed back, select() needs to be set at the end of the query. See my pull request.

@jibize I believe select("*") should be the default, thanks for the PR 🙌

Hi @alicanerdurmaz @BatuhanW I think I know how to fix this issue. First of all, in order to update and return the data, select() should be appended at the end of the query, as per the Supabase docs. However, 1 test, which should return error PGRST106 is failing. I think it it is failing because it doesn't expect the "select" parameter to be in the query, that is why it is throwing ERR_NOCK_NO_MATCH. I added the select parameter, and the test is working correctly. Please, assign this to me so I can submit a PR.


[To rel/1.1] Refactor compaction task metrics

This PR refactor the way to update compaction task metrics. The previous way to update the metrics is updating the counting value when compaction task is submitted or starts to run, but it could be not accurate because the task submission could fail. This pr change the way of counting task by getting running task list and task waiting queue from task manager, and count them when the metrics framework tries to report the value.

The whole logic is OK but not sure whether its efficiency is OK because it seems that each metrics pull will trigger one invoke regarding getCompactionTaskStatistic()

The whole logic is OK but not sure whether its efficiency is OK because it seems that each metrics pull will trigger one invoke regarding getCompactionTaskStatistic()

@THUMarkLau has confirmed there is no more cpu cost


Add Cookie API

The cookie api is an js extension but supports a lots of browsers. Do you think it is worth to adding it to stdweb?

I guess most browsers will support cookie modification right now and the API would be some kind of wrapper for this

@saschagrunert There's two completely different Cookie APIs:

document.cookie has been supported by all browsers for decades.

The cookie API you linked to is new: it is for browser extensions only, not websites.

I think supporting the first API is reasonable.


Reasoning for content events initialization

Hi,
The content events are currently initialized in IndexingJobService in the method InitContentEvent after the IndexAllOnce.
However, once the application is restarted / redeployed, the content events will be lost unless we'll reindex the whole site again, and for bigger sites it may take couple of hours.
I'm wondering if there's any particular reason why the content events are not initialized during the application startup, but rather in the reindexing job?

Not sure why was done like this.  We can try to move to application startup and see if works fine.

I'll try it and create another PR if it proves to be working good.

We had our luck reverting these changes (init of events in job and indexing directly in job), more details in #29


Please compile the project with parameters information (-parameters)

Please enable the -parameters flag in the maven compiler plugin configuration to make sure parameters info are available at runtime. I am happy to submit a PR if that helps.

@snicoll I did the configuration something like this in the pox.xml file:
<build>
	<plugins>
		<plugin>
			<groupId>org.graalvm.buildtools</groupId>
			<artifactId>native-maven-plugin</artifactId>
		</plugin>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
		</plugin>
		<plugin>
			<groupId> org.apache.maven.plugins</groupId>
			<artifactId>maven-compiler-plugin</artifactId>
			<configuration>
				<compilerArgs>-parameters</compilerArgs>
			</configuration>
		</plugin>
	</plugins>
</build>

But still getting the same error!!

please stop asking questions at the wrong place. You're not compiling mybatis so that is irrelevant. The mybatis build should be updated, not your application.

Hello @snicoll ,
I just javap-ed the org.apache.ibatis.mapping.ResultFlag and org.apache.ibatis.builder.ResultMapResolver in the mybatis-3.5.13.jar and it seems that the param info is attached.
  public static org.apache.ibatis.mapping.ResultFlag valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/ibatis/mapping/ResultFlag;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: ldc           #1                  // class org/apache/ibatis/mapping/ResultFlag
         2: aload_0
         3: invokestatic  #19                 // Method java/lang/Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
         6: checkcast     #1                  // class org/apache/ibatis/mapping/ResultFlag
         9: areturn
      LineNumberTable:
        line 21: 0
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
            0      10     0  name   Ljava/lang/String;
    MethodParameters:
      Name                           Flags
      name                           mandated

How did you check?
It's configured in the parent pom.xml, I think.

Sorry, I missed the configuration in the parent.
@Bahramudin the change here is quite recent so you'll have to upgrade to the latest MyBatis version.

@snicoll Thanks for the reply!
Here I have updated MyBatis for the newest version (3.5.13), but the problem still exists. Exactly which version of MyBatis working with GraalVM? Thanks!


[CVE] Update to latest version of BouncyCastle

The current version of bouncycastle used by azure-core has a security vulnerability.
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-7940
This patch upgrades bouncycastle from 1.46 (vulnerable)  to  1.59 (fixed)
Note that the bouncycastle release strategy has changed (since 2012).
The jdk15 & jdk16 packages are legacy, and users should migrate to the "jdk15on" package instead ("on" means "JDK 15 and up") -- http://bouncy-castle.1462172.n4.nabble.com/What-to-use-bc-jdk15on-or-bc-jdk16-td4655449.html
No releases of jdk16 since 2012: https://mvnrepository.com/artifact/org.bouncycastle/bcprov-jdk16
Newer releases: https://mvnrepository.com/artifact/org.bouncycastle/bcprov-jdk15on
Therefore, this patch switches to the jdk15on package.
If possible, when this is merged, could you please do a release so that our codebase not longer has this vulnerable package in its dependencies?

Can one of the admins verify this patch?

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: jamesbroadhead sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@jamesbroadhead can you please open an issue/PR to the https://github.com/Azure/azure-libraries-for-java repo?
The bouncycastle dependency should only be used as part of the samples and I do not expect our main libraries to take any dependency on it. Looking a bit into the change you are proposing new new dependency also introduces a new API for the bouncycastle which means that some of the sample code needs to be changed to reflect these breaking changes.

@milismsft  I've iterated, making it a compile-time dependency of archive/azure-samples.
Let's see how CI does this time.
Were there other changes you'd noted? Could you share?
I'll take a look at https://github.com/Azure/azure-libraries-for-java repo too - but I don't think that it has this problem

@milismsft is there anything else needed to merge this?


change if x | foo | endif issue with neovim

Hi,
ty for awesome lightline, I've used it every day for years.
We seem to hit E171: Missing :endif
when at :s/ in neovim
see https://github.com/neovim/neovim/issues/8796
I am not sure how to fix in neovim, so this is a simple work-around.
thx,
-m

I cannot reproduce the issue. Please describe the precise steps to reproduce.

Switching to the command line history seems to reproduce; :s/<C-f><C-c>. But I'm not convinced I need fix in the plugin; commands separated by | is a stable feature of Vim script and Neovim should not break it. Can you test https://github.com/neovim/neovim/pull/15638?

Hi,
I agree, your existing syntax should work ok in neovim.
Yes, your neovim PR: https://github.com/neovim/neovim/pull/15638 fixes the issue.
Thank you so much for looking into it!
Hopefully they will merge it into neovim soon.
take care,
-m

Since the fix to Neovim is merged, closing.


"-OutStar 1" does not work

Hi Shawn,
I compiled MotionCor3_v1.1.1 on Rocky Linux 8, and it runs normally when calculating a single movie file, but the star file is not generated when using the '-OutStar 1' option.
Do I miss something during my compilation?
Best,
Xiang.

the same issue


MINOR: Standardize KRaft logging, thread names, and terminology

Standardize KRaft thread names.

Always use kebab case. That is, "my-thread-name".

Thread prefixes are just strings, not Option[String] or Optional.
If you don't want a prefix, use the empty string.

Thread prefixes end in a dash (except the empty prefix). Then you can
calculate thread names as $prefix + "my-thread-name"

Broker-only components get "broker-$id-" as a thread name prefix. For example, "broker-1-"

Controller-only components get "controller-$id-" as a thread name prefix. For example, "controller-1-"

Shared components get "kafka-$id-" as a thread name prefix. For example, "kafka-0-"

Always pass a prefix to KafkaEventQueue, so that threads have names like
"broker-0-metadata-loader-event-handler" rather than "event-handler". Prior to this PR, we had
several threads just named "EventHandler" which was not helpful for debugging.

QuorumController thread name is "quorum-controller-123-event-handler"

Don't set a thread prefix for replication threads started by ReplicaManager. They run only on the
broker, and already include the broker ID.

Standardize KRaft slf4j log prefixes.

Names should be of the form "[ComponentName id=$id] ". So for a ControllerServer with ID 123, we
will have "[ControllerServer id=123] "

For the QuorumController class, use the prefix "[QuorumController id=$id] " rather than
"[Controller <nodeId] ", to make it clearer that this is a KRaft controller.

In BrokerLifecycleManager, add isZkBroker=true to the log prefix for the migration case.

Standardize KRaft terminology.

All synonyms of combined mode (colocated, coresident, etc.) should be replaced by "combined"

All synonyms of isolated mode (remote, non-colocated, distributed, etc.) should be replaced by
"isolated".

cc @ijuma @mumrah @hachikuji
So about the thread names thing. I’m open to changing the thread names to “kebab case” (i.e. my-thread-name)
I do think in the context of JUnit we definitely need to have broker-0-my-thread-name and controller-0-my-thread-name. I find myself looking at JUnit backtraces all too often, and having 6 distinct threads named my-thread-name just doesn't work for me.
So then the big question becomes whether we would want the prefixes in prod or not. The "pro" case is that it simplifies the code to just unconditionally do that, and avoid cases where someone accidentally forgets to set the prefix. The con case is that we should know what node we’re on, so the information is redundant.
Although I’ve seen people do weird things like combine several process backtraces into one file or send ZK and Kafka logs all to the same file. So I don’“t truly believe the “we’ll never need it” case. Maybe “we rarely need it” or “we won’t need it if people are reasonable”

@cmccabe, I see your point about the node ID when debugging tests -- it can be annoying to not know which broker instance a thread belongs to. You're kebab case examples look good to me 👍
Did you find where the lone EventHandler is coming from?

With the latest code, I got the following threads in KRaft mode:
"metrics-meter-tick-thread-1" #19 daemon prio=5 os_prio=31 cpu=0.57ms elapsed=9.63s tid=0x000000012608ce00 nid=0x8403 waiting on condition  [0x00000001737aa000]
"metrics-meter-tick-thread-2" #24 daemon prio=5 os_prio=31 cpu=0.80ms elapsed=9.61s tid=0x0000000157c1c400 nid=0x8203 waiting on condition  [0x00000001739b6000]
"kafka-1-raft-scheduler0" #25 daemon prio=5 os_prio=31 cpu=0.07ms elapsed=9.54s tid=0x00000001576dfe00 nid=0x8003 waiting on condition  [0x0000000173bc2000]
"raft-expiration-reaper" #27 prio=5 os_prio=31 cpu=4.06ms elapsed=9.52s tid=0x00000001576e9600 nid=0x7f03 waiting on condition  [0x0000000173dce000]
"kafka-1-raft-outbound-request-thread" #26 prio=5 os_prio=31 cpu=3.38ms elapsed=9.42s tid=0x0000000157bfc400 nid=0x7e03 runnable  [0x0000000173fda000]
"kafka-1-raft-io-thread" #28 prio=5 os_prio=31 cpu=86.24ms elapsed=9.42s tid=0x00000001576e8c00 nid=0x7d03 waiting on condition  [0x00000001741e6000]
"kafka-1-metadata-loaderevent-handler" #29 prio=5 os_prio=31 cpu=62.78ms elapsed=9.42s tid=0x0000000156410800 nid=0x7b03 waiting on condition  [0x00000001743f2000]
"kafka-1-snapshot-generator-event-handler" #30 prio=5 os_prio=31 cpu=0.09ms elapsed=9.42s tid=0x000000012687f400 nid=0x6c03 waiting on condition  [0x00000001745fe000]
"quorum-controller-1-event-handler" #31 prio=5 os_prio=31 cpu=44.08ms elapsed=9.41s tid=0x0000000157c25600 nid=0x7a03 waiting on condition  [0x000000017480a000]
"controller-1-ThrottledChannelReaper-Fetch" #32 prio=5 os_prio=31 cpu=0.70ms elapsed=9.40s tid=0x0000000157c24a00 nid=0x6e03 waiting on condition  [0x0000000174a16000]
"controller-1-ThrottledChannelReaper-Produce" #33 prio=5 os_prio=31 cpu=1.02ms elapsed=9.40s tid=0x0000000157c25000 nid=0x6f03 waiting on condition  [0x0000000174c22000]
"controller-1-ThrottledChannelReaper-Request" #34 prio=5 os_prio=31 cpu=0.42ms elapsed=9.40s tid=0x00000001576df800 nid=0x7003 waiting on condition  [0x0000000174e2e000]
"controller-1-ThrottledChannelReaper-ControllerMutation" #35 prio=5 os_prio=31 cpu=0.56ms elapsed=9.40s tid=0x000000015770aa00 nid=0x7603 waiting on condition  [0x000000017503a000]
"ExpirationReaper-1-AlterAcls" #36 prio=5 os_prio=31 cpu=3.64ms elapsed=9.39s tid=0x0000000157759000 nid=0x7503 waiting on condition  [0x0000000175246000]
"data-plane-kafka-request-handler-0" #37 daemon prio=5 os_prio=31 cpu=4.57ms elapsed=9.39s tid=0x0000000157757200 nid=0x7303 waiting on condition  [0x0000000175452000]
"data-plane-kafka-request-handler-1" #38 daemon prio=5 os_prio=31 cpu=3.38ms elapsed=9.39s tid=0x000000015775b800 nid=0xab03 waiting on condition  [0x000000017565e000]
"data-plane-kafka-request-handler-2" #39 daemon prio=5 os_prio=31 cpu=3.45ms elapsed=9.39s tid=0x000000015775be00 nid=0x15303 waiting on condition  [0x000000017586a000]
"data-plane-kafka-request-handler-3" #40 daemon prio=5 os_prio=31 cpu=2.33ms elapsed=9.39s tid=0x0000000157757800 nid=0x15203 waiting on condition  [0x0000000175a76000]
"data-plane-kafka-request-handler-4" #41 daemon prio=5 os_prio=31 cpu=2.46ms elapsed=9.39s tid=0x0000000157757e00 nid=0xad03 waiting on condition  [0x0000000175c82000]
"data-plane-kafka-request-handler-5" #42 daemon prio=5 os_prio=31 cpu=2.01ms elapsed=9.39s tid=0x0000000157758400 nid=0xae03 waiting on condition  [0x0000000175e8e000]
"data-plane-kafka-request-handler-6" #43 daemon prio=5 os_prio=31 cpu=2.24ms elapsed=9.39s tid=0x0000000157754400 nid=0x14f03 waiting on condition  [0x000000017609a000]
"data-plane-kafka-request-handler-7" #44 daemon prio=5 os_prio=31 cpu=2.89ms elapsed=9.39s tid=0x0000000157754a00 nid=0xb003 waiting on condition  [0x00000001762a6000]
"data-plane-kafka-network-thread-1-ListenerName(CONTROLLER)-PLAINTEXT-0" #21 prio=5 os_prio=31 cpu=16.88ms elapsed=9.38s tid=0x0000000157c24000 nid=0xb203 runnable  [0x00000001764b2000]
"data-plane-kafka-network-thread-1-ListenerName(CONTROLLER)-PLAINTEXT-1" #22 prio=5 os_prio=31 cpu=4.53ms elapsed=9.38s tid=0x0000000157c28600 nid=0xb303 runnable  [0x00000001766be000]
"data-plane-kafka-network-thread-1-ListenerName(CONTROLLER)-PLAINTEXT-2" #23 prio=5 os_prio=31 cpu=4.60ms elapsed=9.38s tid=0x0000000157c28c00 nid=0x14c03 runnable  [0x00000001768ca000]
"data-plane-kafka-socket-acceptor-ListenerName(CONTROLLER)-PLAINTEXT-9093" #20 prio=5 os_prio=31 cpu=5.88ms elapsed=9.38s tid=0x0000000157ce7a00 nid=0xb503 runnable  [0x0000000176ad6000]
"broker-1-lifecycle-managerevent-handler" #45 prio=5 os_prio=31 cpu=3.50ms elapsed=9.37s tid=0x0000000157759600 nid=0x14903 waiting on condition  [0x0000000176ce2000]
"broker-1-ThrottledChannelReaper-Fetch" #46 prio=5 os_prio=31 cpu=0.58ms elapsed=9.37s tid=0x0000000156408e00 nid=0xb603 waiting on condition  [0x0000000176eee000]
"broker-1-ThrottledChannelReaper-Produce" #47 prio=5 os_prio=31 cpu=0.39ms elapsed=9.37s tid=0x000000015640f800 nid=0xb703 waiting on condition  [0x00000001770fa000]
"broker-1-ThrottledChannelReaper-Request" #48 prio=5 os_prio=31 cpu=0.51ms elapsed=9.37s tid=0x000000012388a400 nid=0x14603 waiting on condition  [0x0000000177306000]
"broker-1-ThrottledChannelReaper-ControllerMutation" #49 prio=5 os_prio=31 cpu=0.36ms elapsed=9.37s tid=0x0000000126881600 nid=0xb903 waiting on condition  [0x0000000177512000]
"broker-1--to-controller-forwarding-channel-manager" #50 prio=5 os_prio=31 cpu=0.53ms elapsed=9.35s tid=0x0000000157d05600 nid=0x14303 runnable  [0x000000017771e000]
"broker-1--to-controller-alter-partition-channel-manager" #55 prio=5 os_prio=31 cpu=0.38ms elapsed=9.33s tid=0x000000012701be00 nid=0x14103 runnable  [0x000000017792a000]
"ExpirationReaper-1-Produce" #56 prio=5 os_prio=31 cpu=2.05ms elapsed=9.33s tid=0x000000012633ba00 nid=0x13f03 waiting on condition  [0x0000000177b36000]
"ExpirationReaper-1-Fetch" #57 prio=5 os_prio=31 cpu=1.60ms elapsed=9.33s tid=0x0000000156416400 nid=0xba03 waiting on condition  [0x0000000177d42000]
"ExpirationReaper-1-DeleteRecords" #58 prio=5 os_prio=31 cpu=2.39ms elapsed=9.33s tid=0x00000001577ffa00 nid=0xbc03 waiting on condition  [0x0000000177f4e000]
"ExpirationReaper-1-ElectLeader" #59 prio=5 os_prio=31 cpu=3.01ms elapsed=9.33s tid=0x0000000157756c00 nid=0xbd03 waiting on condition  [0x0000000290206000]
"ExpirationReaper-1-Heartbeat" #60 prio=5 os_prio=31 cpu=1.83ms elapsed=9.32s tid=0x0000000123889400 nid=0xbe03 waiting on condition  [0x0000000290412000]
"ExpirationReaper-1-Rebalance" #61 prio=5 os_prio=31 cpu=2.03ms elapsed=9.32s tid=0x0000000123889a00 nid=0xc003 waiting on condition  [0x000000029061e000]
"broker-1--to-controller-heartbeat-channel-manager" #63 prio=5 os_prio=31 cpu=27.97ms elapsed=9.30s tid=0x0000000126450600 nid=0xc203 runnable  [0x000000029082a000]
"ExpirationReaper-1-AlterAcls" #64 prio=5 os_prio=31 cpu=3.32ms elapsed=9.29s tid=0x00000001262dee00 nid=0x13b03 waiting on condition  [0x0000000290a36000]
"data-plane-kafka-request-handler-0" #65 daemon prio=5 os_prio=31 cpu=1.67ms elapsed=9.29s tid=0x0000000126467c00 nid=0xc403 waiting on condition  [0x0000000290c42000]
"data-plane-kafka-request-handler-1" #66 daemon prio=5 os_prio=31 cpu=1.05ms elapsed=9.29s tid=0x0000000126468200 nid=0xc503 waiting on condition  [0x0000000290e4e000]
"data-plane-kafka-request-handler-2" #67 daemon prio=5 os_prio=31 cpu=2.19ms elapsed=9.29s tid=0x0000000126468800 nid=0x13703 waiting on condition  [0x000000029105a000]
"data-plane-kafka-request-handler-3" #68 daemon prio=5 os_prio=31 cpu=1.28ms elapsed=9.29s tid=0x0000000157d05c00 nid=0xc603 waiting on condition  [0x0000000291266000]
"data-plane-kafka-request-handler-4" #69 daemon prio=5 os_prio=31 cpu=1.10ms elapsed=9.29s tid=0x0000000157db3400 nid=0xc803 waiting on condition  [0x0000000291472000]
"data-plane-kafka-request-handler-5" #70 daemon prio=5 os_prio=31 cpu=1.37ms elapsed=9.29s tid=0x0000000157db3a00 nid=0x13503 waiting on condition  [0x000000029167e000]
"data-plane-kafka-request-handler-6" #71 daemon prio=5 os_prio=31 cpu=0.85ms elapsed=9.29s tid=0x0000000157db4000 nid=0x13403 waiting on condition  [0x000000029188a000]
"data-plane-kafka-request-handler-7" #72 daemon prio=5 os_prio=31 cpu=1.05ms elapsed=9.29s tid=0x0000000126462200 nid=0xcb03 waiting on condition  [0x0000000291a96000]
"kafka-scheduler-0" #73 daemon prio=5 os_prio=31 cpu=0.45ms elapsed=9.23s tid=0x00000001238d8a00 nid=0xcd03 waiting on condition  [0x0000000291ca2000]
"kafka-scheduler-1" #74 daemon prio=5 os_prio=31 cpu=0.07ms elapsed=9.23s tid=0x00000001238d9000 nid=0xce03 waiting on condition  [0x0000000291eae000]
"kafka-scheduler-2" #75 daemon prio=5 os_prio=31 cpu=0.61ms elapsed=9.23s tid=0x00000001238d9600 nid=0xcf03 waiting on condition  [0x00000002920ba000]
"kafka-scheduler-3" #76 daemon prio=5 os_prio=31 cpu=0.07ms elapsed=9.23s tid=0x0000000126461400 nid=0x12f03 waiting on condition  [0x00000002922c6000]
"kafka-scheduler-4" #77 daemon prio=5 os_prio=31 cpu=0.06ms elapsed=9.23s tid=0x00000001262d0c00 nid=0x12d03 waiting on condition  [0x00000002924d2000]
"kafka-log-cleaner-thread-0" #78 prio=5 os_prio=31 cpu=3.47ms elapsed=9.21s tid=0x0000000126881c00 nid=0x12b03 waiting on condition  [0x00000002926de000]
"kafka-scheduler-5" #79 daemon prio=5 os_prio=31 cpu=3.99ms elapsed=9.21s tid=0x00000001565c9200 nid=0xd103 waiting on condition  [0x00000002928ea000]
"kafka-scheduler-6" #80 daemon prio=5 os_prio=31 cpu=0.06ms elapsed=9.21s tid=0x00000001565f9800 nid=0xd303 waiting on condition  [0x0000000292af6000]
"kafka-scheduler-7" #81 daemon prio=5 os_prio=31 cpu=0.05ms elapsed=9.21s tid=0x00000001262e9a00 nid=0xd503 waiting on condition  [0x0000000292d02000]
"LogDirFailureHandler" #82 prio=5 os_prio=31 cpu=0.10ms elapsed=9.21s tid=0x000000012701d200 nid=0x12a03 waiting on condition  [0x0000000292f0e000]
"kafka-scheduler-8" #83 daemon prio=5 os_prio=31 cpu=0.04ms elapsed=9.21s tid=0x00000001268ab400 nid=0x12803 waiting on condition  [0x000000029311a000]
"group-metadata-manager-0" #84 daemon prio=5 os_prio=31 cpu=1.99ms elapsed=9.21s tid=0x00000001565f9e00 nid=0xd803 waiting on condition  [0x0000000293326000]
"transaction-log-manager-0" #85 daemon prio=5 os_prio=31 cpu=0.06ms elapsed=9.21s tid=0x0000000126473000 nid=0x12703 waiting on condition  [0x0000000293532000]
"TxnMarkerSenderThread-1" #62 prio=5 os_prio=31 cpu=2.18ms elapsed=9.21s tid=0x0000000126473600 nid=0xdb03 runnable  [0x000000029373e000]
"kafka-scheduler-9" #86 daemon prio=5 os_prio=31 cpu=0.06ms elapsed=9.21s tid=0x00000001238f1800 nid=0xdc03 waiting on condition  [0x000000029394a000]
"data-plane-kafka-network-thread-1-ListenerName(PLAINTEXT)-PLAINTEXT-0" #52 prio=5 os_prio=31 cpu=3.74ms elapsed=9.16s tid=0x00000001238d4800 nid=0xdd03 runnable  [0x0000000293b56000]
"data-plane-kafka-network-thread-1-ListenerName(PLAINTEXT)-PLAINTEXT-1" #53 prio=5 os_prio=31 cpu=1.72ms elapsed=9.16s tid=0x0000000157db8a00 nid=0x12403 runnable  [0x0000000293d62000]
"data-plane-kafka-network-thread-1-ListenerName(PLAINTEXT)-PLAINTEXT-2" #54 prio=5 os_prio=31 cpu=3.71ms elapsed=9.16s tid=0x00000001565fa400 nid=0xdf03 runnable  [0x0000000293f6e000]
"data-plane-kafka-socket-acceptor-ListenerName(PLAINTEXT)-PLAINTEXT-9092"

Thanks, @mumrah . I did another quick sweep of the thread named, like you did, and deleted the extra dash in one case, and added a dash in another. There are still a few ugly and/or unprefixed names, but this is at least a good start. I also spot checked a log file. I do think the new way is more readable

Did you find where the lone EventHandler is coming from?

Sorry, I meant to respond to this comment earlier. But for completeness, the lone EventHandler is gone now, last I checked. Might have been from MetadataLoader, but I fixed a few so I can't recall


Add SOLID principles to "Best Practices"

One of the most impactful principles in software development is Robert Martin's SOLID principles of Object oriented design.
I've provided a brief overview of these principles and would love to see them added to our engineering best practices.
Do provide feedback on wording / errors / improvements that you may see.

Please could you update and open a new PR for this given the new playbook structure? Thank you.

@fnocera I didn't catch this one until now. The facelift and restructure, are they documented somewhere? I can't see any differences after having pulled and rebased, not sure how to modify my pull request.


fix(eventhandler): continue processing indepedent blockdevices even if one device fails

Why is this PR required? What issue does it fix?:
What this PR does?:
Does this PR require any upgrade changes?:
If the changes in this PR are manually verified, list down the scenarios covered::
Any additional information for your reviewer? :
Mention if this PR is part of any design or a continuation of previous PRs
Checklist:

[x] Fixes https://github.com/openebs/openebs/issues/3051
[ ] PR Title follows the convention of  <type>(<scope>): <subject>
[x] Has the change log section been updated?
[ ] Commit has unit tests
[ ] Commit has integration tests
[ ] (Optional) Are upgrade changes included in this PR? If not, mention the issue/PR to track:
[ ] (Optional) If documentation changes are required, which issue on https://github.com/openebs/openebs-docs is used to track them:

Codecov Report

Merging #517 (f5f9b8f) into master (3bebe70) will decrease coverage by 0.07%.
The diff coverage is 14.28%.

@@            Coverage Diff             @@
##           master     #517      +/-   ##
==========================================
- Coverage   47.51%   47.44%   -0.08%
==========================================
  Files          73       73
  Lines        3315     3322       +7
==========================================
+ Hits         1575     1576       +1
- Misses       1580     1586       +6
  Partials      160      160

Impacted Files
Coverage Δ

cmd/ndm_daemonset/probe/eventhandler.go
40.38% <14.28%> (-4.06%)
: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 3bebe70...f5f9b8f. Read the comment docs.


Fix flaky spec failure in updater (take 2)

In https://github.com/dependabot/dependabot-core/pull/6461, I attempted to inject environment credentials in the fixture file that bin_run_spec.rb uses so that the spec's requests don't get rate limited.
However, turns out credentials were not being properly picked up by the fetcher.
I think the reason is that "credentials" were located at the wrong position in the fixture file, so were getting ignored. I also corrected other fixtures with the same problem.

The hints of why I think the right place for credentials is a top level "credentials" key, and not one scoped to "job" is the place where credentials are passed:
https://github.com/dependabot/dependabot-core/blob/fe24ab9e9914ed2e4ed415b2d1cd4828fee07791/updater/lib/dependabot/file_fetcher_job.rb#L96
https://github.com/dependabot/dependabot-core/blob/fe24ab9e9914ed2e4ed415b2d1cd4828fee07791/updater/lib/dependabot/file_fetcher_job.rb#L175
And the examples used in the CLI: https://github.com/dependabot/cli/blob/main/README.md#job-description-file.

Thanks for your reviews @landongrindheim!


Get util.js to 100% test coverage

Issue #8

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Clear Scrapy dns cache on connection errors to proxy service

This helps to failover at dns level and when service is moved to new location where retaining original IP is not possible.

Current coverage is 93.27% (diff: 100%)

Merging #23 into master will increase coverage by 0.29%

@@             master        #23   diff @@
==========================================
  Files             2          2
  Lines           114        119     +5
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            106        111     +5
  Misses            8          8
  Partials          0          0

Powered by Codecov. Last update 19c5362...301fd60

LGTM


Continue auto generating other controllers on go list failures

Issue #, if available: https://github.com/aws-controllers-k8s/community/issues/980
Description of changes:

Gracefully handle go list failures and continue to next service controller

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

That's weird. Which service was missing the dependency?
/lgtm

That's weird. Which service was missing the dependency?
/lgtm

https://github.com/aws-controllers-k8s/kms-controller


Added support for NTP.

OK. This pull request seems to be OK as far as I can see.
No Goggly email warnings.
I got some help from Bradley Faint to do the rebase.
So please commit the pull, or let me know if there's anything else wrong.
Thanks,
Ross

3rd time's the charm ;)

Hooray! Thanks!


Possible problems with state_record_and_type validation

Hi,
I'm using 088b7ac094678587b45ab2a97e751db6a0c37d44 (HEAD -> master, tag: 0.4.2
I have this in a module:
-module(example).
-behavior(gen_server).

-include("example.hrl").

-record(state, {
          oyveyh
}).

-type(state() :: #state{}).

-export([ start_link/0
        , init/1
        , handle_info/2
        , handle_call/3
        , handle_cast/2
        , terminate/2
        ]).

start_link() ->
  gen_server:start_link({local, ?MODULE}, ?MODULE, [], [{timeout, 3000}]).

init(_Args) ->
  {ok, #state{}}.

terminate(_, #state{} = _OS) ->
  ok.

handle_call(_Request, _From, State) ->
  {noreply, State}.

handle_cast({_Request, _From}, State) ->
  {noreply, State}.

handle_info(connect, OS) ->
  {noreply, OS}.

I got:
tothlac:proba elvis rock
# src/example.erl [FAIL]
  - state_record_and_type
    - This module implements an OTP behavior but is missing a 'state' record.

That's because elvis_style:is_otp_module/1 does not even check the behaviour attribute, it only checks behavior, which is possibly a bug.
So it will work with -behaviour(gen_server), but in this case the check is not even called.
is_otp_module(Root) ->
    OtpSet = sets:from_list([gen_server,
                             gen_event,
                             gen_fsm,
                             supervisor_bridge
                            ]),
    IsBehaviorAttr = fun(Node) -> behavior == ktn_code:type(Node) end,

Then in state_record_and_type/4 it goes back to the {false, Other} clause, since has_state_record/1 returned false (has_state_type/1 returned true):
            case {has_state_record(Root), has_state_type(Root)} of
                {true, true} -> [];
                {false, Other} ->
                    Msg = ?STATE_RECORD_MISSING_MSG,
                    Result = elvis_result:new(item, Msg, [], 1),

I have this problem only if example.hrl is included, and only if example.hrl is not in the include folder but in src. If I move it to include or if I delete the include attr it works.
It also works if add
-record_attr(state).

Possible problems:

the check is not called with -behaviour(gen_server). As far as I know OTP allows behaviour and behavior attributes.
including a hrl from the src folder deletes record_attr hence I got the error.

The following PR on aleppo fixes this: https://github.com/inaka/aleppo/pull/55


Painless script not working ...

i have this section of config on my spike rule, but not working for me, any body can help me to solve this.
metric_agg_key: scripted-metric
metric_agg_script:
    script: "doc[\"jolokia.jvm.memory.heap_usage.max\"].value - doc[\"jolokia.jvm.memory.heap_usage.used\"].value"

i get this error...
unsupported operand type(s) for +=: 'int' and 'NoneType'

@nsano-rururu hi buddy, sorry for my bad english, the https://github.com/Yelp/elastalert/pull/2759 means that i had to use elastalert2 or simply upgrade from master? explain me please, or if i must do another thing about it. Thanks

Find out if you want to patch it yourself or use elastalert2. I'm not a search engine

2759 pull request should have been merged into elastalert2

Please close

Hi @nsano-rururu, first, thanks for the upgrade recommendation to elastalert2, now in this moment i want to do the next with not success. I need get two fields (jolokia.jvm.memory.heap_usage.max and jolokia.jvm.memory.heap_usage.used) and substract them, to obtain the amount of jvm memory free. How can i do it, if my sample if wrong, please help me, i dont know if a need another type of rule o simply fix my method ....
metricbeat_patterns_jvm_heap.yaml: |-
name: Alerta - Incremento del consumo de Heap en la JVM
type: spike_aggregation
index: "metricbeat-7.17.1-*"
doc_type: _doc
filter:
- query:
query_string:
query: 'event.module:jolokia AND metricset.name:jmx'
metric_agg_type: avg
metric_agg_key: myScriptedMetric
metric_agg_script:
script: doc['jolokia.jvm.memory.heap_usage.max'].value - doc['jolokia.jvm.memory.heap_usage.used'].value
realert:
minutes: 5
timeframe:
minutes: 15
min_doc_count: 1
spike_type: "down"
spike_height: 1
threshold_ref: 104857600 ### 100 MB FREE ###
alert:
 - "debug"

Thanks again @nsano-rururu ......
waiting ....


Calling _rtx_hook manually

As #204 has been reverted to support proper usage with direnv, is the recommendation to manually call _rtx_hook, as can be seen in the e2e tests?
Eg:-
eval "$(rtx activate bash)" && _rtx_hook
eval "$(zoxide init bash)"

this is in the FAQ: https://github.com/jdxcode/rtx#rtx-isnt-working-with-tmux
I recommend calling "$(rtx hook-env -s fish)" over _rtx_hook. _rtx_hook is an internal command not intended for direct use and its behavior may change in the future.

So like this?
eval "$(rtx activate bash)"
eval "$(rtx hook-env -s bash)"
eval "$(zoxide init bash)"

yes

I'm going to close unless you're still having issues


Cannot cut and paste values into graphQL requests

When I copy and paste into a graphQL request, it is not stored and not sent in the request.  If i click on a different request and then return to the request in question i see that my text is gone.

Steps to reproduce:

copy text
past text into message body
send request.
observe timeline and notice the copied text is not sent.
click on a different request
return to the request in question
notice the text you had pasted into the body is no longer there.

This is happening on my regular REST calls also, not just GraphQL.

2020.3.2 was just released and appears to address this issue.

Yes, this was fixed by #2389


Catch ParseErrors

The parser currently raises ParseError in the event of a parse failure, but this is not caught by the frontend, resulting in an ugly stacktrace.

Fixed by 896e28f


Determine if we can use http://www.google.cn/maps for our map services and how to detect browsing from China

Overview
Answer 2 questions:

Can we use http://www.google.cn/maps as a drop in API endpoint for showing maps?
How do we detect when a person is browsing from China?

Is your feature request related to a problem? Please describe.
The standard Google Maps APIs do not work in China. A large percentage of facilities are in China.
Describe the solution you'd like

Documentation on how we can detect a person browsing from China and if we can conditionally use google.cn/maps in that case.

Based on testing with BrowserStack IP Geolocation It appears that HTTPS is supported on www.google.cn/maps

Testing the deployed app with BrowserStack IP Geolocation shows that the app is fully functional

I used a service (https://ipgeolocation.io/) to geolocate the IP address being used in BrowserStack and it reports that the address is in China.

Either our application has started working in China with no changes, or there is some other problem that is/was preventing the map from displaying properly for people using the application in China.

I applied this diff in development to use Google map services hosted in China
diff --git a/src/app/src/components/FacilitiesMap.jsx b/src/app/src/components/FacilitiesMap.jsx
index f501519..b6631d6 100644
--- a/src/app/src/components/FacilitiesMap.jsx
+++ b/src/app/src/components/FacilitiesMap.jsx
@@ -482,7 +482,7 @@ class FacilitiesMap extends Component {
                         yesIWantToUseGoogleMapApiInternals
                         onGoogleApiLoaded={this.handleAPILoaded}
                         bootstrapURLKeys={{
-                            region: 'IE',
+                            region: 'CN',
                             key: GOOGLE_CLIENT_SIDE_API_KEY,
                         }}
                         options={this.createMapOptions}
diff --git a/src/app/src/components/FacilityDetailsStaticMap.jsx b/src/app/src/components/FacilityDetailsStaticMap.jsx
index 20695ea..64d0b29 100644
--- a/src/app/src/components/FacilityDetailsStaticMap.jsx
+++ b/src/app/src/components/FacilityDetailsStaticMap.jsx
@@ -4,9 +4,9 @@ import { GOOGLE_CLIENT_SIDE_API_KEY } from '../util/constants.facilitiesMap';

 import { facilityPropType } from '../util/propTypes';

-const baseURL = 'https:///maps.googleapis.com/maps/api/staticmap';
+const baseURL = 'https://www.google.cn/maps/api/staticmap';
 const staticParams =
-    'zoom=18&size=320x200&maptype=satellite&region=IE';
+    'zoom=18&size=320x200&maptype=satellite&region=CN';
 const apiKey = `key=${GOOGLE_CLIENT_SIDE_API_KEY}`;

 const makeGoogleMapsStaticMapURLFromLatLng = ({ lat, lng }) =>

Both dynamic and static map requests are working correctly.

It looks like Google may be able to "see through" whatever BrowserStack is doing to change IP address.
These screenshots are from the same BrowserStack session with a "China" location.

Using https://www.dotcom-tools.com/website-speed-test.aspx to make a request to the production app from Shanghai we see the request to load the Google maps API fail with a TLS-related authentication error.

This confirms our original understanding that the Google Maps API hosted in China would not respond https request originating in China.
I set up a test scenario in development by:

Replacing https with http for our requests to Google Maps services
Editing the google-map-react package code inside the app container to use http instead of https.
Reloading the VM and running ./scripts/update and ./scripts/server
Running ngrok to serve port 8081.
Temporarily adding the the ngrok domain to the development Google Maps API key.

I was able to load and use the app normally in development, with all Google requests being made to the unencrypted China endpoints.
I was trying to use https://www.dotcom-tools.com/website-speed-test.aspx to test the ngrok endpoint from China but got repeated failures.
I tried using https://www.webpagetest.org to load the ngrok endpoint in Firefox from Bejing. I had to wait a queue for a while, but did get some encouraging results.
The first run timed out but the 2 subsequent runs resulted in a fully rendered map.

To answer the second question

How do we detect when a person is browsing from China?

We don't want to use location services and prompt for the users location just to detect their country.
IP address geolocation is unobtrusive. Not 100% accurate, but may be good enough.
Free option
http://userinfo.io/
Pay options
https://ipinfo.io/
https://ipgeolocation.io/
Providing a UI element to manually switch to a China-compatible version and remembering the choice in local storage is another option.


[bug] fail to init on GCP

Describe the bug
I try to init skyplane on GCP, but failed due to setIamPolicy failure
To Reproduce
$ skyplane init

(1) Configuring AWS:
    Do you want to configure AWS support in Skyplane? [Y/n]: n
    Disabling AWS support

(2) Configuring Azure:
    Do you want to configure Azure support in Skyplane? [Y/n]: n
    Disabling Azure support

(3) Configuring GCP:
    Do you want to configure GCP support in Skyplane? [Y/n]: Y
    GCP region config missing! GCP will be reconfigured.
    GCP credentials found in GCP CLI
    GCP credentials found, do you want to enable GCP support in Skyplane? [Y/n]: Y
    Enter the GCP project ID [ecker-bican]:
    Using GCP service account skyplane-manual
    Error saving GCP region config
    <HttpError 403 when requesting https://cloudresourcemanager.googleapis.com/v1/projects/ecker-bican:setIamPolicy?alt=json returned "Policy update access denied.". Details: "Policy update access denied.">
Traceback (most recent call last):
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/cli/cli_impl/init.py", line 260, in load_gcp_config
    auth.save_region_config()
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/utils/imports.py", line 33, in wrapped
    return fn(*modules_imported, *args, **kwargs)
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/compute/gcp/gcp_auth.py", line 32, in save_region_config
    service_account_credentials_file = self.service_account_credentials  # force creation of file
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/compute/gcp/gcp_auth.py", line 68, in service_account_credentials
    self._service_account_email = self.create_service_account(self.service_account_name)
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/compute/gcp/gcp_auth.py", line 179, in create_service_account
    return retry_backoff(read_modify_write)  # retry loop needed for concurrent policy modifications
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/utils/retry.py", line 30, in retry_backoff
    raise e
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/utils/retry.py", line 27, in retry_backoff
    return fn()
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/skyplane/compute/gcp/gcp_auth.py", line 176, in read_modify_write
    service.projects().setIamPolicy(resource=self.project_id, body={"policy": policy}).execute()
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/Users/hanqingliu/mambaforge/lib/python3.10/site-packages/googleapiclient/http.py", line 938, in execute
    raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 403 when requesting https://cloudresourcemanager.googleapis.com/v1/projects/ecker-bican:setIamPolicy?alt=json returned "Policy update access denied.". Details: "Policy update access denied.">

    Disabling Google Cloud support

Config file saved to /Users/hanqingliu/.skyplane/config
To disable performance logging info:
https://skyplane.org/en/latest/performance_stats_collection.html

Environment info (please complete the following information):

OS: Mac OS
Python 3.10.10
Skyplane 0.2.1

Additional context
We have an institution cloud admin who helps creating projects. My account probably doesn't have permission to set IAMs for skyplane service account.
Thanks!

Hi @lhqing - thanks for posting this! Do you have any other service accounts with permissions to access cloud object stores that you can get a key file for? Unfortunately we need service account credentials to access the Google Cloud Storage APIs.


Optimize the two-node AWS CF script

Description:
The CF script for the APIM 2-node deployment has many AWS resources.  We might be able to omit some of the AWS resources (i.e. NAT Gateways & network controls etc) if unnecessary. It would be advisable to get in touch with the IE team regarding this.
Related Issues:
#947 , #1012

Closing due to low priority.


Add CI via GitHubAction

Close #32.

Add GHA that runs CI tests
Uploads code coverage via codecov
Add badges to README

... to enable codecov, @SamuraiAku will need to get a codecov account and grant access to this github repository: https://docs.codecov.com/docs/github-2-getting-a-codecov-account-and-uploading-coverage#create-a-codecov-account  This is free for public repositories; if for whatever reason you don't want to enable it, we can remove the codecov section from this PR.

@hannahilea Thanks so much for putting this together!
I'm completely new to this and I want to make sure I comprehend what's going on, so merging this may take a little time.  But this is cool.

The minimum version that we can test with is 1.8, since SPDX.jl uses the mutable struct feature. If I understand the YML file correctly, it tries to test with the LTS version v1.6

Updated to test on 1.8 and 1

Signed up for codecov and ran the action. Showing overall coverage of 54.55%. No coverage in the write functions of course. Other tests need some more work to improve coverage. Stuff to work on over time.


git-like --patch mode for description command

Shows a diff before uploading and asks interactively whether to apply the changes.
No hunk-selection, though ;)

What's the back up file needed for and why is it optional?

The backup is a new feature. It's so you can revert to the previous online version if you notice you've made a mistake.
It's optional because only one backup file name is supported and you might not always want to overwrite the old version.

Applied uncontested changes.


Introduce .travis.yml

copied from cordova-common, with some changes and no coverage included
with an adaptation needed to work on deprecated Node.js 0.8 version
gives me a green build on all supported Node.js versions, back to 0.8, in https://travis-ci.org/brodybits/cordova-node-xcode/builds/463944951
Needed to unblock Travis CI testing (#16).
While I would favor dropping old Node.js versions (#17) we should not do this before making a new major release. (Some non-Cordova projects may still need old Node.js support, maybe even back to 0.8.) I would favor introducing Travis CI in the current release in case we need to support it, with old Node.js versions, for any reason.

Make sure to create the INFRA issue so they add this repo to Travis.


ByBit API Adapter

Bot should support bybit crypto exchange API, we have to implement new ByBit client

Anybody who want to participate can contribute this branch https://github.com/AndreyMashukov/go-crypto-bot/tree/bybit-api


Bouncer every 2 hours creates duplicated IPset in WAF for community blocklist

Hello crowdsec,
When I start bouncer it creates 2 IP sets for community blocklist (cca 18000 IPs, so 10000 + 8000), then it creates IPset for custom Ban ipv4 + custom ipset for ipv6 + custom ipset for captcha. In total 5 IPsets what is fine.
But then every 2 hours it creates another IPset with community blocklist. I found out that bouncer take alert whenever community blacklist is updated but instead of replacing it, it creates new one.
cscli alerts list|head -40|grep update
| 86 | crowdsecurity/community-blocklist | update : +14249/-0 IPs            |         |                                | ban:14249 | 2022-06-27 13:03:36 +0000 UTC  |
| 83 | crowdsecurity/community-blocklist | update : +14248/-0 IPs            |         |                                | ban:151   | 2022-06-27 11:03:36 +0000 UTC  |
| 75 | crowdsecurity/community-blocklist | update : +14220/-0 IPs            |         |                                | ban:126   | 2022-06-27 09:03:36 +0000 UTC  |

time="27-06-2022 09:04:13" level=info msg="Creating IPSet crowdsec-ipset-us-east-1-IPV4-ban-2c64b9a0-bae4-4402-98d7-b92f58db48d9" set=crowdsec-ipset-us-east-1-IPV4-ban-2c64b9a0-bae4-4402-98d7-b92f58db48d9
time="27-06-2022 11:04:04" level=info msg="Creating IPSet crowdsec-ipset-us-east-1-IPV4-ban-83c588a1-c110-4fa3-bc29-13e2b304a8b6" set=crowdsec-ipset-us-east-1-IPV4-ban-83c588a1-c110-4fa3-bc29-13e2b304a8b6
time="27-06-2022 13:04:03" level=info msg="Creating IPSet crowdsec-ipset-us-east-1-IPV4-ban-ade87bb1-e63a-485b-8707-4c0ff428bf89" set=crowdsec-ipset-us-east-1-IPV4-ban-ade87bb1-e63a-485b-8707-4c0ff428bf89

Hello,
This is definitely something that should not happen :/
Could you upload the logs from the bouncer somewhere to see if we got an error response from the WAF API at any point ?

Fixed by #10.

@blotus fantastic, many thanks


UI update - Added autofocus for user chat input

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Updated the user conversation input field with autofocus feature

Why was this change needed? (You can also link to an open issue here)
This update enhances user experience as most modern chat fields have this feature. Users can directly start typing once the page has loaded

Other information:

Before the update (Screenshot):

After the update (Screenshot):

@holopin-bot @hariraghav10 Thank you!


Mook never finds targets

After upgrading, npcs never find targets. Here is an example. Hobgoblin cannot see either of the two player tokens:

I have tried different NPCs and different tokens. Nothing works. The scene is definitely the active scene.
Won't work even when NPC is right next to player token:

Bug from last version propagated to this one. Line 89 reads:
if (! this.isPC (token)) return false;
isPC() is a deprecated function and will evaluate to false always. Changing it to this fixes the issue:
if (combatant.actor.data.type === "npc") return false;
yah.


fix: implement nil check for CEL program in matchRoutingRule

Avoid nil pointer dereference when evaluating expression.
Resolves #6036
Haven't written go before so this might not be the proper or most optimal solution

program is an unexported (private) field of Expr, so the place to do the check is here: https://github.com/dapr/dapr/blob/1ae581691b0006cdb20da5f7b8f832e62372ec8e/pkg/expr/expr.go#L65.

Thanks for your contribution @dmutterSF


Add 'openscenegraph' package

I'm interested in package <openscenegraph>
Here is official site of package http://www.openscenegraph.org

Official GitHub repository: https://github.com/openscenegraph/OpenSceneGraph

Used build system: [CMake]

I have no information about dependencies

Could you add https://github.com/openscenegraph/OpenSceneGraph to hunter packages, I'll want to use it

Could you add https://github.com/openscenegraph/OpenSceneGraph to hunter packages

Done: https://github.com/hunter-packages/OpenSceneGraph

thanks

Can you check that all dependencies are uploaded? If not, I can re-run upload for such packages.

Do you mean external packages? I checked, are they uploaded for the hunter ( those that are needed)

https://travis-ci.org/t0p4/hunter/jobs/470022342

I don't understand, could you clarify

Nothing we can do about Travis CI limitation. As a workaround for this problem I do build and upload package using my local machine, then uploaded artifacts can be used on Travis CI.

https://travis-ci.org/t0p4/hunter/jobs/470022342

There are a lot of external packages built there Jpeg, PNG, freetype, etc. I see that you're using gcc-hid-fpic toolchain that is not part of standard set:

https://github.com/ingenue/hunter/blob/a6c61f055559d6346219453a54e0ce34e61550dd/.travis.yml#L34-L71

Can you switch to something standard like gcc-7-cxx17?

cxx-17 fail, need cxx-14.
gcc-hid-fpic toolchain only for test, don't pay attention on it

https://github.com/ruslo/hunter/pull/1689


Missing "type": "object" in Swagger definition for KeyValue.value

https://github.com/openwhisk/openwhisk/blob/master/core/controller/src/resources/whiskswagger.json#L1379
This is similar issue to #241

Actually thinking more about it, it seems the value is not necessarily a JSON "object" but can be an integer or any JSON "value". So maybe adding "type": "object" is not the correct fix here.

Indeed - a legal value for a parameter or annotation is any legal JSON value: object, array, number, string, boolean or null.

A vendor specific value like "x-type": "json"might be added to let interpreters of the swagger to do that.

whiskswagger.json doesn't not exist. apiv1swagger.json doesn't have "type": "object" for KeyValue.value either. If adding "type":"object" is not the correct fix, do we want to fix it, or we just leave it as present and close this issue?

The comment here suggested the fix https://github.com/apache/incubator-openwhisk/issues/262#issuecomment-218790277

Tried to fix this by adding a new type definition and reference it from the KeyValue type, but then the tests failed, so I think it's best to leave this as it is. From my understanding, omitting the type is perfectly legal, because it means that it can be any type, which is exactly what we are trying to say (?). Using vendor extensions is probably not a good idea, because that will make our tests and code generators fail for sure. There is no silver bullet in OpenAPI v3 for this either, so I suggest we close this issue.


Added docs for Interface field method argument

#112 completed

Version should be bumped after mege this, I think.

Thank you very much. 😁


HTML Output:  in headings breaks the formatting

Please select the area your bug applies to. (Multiple selections are Possible. You can leave blank if you're not sure.)

[ ] Workspace.  VSCode workspace, vaults, Intellisense/autocomplete, Dendron settings
[ ] Lookup.  Dendron's Lookup Command
[ ] Views.  Dendron Preview, Tree View, Side Panels in the UI
[ ] Schema.  Dendron Schemas
[x] Pod.  Data import from / export to Dendron
[x] Publish.  External Site Publish
[ ] Markdown.   This is because the headings' CSS  are using "display: flex". This can either be fixed by using "display:block" instead (which doesn't seem to introduce any problems with other parts of the heading.) Otherwise, the header content can be wrapped inside a .
To Reproduce
Look at the documentation's FAQ and go to the section "What can I do with the root note?". There are no spaces around the word "root".
A worse example can be found on the "Troubleshooting" page. The "Schemas" section has a heading where the  part is line-wrapped in the middle of the header. I've included an image that shows the problem.
Expected behavior
Headers should display correctly even if they contain things like  blocks.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information)

OS: Windows 11
Chrome  104.0.5112.8
Versions (all that apply to bug):

Dendron Extension:  0.106
VS Code version: 1.69.2
Dendron CLI: 0.106

Additional context
Add any other context about the problem here.
Dendron Log file
Please attach the output of > Dendron:Dev: Open Logs here

dendron.log

thanks for this - can repro. we will work on a fix


Change web service port to use 443 as well to be more firewall friendly

Feature Request
Desired behaviour
Currently, we use port 8443 (looks like a Apache Tomcat convention) for the webservice. Instead, we should reconfigure Nginx to listen on a lower port or just nested under port 443 at https://dockstore.org/api or similar
Affected @keiranmraine

An issue at BOSC as well apparantly


Update: ja/docs/concepts/services-networking/network-policies.md

Update: ja/docs/concepts/services-networking/network-policies.md
https://github.com/kubernetes/website/issues/26891

/lgtm

/lgtm
/approve


updated CONTRIBUTE.md

you might want to consider adding closes #66  to your commit message if you think it resolves that issue

I forked the repo again to test it. In Ubuntu you can't git clone git@github.com:Harvey-OS/harvey.git instead you have to do git clone https://github.com/Harvey-OS/harvey.git. Is this also in other platforms? I think it would be better to change that line. Also the part of adding a git remote could be useful.

I haven't had any problems cloning using ssh rather than https; did you upload your machine's SSH pubkey to Github? I just checked out Harvey using ssh and it worked fine.

Okay, that's probably it. I leave it as is.

Hey @grd, I'm sorry you closed this pull request because I liked the conversation we were having, it showed me that we are missing better documentation since we failed to get your PR merged.
Harvey's wiki, while aiming to be a good starting point is just that, it isn't the definitive guide on the subject, that's why it links to the pull requests and Github Flow, which are the definitive guides, and are constantly updated.I currently think that entire section is drawing attention from those guides so I'd like it if they went away.
And what I didn't realize at the time of writing this was If you do a search on google or youtube about Git and/or GitHub you will see stuff like this webcast about pull requests and this one about workflows that cover the entire topic exhaustively, which is an indication that it is not as straight forward as I thought it was when I wrote that section.
So if you'd like to re-open this pull request and continue that conversation, and we can write a better doc you'll certainly have my +1

O sorry, I thought it was closed because of the closes #66 comment. I can't reopen this because I removed my repo and forked it again (stupid github) so ... create a new issue or a new pull request?

@grd that'd be great.

That will be tomorrow.

Awaiting nicely :-)


Add Number.fromString and Number.fromBigInt

What is the problem this feature would solve?
There is currently no wrapper for Number.parseFloat in the lib without reaching for Schema which is overkill for some cases.
What is the feature you are proposing to solve the problem?
Add safe implementations(i.e. returning Option) of Number.fromString, Number.fromBigInt. They are useful by themselves and can be used by Schema.numberFromString instead of handling the parsing logic there.
What alternatives have you considered?
No response

Also, BigInt.fromString, BigInt.fromNumber