doc/dev/release.md: add statement ppcle64 support

Description of the change:

As a follow-up to #1533, updates the developer release documentation to include the new support for the ppc64le binary and helm-operator base image.
Add a line to the CHANGELOG for #1533.

Motivation for the change:
To ensure that SDK developers are aware of the new support for ppc64le.

How does this look @clnperez?

/test e2e-aws-ansible

/test e2e-aws-ansible

/test e2e-aws-ansible

/test e2e-aws-ansible

looks good to me. thanks for submitting this @joelanford

/test e2e-aws-ansible


How to connect work

wondering, when an event reaches an updated state, will the Components use it without using that state?
example:
Provider have state  { store1, store2 }
Component1 get store1 from Provider
Component2 get store2 from Provider
...when setState store1, Component2 will also be reactivated too?

sorry, I found the answer at https://github.com/didierfranc/react-waterfall/blame/master/src/index.js#L8


Sending as a user?

Hi all,
I'm trying to setup the conf to send messages as my user.
I got the token from the website, by looking at the request slacks sends.
slackcat seems to be sending the messages --or at least it does not tell me the error-- but the messages does not appear on slack, so there must be something broken.
Am I doing something wrong?

anybody?


Context menu button, Ban Spammer

Because

Phishing links spam is an ever-increasing occurrence on discord. The mod team have to keep banning these users with the same message so that they know how to contact us if they wish to rejoin the server.
This PR will automate that with a click of a button.
This PR

Adds context menu button to ban spam user
Logs the ban in the appropriate channel
Sends the user a contact information of why they were banned, and how to contact us once they recover their account if DM is not set to private.

Issue

Closes #504
Additional Information

Make sure to change the config.js moderationLog ID to the channel ID of your test server to see the log messages while testing.
There are currently some duplication of functions in some of the other services, I think it would be a good idea to move those to utils. Another duplication happen is with the tests, There is a buildInteraction function in test utils but that one is made for a specific purpose only, I would need to change it and refactor all the tests that calls it in order to generalize it to be used by these new tests. I didn't want this PR to be too big and include those refactors. So I included some create interaction mocks functions in the test files.
Let me know how would you like to proceed with the refactors.
Pull Request Requirements

[x] I have thoroughly read and understand The Odin Project Contributing Guide
[x] The title of this PR follows the location of change: brief description of change format, e.g. Callbacks command: Update verbiage
[x] The Because section summarizes the reason for this PR
[x] The This PR section has a bullet point list describing the changes in this PR
[x] If this PR addresses an open issue, it is linked in the Issue section
[x] If this PR adds new features or functionality, I have added new tests
[x] If applicable, I have ensured all tests related to any command files included in this PR pass, and/or all snapshots are up to date

@TheOdinProject/moderators I would like the mod team to weigh on this. What the message to the user would be like, what kind of template. And perhaps some kind of a form so that they can use for the appeal?
This is the current template of the message

Account is compromised and is used to spam phishing links.
If you would still like to continue using our server, make sure to change your password and recover your account.
After that send a detailed contact information to appeal the ban on<EMAIL_ADDRESS>
I would like to especially hear from @JustWaveThings since this was originally your idea, is this how you imagined it to be, or do you think it needs some improvements?

I'll be happy to put together a message to send on the ban. I will look at the functionality of it tonight. Thank you so much for doing this!

@Mclilzee, Here's my take on the message the bot could send:

This account has been banned from The Odin Project Discord server for sending spam. If this account is compromised, please follow the steps linked in this Discord support article to secure your account.

Once your account is secure, you may appeal your ban by emailing<EMAIL_ADDRESS>with your Discord username.

Note: It may take several days for our volunteer staff to take action on your appeal, and unbanning is not guaranteed.

I don't know if we need to get fancy with the message. I'm also fine with just sending what we send now in the ban message.

@Mclilzee, Here's my take on the message the bot could send:

This account has been banned from The Odin Project Discord server for sending spam. If this account is compromised, please follow the steps linked in this Discord support article to secure your account.

Once your account is secure, you may appeal your ban by emailing<EMAIL_ADDRESS>with your Discord username and that you are appealing your ban due to a compromised account.

Note: It may take several days for our volunteer staff to take action on your appeal, and unbanning is not guaranteed.

I don't know if we need to get fancy with the message. I'm also fine with just sending what we send now in the ban message.

This looks great! Thank you, Fred. This is much better than whatever I can cook with my broken English.

Very minor nit, but I think that the starting This should also be an Your, otherwise your switching between modes of address


Update before release

What problem does this PR solve?
Update version information before release 0.6.0.
Type of change

[x] Documentation Update

LGTM


Bug report: Magic operation output is unreadable in dark mode

Describe the bug
When using the Magic operation, the resulting output is hardcoded to be black text, meaning it is unreadable when using any of the dark themes (or GeoCities)
To Reproduce
With the theme set to dark, use the Magic operation to produce any output.
Expected behavior
The output switches to a white text colour to ensure it is readable when in dark mode.
Screenshots

Desktop (if relevant, please complete the following information):

OS: MacOS
Browser: Safari (also verified in Chrome)
Version 12.1.1

Similar problem with the Keybindings page in About/Support.

OS: Windows 10
Browser: Chrome
Version 75.0.3x


Refresh docs on materialized views

Contributions

[ ] I have read the contribution docs, and understand what's expected of me.

Link to the page on docs.getdbt.com requiring updates

https://docs.getdbt.com/reference/resource-configs/postgres-configs#materialized-views
https://docs.getdbt.com/reference/resource-configs/snowflake-configs#dynamic-tables
https://docs.getdbt.com/reference/resource-configs/bigquery-configs#materialized-view
https://docs.getdbt.com/reference/resource-configs/databricks-configs#materialized-views-and-streaming-tables

What part(s) of the page would you like to see updated?

perhaps add a standalone generic "materialized view page"?
revert #3812 and #3779 and bring back BigQuery MVs
versionblock current MV/DT caveats into 1.6, create new 1.7 block with the remaining caveats
discuss in more detail the concept
update materialized view / dynamic table docs to reflect caveats that no longer

Additional information
Following on from #3593, #3779 and #4045

reached out to @dataders to understand whether this is a docs request or Anders has got it covered. Also if docs team support is needed, some of the bullets need more info

Closing this because we have covered most of this and the other ones - we don't have short term plans to support


fix 'invalid arguments' warp sync error on Volta

Fixes issue #154

Is something like DeviceRadixSort even safe to run right now without your fix?

Looks like this was closed accidentally during the repo move. Reopening.

I'd like to understand a bit more about the usecase where this would be an issue before addressing this. Backlogging until a repro that demonstrates the issue is available (see this comment for details).


Drill-4139: Exception while trying to prune partition. java.lang.UnsupportedOperationException: Unsupported type: BIT & Interval

Add missing BIT partition pruning support.
Add missing Interval, VarBinary and Varchar with nulls partition pruning support.
Fix metadata serialization for fixed_len_byte_array and binary types.
Fix partition pruning for decimal type.

@jinfengni, this PR has been sitting idle for a while. Anything else that needs to be done on this one?

Thanks for the reminder, @paul-rogers . Somehow, I overlooked this PR. I thought I have reviewed and merged a PR from @vvysotskyi . But looks like I confused this one with another one I merged.
Anyway, I'll take another look at this PR.

Resolved merge conflicts and rebased on latest master.

What is the status of this PR? More work to do? Ready for another review?

Currently, I am waiting when DRILL-5660 is merged. I will add a comment when it is ready for another review.

Thanks for addressing my questions. While waiting for DRILL-5660, I wonder if we can ask Salim to take a look?

@paul-rogers, PR is already merged :)

OK. Since I'm not a Parquet expert, have asked Salim to take a look.

+1

The revised patch addressed my earlier comments. LGTM.
+1
ps: I did not look into the change of version number. @paul-rogers would have better idea.

 Failed in functional tests:
{noformat}
Data Verification Failures:
/root/drillAutomation/mapr/framework/resources/Functional/metadata_caching/data/varchar_partition6.q
/root/drillAutomation/mapr/framework/resources/Functional/parquet_storage/parquet_date/auto_partition/data/q2.q
/root/drillAutomation/mapr/framework/resources/Functional/metadata_caching/data/varchar_partition3.q
Plan Verification Failures:
/root/drillAutomation/mapr/framework/resources/Functional/metadata_caching/plan/varchar_partition8.q
/root/drillAutomation/mapr/framework/resources/Functional/metadata_caching/plan/varchar_partition2.q
/root/drillAutomation/mapr/framework/resources/Functional/parquet_storage/parquet_date/auto_partition/plan/q2.q
/root/drillAutomation/mapr/framework/resources/Functional/metadata_caching/plan/varchar_partition1.q
{noformat}
And in unit tests:
{noformat}
Failed tests:
TestHashAggrSpill.testHashAggrFailWithFallbackDisabed:165 null
Tests in error:
TestHashAggrSpill.testNoPredictHashAggrSpill:135->testSpill:110 » IllegalState
TestHashAggrSpill.testHashAggrSecondaryTertiarySpill:147->testSpill:110 » IllegalState
TestHashAggrSpill.testSimpleHashAggrSpill:123->testSpill:110 » IllegalState Cl...
TestHashAggrSpill.testHashAggrSuccessWithFallbackEnabled:179->testSpill:110 » IllegalState
{noformat}
See build MERGE-170924-1 for details.

@paul-rogers, test data should be regenerated (using the Drill version with this fix) before running functional tests since these tests use metadata cache files.
Regarding unit test failures: I rebased onto the master and run tests on my machine and on the test cluster and for both cases, tests finished without errors. So, perhaps it was a random test failure.

I'm probably confused. Our goal with the Parquet metadata versioning was that new Drill versions can read old files. Here we have a case in which I was running with old versions of the file, using your new code. Why do I need to rebuild files? Is version backward compatibility already broken?

This my bad habit to regenerate metadata left from the times before fix DRILL-5660. These functional test failures are the result of the mistake that I have made when resolving merge conflicts with DRILL-4264. After I made rebase, older 3.2 version still used in ParquetReaderUtility instead of 3.3.
I fixed this bug and functional tests are pass without regenerating parquet metadata cache. Could you please take a look at this change in the last commit?


Sparse inverted index: support vector dim in full uint32 range

In the sparse inverted index, each dimension has an inverted index lookup table for tracking id of vectors with non zero values at this dimension. In the current impl, a std::vector<LUT> inverted_lut_ is used, inverted_lut_[i] is the look up table for dim i, and inverted_lut_.size() is the max dim. The reason I used vector instead of unordered_map is that even though they are both O(1) read, for such read heavy performance sensitive use case the higher constant of map lookup would hamper the performance a lot.
The issue with using std::vector is: the space complexity is O(max dim) instead of O(number of unique dims). For example: if the index has exactly 1 sparse vector with exactly 1 non zero value at dim=10,000,000, we still have to create a std::vector<LUT> of size 10,000,000, thus we can't support arbitrary dim in the uint32 range.
I did a simple benchmark comparing std::vector vs std::unordered_map, and it does show performance difference.
Simple benchmark setup:

same machine, built in release mode, used modified "Test Search" in test_sparse.cc as benchmark case
randomly generated dataset: nb = 100,000, nq = 10,000, dim = 300,000, vector average number of non-zeros = 30

Results:

The benchmark is not perfect but I think sufficient.
In order to support arbitrary dim in the uint32 range we have to somehow utilize unordered_map. here are some ideas:

allows the user to choose between vector and unordered map(perhaps by providing a config with_super_large_dim)
use unordered map only for dim above a user specified threshold: auto lut = dim > cfg.get("dim_threshold").value_or(1'000'000) ? map_luts_[dim] : vec_luts_[dim];

we decided to first use the unordered_map approach for the recent beta release to make sure the availability of the feature.

Closing for now. Revive if necessary


Pagination using cursors

Hello there,
Thanks for this work I really find it helpful. Now I have a question.. is there anyway that I use cursors to paginate? Please note that my situation is to show a table with "count" rows (usually 10 rows per page) and with a control to go through the whole pages of the table, the data does not change much and the user can jump to any page he wants, I was thinking of a way to predict the cursor at a giving offset. is that possible?

I think that Pagination and Connection algorithms are quite different.
Pagination use limit and offset. So you can easily calculate this values from required page number.
Connection use some cursor (before and after pointers) on document in DB and first, last args (for limiting data). Internally cursor also depends on which sorting do you apply for the connection.
The cursor secrets:

sort in connection can be proceeded only by unique indexes (to avoid over fetching, under fetching)
for every document, we calculate cursor which contains fields from sorting.  E.g. for .sort({ _id: 1, age: 1} we get values for this fields from document and pass them to cursor base64({_id: 34ef85...34, age: 28}). For next document we calculate itself cursor with its data.
when proceeding before and after arguments with the cursor, we parse values from it and pass them to where condition .where({ _id: {$gt: 34ef85...34}, age: {$gt: 28}}).

So if you somehow from page number can calculate cursor your task has solution, otherwise not (HEY I FOUND SOLUTION, will write in next comment)
PS. If it possible, do not use Connection for Pagination. Use findMany with limit and skip. Connections are for infinite lists.

You may use first and last keys simultaneously.
Eg. if PER_PAGE=10 and you want to get 6th page, you may try such query
query {
  userConnection(first: 60, last: 10) {
    ...
  }
}

So by connection specification you request first 60 documents, and then get last 10 from them. Server should return records for sixth page.

Thank you for your quick and clear response, it was really helpful.
As for the solution you proposed and in the connection specification they note:

Including a value for both first and last is strongly discouraged, as it is likely to lead to confusing queries and results.

This means that I need to add my own resolver to the collection that understands the paging concept but doing it this way won't allow me to use Relay as a web framework from my website. isn't that right?

Including a value for both first and last is strongly discouraged, as it is likely to lead to confusing queries and results.

Yep, when you use before and after in conjuction, this is realy discouraged. So first and last can be used as I described above. But better for pagination do not use connections.
About client side

This means that I need to add my own resolver to the collection that understands the paging concept but doing it this way won't allow me to use Relay as a web framework from my website. isn't that right?

Connections in Relay is a simple extension (it gives you infinite lists functionality almost for free). But do not reject you to use what you want. So you can easily use Paging with Relay.

import React, { PropTypes } from 'react';
import Relay from 'react-relay';

const PER_PAGE = 10;

class ProductList extends React.Component {
  static propTypes = {
    viewer: PropTypes.object,
    relay: PropTypes.object.isRequired,
  };

  loadPage(pageNum = 0) {
        this.props.relay.setVariables({
          offset: pageNum * PER_PAGE,
        });
  }

  render() {
    return (

        {this.props.viewer.productList.map(({ item }) => {
          return (

              {item.name}

          );
        })}

         Pages:
          { this.loadPage(1); }}>1
          { this.loadPage(2); }}>2
          { this.loadPage(3); }}>3

    );
  }
}

export default Relay.createContainer(ProductList, {
  initialVariables: {
    limit: PER_PAGE,
    skip: 0,
  },
  fragments: {
    viewer: () => Relay.QL`
      fragment on Viewer {
        productList(skip: $skip, limit: $limit) {
          productId
          name
        }
      }
    `,
  },
});

About server side
You may use existed findMany resolver: live example of server response
{
  viewer {
    productList(skip: 50, limit: 10, sort: PRODUCTID_ASC) {
      productID
      name
    }
  }
}

Or of course, you may write your own findByPage resolver.
{
  viewer {
    productList(page: 6, perPage: 10, sort: PRODUCTID_ASC) {
      productID
      name
    }
  }
}

PR are welcome for such type of resolver 😉 for graphql-compose-mongoose (see findMany and findByIds resolver for example).
Some hint how to spin up local copy of graphql-compose.

BTW you may be interesting this Relay example app https://github.com/nodkz/relay-northwind-app
Live demo


Important block references archived github repository

The "Important" block on top of the page references to an archived github repository

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

ID: 920c8ddf-83d1-ba47-5a6e-270b390b33b5
Version Independent ID: df5d92c4-217b-aa4c-ba21-141850548e4a
Content: Tutorial - Use Docker Compose to deploy multi-container group - Azure Container Instances
Content Source: articles/container-instances/tutorial-docker-compose.md
Service: container-instances
GitHub Login: @macolso
Microsoft Alias: macolso

Thanks for your dedication to our documentation. Unfortunately, at this time we have been unable to review your issue in a timely manner and we sincerely apologize for the delayed response. Though the scope of our feedback channel here on GitHub covers specific documentation fixes, we can help redirect you to the right support channel to get an answer to your question: [reference to alternative product/service or community endpoint]. Because this issue does not relate to documentation, we are closing this issue. #please-close


#4823 Carusel corrupted if render slides with ng-repeat and change slides set.

turns off animation trottling in case of changing active slides during remove process.

Closing as this is an invalid/untested code change - this overrides the buffering slide changes built into the component.


Card image on landing page don't have rounded borders

It appears that the card image on the landing page doesn't have rounded borders as specified by the stylesheet.

P.S there is an easy fix to this by just adding a overflow:hidden property to the parent element.

It was done intentionally by the creator, hence closing this issue

Can you please assign this to me?

Can you please assign this to me?

Issue closed! @omkar342


[FEATURE] Local volume with snapshot disabling

Is your feature request related to a problem? Please describe (👍 if you like this request)
Support local volume with snapshot disabling to better support distributed applications that already support data replication, but still ensure all volume operations work as expected like volume backup/restore, and clone, but snapshot/revert will not be operable for users even if it is still internally being used somehow.
Describe the solution you'd like
We can also keep the volume with the head and the snapshot only, so the volume operations based on the snapshot could be still working as expected. However, this needs some investigation to make it work.
Also, this should be considered in v2 data engine as well.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
cc @longhorn/dev-data-plane

@innobead
Why is it necessary to disable the snapshot feature? If users have no intention of utilizing snapshots for local volumes, they can simply refrain from taking snapshots. Are there specific situations or potential issues related to snapshots for local volumes that need to be addressed?

After discussing with @derekbit , the only challenge is concurrent backup, it seems we are allowing users to do that, so this should be treated differently for local volume.
This is not actually disabling snapshots, because it's the core mechanism for volume, but it's more like keeping one copy data only for that volume w/o any extra user/system snapshots to increase unnecessary storage usage.
@derekbit will summarize the potential proposal later, but it can be fine-tunned later.


version on npm differs with github

I've just updated my local installation of jimp and comparing the code with the current master branch on github it looks like the one on npm is still on version 0.2.27 but with version 0.2.28 stated in the package.json. The package.json on npm still have url-regex dependencies.

closing in favor of #484


oauth2 SECURITY_DEFINITION authorize form has no client_id or secret input

See also https://github.com/swagger-api/swagger-ui/issues/2837
My swager UI doesn't show the form with the client-id or client-secret input boxes :frowning_face:  , with these security definitions:
 'oauth2': {
    'type': 'oauth2',
    'flow': 'accessCode',
    'authorizationUrl': 'https://myapp.com/o/authorize/',
    'tokenUrl': 'https://myapp.com/o/token/',
    'scopes': {
        'read': 'read access', 'write': 'write access',
        'groups': 'access your groups',
        }
    },

Thanks again for this excellent free software! I will try to trouble shoot this on my own if I can.

I'm having the same issue!

Any update on this?
@mikofski  were you able to solve the issue? Kindly share your experience. I'm facing the same issue.


Add Conda plugin

I added a plugin that shows the current conda environment if active. This is based on the virtualenv plugin.

Thanks @hanslovsky It seems it's OK although I haven't tried it yet. Not quite sure about including it as a built-in plugin, most likely as a custom plugin. What do you think @fribmendes @jedahan

Thanks for the contribution @hanslovsky! I am OK with us bringing this in as a core plugin, and here is my reasoning:

The cost of distributing is low (2 more files on disk)
The cost of maintaining is low (this is a simple plugin, and easier to keep in sync with breaking api changes in the future)
The benefit for discoverability is high
The more we are open to quality contributions, the more people will use geometry :)

So I'd be cool with merging it as-is, and just keeping it out of the default set of enabled plugins.

Generally, this is not the same philosophy I take when evaluating programming languages or frameworks (heck, I used to be an exherbo user...). For something as specific as 'right shell prompt plugins for a particular prompt' I think we should err on just asking our users to edit an environment array over having to discover and clone new repositories.

Thanks for considering this for a merge @desyncr @jedahan ! In my eyes, the strongest point for adding it as a core plugin is (3) discoverability. As a user, I only use the plugins that are shipped with geometry. That makes it easier to maintain my dotfiles and I am also not aware of any geometry plugins that are not core plugins.
As for (4): Thank you! I have used geometry longer than any other zsh theme so far. Usually I switch frequently.

@hanslovsky We've a point right there about how we publish custom plugins (currently on https://github.com/fribmendes/geometry/wiki/plugins).

Thanks for the link!

@hanslovsky You need to install it as any other plugin, just after geometry. So:
zplug "fribmendes/geometry"
zplug "other/geometry-custom-plugin"

The recommended way for custom plugins is to self-register. So, with only loading them they'll be available to geometry.

I had to remove my ~/.zplug directory and clone it again. Now desyncr/geometry-pretty-git works for me.
zplug fails to load jedahan/geometry-hydrate:
[zplug] These repos have failed to load:
- jedahan/geometry-hydrate

I will figure out what it is.
Now that I know that it's that easy to load a custom plugins, I am also fine with contributing a custom plugin, whichever you prefer.

Update plugin wiki page with install instructions: https://github.com/fribmendes/geometry/wiki/Plugins#installing

Another approach to this particular plugin is to merge both virtualenv and conda (if they exclude each other) in a unique plugin that handled both instances.

I agree that merging those two would be reasonable. In fact, I first tried to use the virtualenv plugin because I assumed that it would cover conda as well. It is safe to assume that there is no practical scenario in which both conda and virtualenv are active at the same time.

Hey guys,
First of all, thanks for the contribution @hanslovsky :heart:
I see @desyncr's reason for not merging. However, I also tend to agree with @jedahan because of points (1) and (2). To me this is a symptom of something we should address which is: what criteria should we use to decide this? We should discuss that on gitter sometime in the next hangout.
There's also a very important point in:

As a user, I only use the plugins that are shipped with geometry. That makes it easier to maintain my dotfiles and I am also not aware of any geometry plugins that are not core plugins.

I'm ok with merging it and not making it a default plugin.
However, if it's possible to merge this with the virtualenv plugin, that would be the best! I'm not familiar with conda so if you confirm that it's highly unlikely that a user has both active simultaneously, I'm up for merging them.
Would like to take this on @hanslovsky ?

@fribmendes I don't see any reason why conda and virtualenv would be used at the same time but I will do some research to make sure there is no such use case.
https://conda.io/docs/_downloads/conda-pip-virtualenv-translator.html
If it happens to be used in conjunction, we could still merge it like this (<virtualenv-name>:<conda-env-name>).
Either way, I will take this on and make changes accordingly.

Great! Thanks!

@hanslovsky Are you able to work on this? Need any help or guidance? Let me know! 😄

@desyncr Have been kind of busy but I have not forgotten this! I should have an update soon.

@hanslovsky Awesome! Thanks for the update! Let us know if you got stuck with anything! :)

I got it all worked out. The virtualenv plugin now supports both virtualenv and conda, which individual colors for each of the two. For the case that both are active at the same time (I don't see any reason for that but I wanted to be on the safe side), both will be separated by ${GEOMETRY_VIRTUALENV_CONDA_SEPARATOR} which defaults to :.
I will update the README.md and probably update this PR sometime later today.
As a teaser, I made a screenshot:

Awesome! Amazing work! @hanslovsky Can't wait to get this merged!

I updated the PR with 0a28e1b

I added a comment on the PR. Nothing big or blocking, I'd merge it right away. Only thing missing would be to remove conda plugin (leave only virtualenv that has both env. managers)

@fribmendes You are absolutely right, I forgot to remove the conda, which is fixed by 78b6a93

@hanslovsky Tried it and it works flawlessly. Good work!

I'm gonna go ahead and merge this. We can take a look at minor issues in future iterations if necessary.
Thanks @hanslovsky for the amazing work!


Added mention of CPU credit being reset

Got this information from issue<PHONE_NUMBER>91389

Hi @cynthn, Would you review the  proposed changes? Thanks.

@jonbeck7

Any news on this ?

Hi @jonbeck7, would you review the proposed changes? Thanks.

#in-process @RemiBou thanks for the feedback. I've sent this to the team that deals with the burstable size. Hopefully I will hear more later today. I will probably need to rephrase what you wrote, because it isn't really in Q&A format, but let's see what the engineering team says. Thanks!

#sign-off @RemiBou I got confirmation from engineering that we can add your addition. I'm going to have the PR merged and then make some adjustments (to make it a question and answer). Thanks for the feedback!

great thanks :)


feat: [DistributionBalanceMeasure] Add implementation + unit tests for custom reference distribution

Related Issues/PRs

Original PR for distribution balance measures - #1218
What changes are proposed in this pull request?
Context
Distribution balance measures are distance measures that can be computed between two distributions, typically between a reference and observed distribution.
These measures can help us create responsible AI products, i.e., seeing if a column (such as Gender or Ethnicity or any col) doesn't have a large skew towards one value which may lead to a biased model.
This PR
Until now, these distance measures were computed using a uniform reference distribution, meaning we expect to see each unique value in a column the same amount.
This PR allows users to specify a custom reference distribution in the form of a <string, double> map that contains <feature value, feature probability> pairs.
This will particularly be helpful for measuring data drift, where the custom reference distribution is the distribution of a baseline dataset column and the observed distribution is the distribution of the latest-versioned dataset column.
How is this patch tested?

[X] I have written tests (not required for typo or doc fix) and confirmed the proposed feature/bug-fix/change works.

Does this PR change any dependencies?

[X] No. You can skip this section.
[ ] Yes. Make sure the dependencies are resolved correctly, and list changes here.

Does this PR add a new feature? If so, have you added samples on website?

[ ] No. You can skip this section.
[X] Yes. Make sure you have added samples following below steps.

Find the corresponding markdown file for your new feature in website/docs/documentation folder.
Make sure you choose the correct class estimators/transformers and namespace.
Follow the pattern in markdown file and add another section for your new API, including pyspark, scala (and .NET potentially) samples.
Make sure the DocTable points to correct API link.
Navigate to website folder, and run yarn run start to make sure the website renders correctly.
Don't forget to add <!--pytest-codeblocks:cont--> before each python code blocks to enable auto-tests for python samples.
Make sure the WebsiteSamplesTests job pass in the pipeline.

/azp run


Validate Errors no being passed to Redux-form Field objects

I have a form that is dynamically generated based on the users input and with that comes runtime validations object updates.
ALL fields are defined on instantiation of the redux-form. What i'm currently seeing is that after a user adds a second dynamic form based on their inputs and tries to submit the validation function that I pass to 'onSubmit' runs and returns the proper error object, however the field(s) object doesn't no get the error passed to it.
I have attached a screenshot of what I mean.  in my validate method I'm doing a console.log of all the found errors and then I'm logging out the field of the component right before th render method.

For whatever reason the component is not getting the update command from Redux-form.
If I blur ANY field on the form (new or old components) I then get the errors defined as expected and can show the proper error validation.
Any help would be greatly appreciated.

UPDATE:
I added redux-logger to the project and I am seeing that the action "redux-form/SUBMIT_FAILED" is NOT being triggered again unless a field has been focused.
Redux-form is expecting the user to focus on field before it will submit the failed event again and that's definitely problematic in the scenario that I have

+1

same problem

I think this got fixed when the sync errors were moved into the Redux store in v6.0.0-rc.3.


Panel scripts

Ok - see comment. I have been guilty of copy pasting - perhaps we can review the comments.


Karma Testing Fix

"fixed" #86 but it turns out that this did not really need a fix but rather was because we did not provide service stubs yet
some notes for testing:

services need to be injected (or mocked, see example in RenderComponent)
if a component changes state, it probably has to be manually updated by calling detectChanges() (in contrast to the regular application)
check out the angular guide on testing if unexpected errors arise, generally very helpful: https://angular.io/guide/testing-components-scenarios

Jop denke zwei separate configs würden Sinn machen, dann pack ich das noch in den nächsten Commit rein in dem ich dann die verschiedenen Environments aufsetze


[BUG] Pass next offset id to log materializer

Description of changes
Summarize the changes made by this PR.

Improvements & Bug fixes

Currently the materializer is initialized with an atomic integer representing current maximum offset, and increases it upon initialization so that it can be used to represent the next available offset id. If two materializers are sharing the same atomic integer, then the increment is duplicated upon initialization, leaving a hole in the offset id. This PR initializes the materializer directly with the next available offset id to resolve this scenario.

New functionality

N/A

Test plan
How are these changes tested?

[ ] Tests pass locally with pytest for python, yarn test for js, cargo test for rust

Documentation Changes
Are all docstrings for user-facing APIs updated if required? Do we need to make documentation changes in the docs repository?
N/A

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

#3200  👈 (View in Graphite)
#3192
main

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

The tests are failing jfyi

Merge activity

Nov 27, 7:33 PM EST: A user started a stack merge that includes this pull request via Graphite.


Automated cherry pick of #413: Feature/yousong cloudproxy

Cherry pick of #413 on release/3.7.
#413: Feature/yousong cloudproxy

/lgtm
/approve


Inconsistent return value of the Methods of the Resultset

Some methods of the Resultset return a reference to the resultset e.g. sort
other methods return a new Resultset e.g. limit.
That's inconsitent and therefore confusing behaviour.
I would recommend that either all methods return a reference or a new resultset.

Your right, my memory is that this was done that way because of the DynamicView so you could page its internal resultset without modifying it.   But around the same time we went ahead and implemented branchResultset() for DynamicView and branch() and copy() for Resultset so those should probably be called if the user needs to 'go back'.
Do you have a particular use case this is affecting you or should we possibly just fix this after researching more?   Normally we would not want to make changes that might be breaking but this would be very rare edge case assuming dynamic view doesn't depend on it.

Hello Kanaye, I think similarly about this. There are some more inconsitent in Resultset, etc... - possible developed historically. If you don't have any big issues with the current implementation of LokiJS, feel free to work with us on LokiJS 2
.

I was guessing that it's something from previous version.
@obeliskos I don't have a special use case that's broken because of this. I just stumbled across it. I'm fine if this doesn't get changed in the current Lokijs version but Lokijs2.
@Viatorus I've planed to take a look at the code of Lokijs2 when I've more time for it. I can PR for this and maybe other things I find. But that will probably not happen this month or the next.


Add patch to fix state for Ansible RHSM repository module

I observed this in all the RedHat raw and CloudStack image builds
qemu: TASK [sysprep : Remove subscriptions] ******************************************
qemu: fatal: [default]: FAILED! => {"changed": false, "msg": "value of state must be one of: enabled, disabled, got: absent"}

This task is defined here.
The community.general.rhsm_repository is provided by the Ansible collection community.general and in version v10.0.0 of this collection, they removed the state absent and instead we need to use disabled.
In our builder-base image used in CI we have version v9.4.0 of community.general collection which still supports absent state (although deprecated), that's why RedHat Nutanix and RedHat OVA builds which run on builder-base in Codebuild don't face this error.
But in the EC2 KVM AMI used for Raw and CloudStack builds, we have version v10.0.0 installed, so we're seeing this failure. So in this PR, I'm adding a patch to fix the state used in the Ansible RHSM repository module.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/cherrypick release-0.21

/cherrypick release-0.20


Crash or corrupted output when saving 3d volume texture mip level

3d volume texture "Save Selected Texture" seems to use selected slice index directly when saving mip levels. Visualization and UI use (slice >> mip) when accessing mip data.
For example when I select mip 1, RenderDoc saves slice * 2. For mip 2, it saves slice * 4, etc. RenderDoc crashes if the slice index overflows the available slices on that particular mip level. No file is generated in this case.

(multiply symbols were missing in bug description, added spaces on both sides to fix)

I found a few different bugs and bad behaviours here while looking into this. There were some bugs with handling mips of 3D textures properly, but I also changed the UI so that when you pick a different 3D texture mip, it updates the list of slices to be appropriate for that mip level. Makes things more intuitive.
You can either build your own copy of RenderDoc, or check out the next nightly build which will include these changes. Please let me know if it fixes it for you, I'll close this with the next stable build unless there's anything else.

Tried the nightly build. Unfortunately the mip visualization of 3d textures is now completely broken. It seems that the UI is always showing the upper corner of mip 0 (smaller and smaller region as you increase mip).

Hmm, I ran some simple test cases on all three APIs and they seemed to display and save the textures OK. Do you have a capture or program that you can share that shows the broken-ness?

Tested with 0a85203b. The UI is clearly changed. It updates the slice count properly, and multiplies/divides the active slice by 2 when I change the slices. But the visible contents in the window are wrong.
Save is bugged the same way as the visualization. Both always use mip 0 only. No other mips are shown at all. If mip 1 is chosen, it shows 2x2x2 smaller version of mip 0 upper corner. Mip 2 shows 4x4x4 smaller version of mip 0 upper corner. Etc.
Can't unfortunately share a capture, since it is from an unannounced game. Volume texture format=R8 unorm, size=1024x1024x512, mips=4. There's one SRV to sample it as whole (all mips). Additionally I have 4x SRV and 4x UAV to read/write mips separately. The resource viewer shows the full texture resource (all mips).
Reverted back to RenderDoc 0.30 and everything works perfectly. Haven't yet tested with 0.31 stable.

OK no problem I understand, it's worth asking :smile:. I'll try and create an identical texture, the one I had was a little bit different.
Just hedging my bets in case I can't repro it easily, and while I have you around - if you use 0.30 can you save the texture to dds (all slices/mips) and open that in the latest build? does that repro the same bug, and if so would you be able to share the texture in isolation?

I'm unable to reproduce this behaviour even on the 0a85203b394afeadd37039e640f4c3d0aa7377be nightly. I modified my test application to create a 1024x1024x512 R8_UNORM 4-mip 3D texture. It only creates one single SRV that samples all mips, I didn't create the other SRVs or the UAVs, but I don't think that should change anything.
I put a distinctive pattern in each mip/slice - mip 0 has vertical bars, mip 1 has horizontal bars, mip 2 has diagonal lines and mip 3 is solid. On each mip level the slice patterns shift down from the top sequentially (as in - slice 0 is fully covered in the pattern, slice 1 the pattern starts at y=64, and so on with this repeating every 16 slices so that every slice has at least something).
The only thing I did notice was something that seems to have been there since v0.30 and probably long before, where if you are viewing the texture at < 100% zoom it does linear sampling, and passing the slice index wasn't quite precise enough, so it linear sampled the previous slice faintly. I've added a slight nudge factor which fixes that.
I tested on my NV win7 machine and my AMD win10 machine with the same results. I've uploaded the capture here in case for some reason you get it broken still - 3D_test.zip.
There's quite possibly still an edge case left lurking there but it must be something quite specific. If you want I can make a separate branch for you or specific builds that will add some more logging to see if we can identify what's different in your case.

Did some additional investigation on my side.
Captures made with 0.30 work with the nightly build. The volume shows correctly and the render output is correct. Saving also works perfectly (dds contains all data).
However, the nightly build seems to capture volume texture contents incorrectly. Volume texture contents in new captures have corrupted mip levels. Also the render output (in RenderDoc) is wrong, meaning that the actual captured data is wrong, not just the visualization. If I reload a capture made with the nightly build, the volume is still wrong and the render output is still wrong.
Captures made with 0.30 (exactly the same scene and the same build of my game) work properly when loaded to the nightly build. I would guess that something got broken in the data capture, not in the visualization of it.

Also tried to load captures from the nightly build into 0.30, but 0.30 gives me incompatible version error. So I can't test whether the nightly build captures are also corrupted in 0.30.

OK I think I have repro'd it now. The key seems to be that the texture contents need to be saved in frame-initial data. My test case was small enough that the individual UpdateSubresource calls to fill out the texture were saved separately, which seems to be OK.

Yes, that 1024x1024x512 atlas is certainly not regenerated fully every frame :)
I do edit it partially (UAV writes), but most of the data remains from the last frame.

Ah I didn't mean rather than being regenerated every frame, I meant as opposed to a texture that's updated once at init time and then left immutable so it's never marked as dirty and in need of frame-initial data. But the UAVs should have clued me into that :smile:.
Tracked it down, it was a silly typo when fetching the data, probably a copy-and-paste error. Should be fixed with that commit above, but I'd appreciate you verifying when you're able!

Glad to hear that you found the issue. I will verify with the nightly build on Monday morning.

verified build 45551e58 (2016-09-19).
Everything works perfectly now. The UI is also better (shows actual slice number for mips + faster to scroll through the slices with up/down buttons when coarse mips are selected). Thanks for the improvements!
I wish other tools developers would fix things as quickly as you do :)

Glad it's all working now! :) Sorry for the extra bug you hit along the way.


Reporting untested files

Hello! I have a bunch of untested files on my project, and the report shows a total percentage of coverage regarding only the files touched by the tests. I tried putting more files on the include configuration table, but my untested files don't get reported. Do you know how could I do this?

@dread-uo unfortunately, LuaCov does not currently have this feature. It only reports files that were executed by the Lua VM. I believe it would not be too hard to write a patch to add this feature!

It seems there are 2 pull requests implementing this; will one of them be merged soon?

@dread-uo #71 is now merged, thanks for the nudge!

@hishamhm , hello again! Could you release a new version of luacov on LuaRocks with those this feature?
Thanks in advance o/


Broken output files for certain captions

Some captions are adding per-second-markers for words and this seems to confuse the caption parser. One example would be this talk, where parsing (and thus glanced-page) break at "savvy" (only the first savvy is rendered):
00:28:26.799 --> 00:28:28.320 align:start position:0%
people that use the data the most
already<00:28:27.039><c> so</c><00:28:27.399><c> people</c><00:28:27.639><c> in</c><00:28:27.700><c> like</c><00:28:27.820><c> the</c><00:28:27.940><c
> finance</c>

00:28:28.320 --> 00:28:28.330 align:start position:0%
already so people in like the finance

00:28:28.330 --> 00:28:30.989 align:start position:0%
already so people in like the finance
and<00:28:28.539><c> operations</c><00:28:28.809><c> side</c><00:28:29.399><c> they</c><00:28:30.399><c> are</c><00:28:30.429><c> savvy</c>

00:28:30.989 --> 00:28:30.999 align:start position:0%
and operations side they are savvy

00:28:30.999 --> 00:28:33.180 align:start position:0%
and operations side they are savvy
enough<00:28:31.269><c> and</c><00:28:31.619><c> you</c><00:28:32.619><c> know</c><00:28:32.740><c> because</c><00:28:33.039><c> they're</c><00:28:33.129><c> in</c>

00:28:33.180 --> 00:28:33.190 align:start position:0%
enough and you know because they're in

Another example (here), breaks at okay
01:07:52.319 --> 01:07:52.329 align:start position:0%
this okay

01:07:52.329 --> 01:07:56.740 align:start position:0%
this okay
any<01:07:53.109><c> other</c><01:07:53.440><c> questions</c><01:07:53.739><c> last</c><01:07:53.980><c> chance</c>

01:07:56.740 --> 01:07:56.750 align:start position:0%

01:07:56.750 --> 01:07:59.809 align:start position:0%

[Music]


Implement initial proposal for new userId module meta fields - #5060

This aims to fix #5060 by providing new meta data fields for userId modules and generate the necessary tables from it.
🏷 Type of documentation

[x] new feature

Work in progress user id modules page: https://deploy-preview-5673--prebid-docs-preview.netlify.app/dev-docs/modules/userid#prebidjs-adapters
An example of the new userId layout: https://deploy-preview-5673--prebid-docs-preview.netlify.app/dev-docs/modules/userid-submodules/sharedid


Use new react native architecture

Hi,
React Native maintainers are introducing new architecture to solve some of the issues that afflicted the Old Architecture in terms of performance and flexibility. New architecture facilitates backwards compatibility with the old architecture (https://reactnative.dev/docs/next/the-new-architecture/backward-compatibility).
As this is a new library it would make sense to make it future proof by supporting the new architecture from the very beginning.

Hey @dcosmin2003
Thanks for feedback!
Swift is not compatible with Objective-C++, indeed
We will investigate potential workarounds!

Hello,
Is there any progress on this?
I tried this library on expo 46.0.16 and React Native 0.69.6 bare workflow without importing @import adyne_react_native and everything is seen to work.
Is there any catch with this import? Will the library work without this import on the production build or do I need to downgrade to the old version with only one (.m)?
Thank you

Hey @JBlazej

Is there any catch with this import?

After (almost any) payment flow is completed, this Import allows you to use RedirectComponentProxy to process the redirect URL and receive onProvide callback  on iOS :
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
  return [RedirectComponentProxy proccessURL:url];
}

Will the library work without this import on the production build or do I need to downgrade to the old version with only one (.m)?

It is not essential for product build since when the payment is conducted your backend will receive a webhook from Adyen backend about payment status (could take up to 10-30 minutes).
Also, return URL could be processed by other means (on your web or backend), you only need to think of means to notify your mobile app.
However, to conduct payment status in a real time and provide actual feedback to the shopper we recommend to arrange custom URL scheme in your app, receive the redirect then pass it to component by using RedirectComponentProxy.
Currently, there are 2 potential workarounds:
manually parse the URL (see Swift sample here) so it is compatible with /payments/details endpoint on Adyen API.
We are planing to work on Objective-C++ compatible helper for beta-8

Working on a fix in #121

Hey @descorp, sorry to jump into this issue asking about SDK releases, but we have just run into this issue!
Do you have an idea of when https://github.com/Adyen/adyen-react-native/pull/121 would be released in a new SDK version, once it's merged? Just trying to get an idea of whether we should wait, or implement your suggested workaround!

Hey @robwalkerco
#121 is merged. Release beta-8 could be expected in January.

UPD
The easiest workaround is to create local Obj-c class and use it in your AppDelegate.mm
MYRedirectComponentProxy.h
@interface MYRedirectComponentProxy : NSObject

+ (BOOL)proccessURL:(nonnull NSURL *)url;

@end

MYRedirectComponentProxy.m
#import "MYRedirectComponentProxy.h"
@import adyen_react_native;

@implementation MYRedirectComponentProxy

+ (BOOL)proccessURL:(nonnull NSURL *)url {
  return [RedirectComponent proccessURL:url];
}

@end

AppDelegate.mm
#import "MYRedirectComponentProxy.h"

...

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
  return [MYRedirectComponentProxy proccessURL:url];
}

Hi @descorp . this solution does not solve the problem. where the files should be placed? because i get modules error when im trying to render the Adyen Drop in component.

Hi @descorp . this solution does not solve the problem. where the files should be placed? because i get modules error when im trying to render the Adyen Drop in component.

While waiting for the beta-8 release we are using patch-package to apply the changes that will be released in the new beta. Than avoids the need to edit any of our own project files etc.
View the patch contents
<EMAIL_ADDRESS>@@ -0,0 +1,50 @@
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>new file mode 100644
index 0000000..5f6fbea
--- /dev/null
+++<EMAIL_ADDRESS>@@ -0,0 +1,22 @@
+//
+// Copyright (c) 2023 Adyen N.V.
+//
+// This file is open source and available under the MIT license. See the LICENSE file for more info.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/// Handles any redirect Url whether its an App custom scheme url, or an app universal link.
+@interface ADYRedirectComponent : NSObject
+
+/// This function should be invoked from the application's delegate when the application is opened through a URL.
+///
+/// - Parameter url: The URL through which the application was opened.
+/// - Returns: A boolean value indicating whether the URL was handled by the redirect component.
++ (BOOL)applicationDidOpenURL:(nonnull NSURL *)url;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>new file mode 100644
index 0000000..af5b100
--- /dev/null
+++<EMAIL_ADDRESS>@@ -0,0 +1,16 @@
+//
+// Copyright (c) 2023 Adyen N.V.
+//
+// This file is open source and available under the MIT license. See the LICENSE file for more info.
+//
+
+#import "ADYRedirectComponent.h"
+#import <adyen_react_native-Swift.h>
+
+@implementation ADYRedirectComponent
+
++ (BOOL)applicationDidOpenURL:(nonnull NSURL *)url {
+    return [RedirectComponentProxy proccessURL: url];
+}
+
+@end

@BenSagir

where the files should be placed?

Files expected to be added to your iOS project in Xcode (New File -> Cocoa Touch Class).

i get modules error

Can you build your Xcode project?

Hey @robwalkerco
#121 is merged. Release beta-8 can be expected in January.

@descorp When trying to incorporate this fix (from #121) in our project; We are getting an error in ADYRedirectComponent.m throwing 'ayden_react_native_Swift.h> file not found.
Other than that we are still getting the same issue in AppDelegate.mm erroring with 'Use of undeclared identifier 'ADYRedirectComponent'.
We are using AppDelegate.mm, rather than AppDelegate.m - could this be an issue?

hey, @descorp any ETA on beta-8 release?

Hey @mantasdb
Sorry for delay.
We plan release this week.

Beta-8 is released with the fix.
Please confirm it resolves the problem 💚

I am getting the same error that @jamestimbrell is getting: 'Use of undeclared identifier 'ADYRedirectComponent' in XCode. This is with the latest version: 1.0.0-beta.9. In addition when I try to pod install, I am getting an error that 'ffi_c.bundle mach-o file but is an incompatible architecture have x86_64 need arm64'. I do not have errors pod installing other libraries and everything works correctly when I remove the @adyen/react-native package.


Use Caracal Magnum

To be merged after #1430.

Perhaps should be merged without waiting for CI - Magnum's not tested.


feat(notion): add ai quick create page command

Description

Adds a command to create a page, filling in the props and the title in with AI.
My intention is to have a command that creates quicklinks to the "quick create command", so that you can set default values for properties, and the database to use.
Screencast

todo
Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

The way I implemented it is too unreliable and rarely works without errors. I'm going to close this PR. If anyone else wants to, they can continue to work on it

archived branch is now at: archive/notion/ai

Thanks for the summary @erics118, it's appreciated.


How to generate the file?

I am working on HOI detection in Videos. Thank you for the VIDHOI dataset and new Spatial-Temporal baseline.
Can you clarify how can I generate val_instances_predictions_train_small_vidor_with_pseudo_labels.pth file?

Hi @Aapoorva Thank you for your interest in our work!
Sorry that I didn't manage to include that file. I have uploaded the file and you can download it from here.
Note that val_instances_predictions_train_small_vidor_with_pseudo_labels.pth is only for "removing those testing frames with ground truth boxes that no any bounding box got predicted by the trajectory generation model".

Hi @coldmanck Thanks this will help.
Can you also clarify which frames should be there in frames lists train.csv and val.csv files as the acc. to paper, there are 7.3M frames in VIDHOI but frames generated from the script given slowfast/datasets/vidor-github/extract_vidor_frames.sh gives ~7.6M frames?

This line prints the number of frames actually used for training/validation, respectively.
Training stats: 6,505,157 frames

Validation stats: 769,425 frames

6,505,157 + 769,458 = 7,274,615 ~ 7.3M frames


darknet recipe improvement

Consider it as a review.

As the Darkweb project does not offer tags, you should use a commit instead, and the date of that commit. We use date because you can sort before searching.

OpenCV is optional, but is not available yet. All recipes from conan-community or Bincrafters are not valid.

[ ] I've read the guidelines for contributing.

[ ] I've followed the PEP8 style guides for Python code in the recipes.

[ ] I've used the latest Conan client version.

[ ] I've tried at least one configuration locally with the
conan-center hook activated.

Thanks for the feedback @uilianries !
I will do the change for the commit/date !
About OpenCV, should I remove entirely the option? I really need it for the project I work on with darknet so it's not really an option for me...

I see, we have the OpenCV package from Conan Community, which was made by @SSE4. I don't know his plans for moving OpenCV to CCI.

Ok. In the meantime what should I do?
For the commit/date, the version should be like:
2018-09-14-61c9d02ec461e30d55762ec7669d6a1d3c356fb2 ? Or the date should be the version and the commit hash the download link?

Sorry I didn't seen you already did it on the PR!! Thanks a lot!


Channel Master: Auto color options

set auto color by ctl object. This will group by color based on the ctl of the channel on a custom tab
autocolor for XYZ axis

Auto color by Axis

Auto color by host

menu order updated:


PP-4341 Remove Either

WHAT

Remove usage of Either from GatewayResponse

I'm not really against the concept of Either. I just hate the name and the left and right things. I wouldn't mind writing our own Monad that handles a valid and invalid response. Now before we all get scared about Monads and functional programming, we already use Monads: Optionals. for e.g. we can have an Optional<String>.map(some transform).map(some transform) etc and it handles the case if there was an empty in the first instance. Except for us we want to handle an error.


Support for custom input shapes in exporters onnx

This will be mainly useful for testing, but could also solve temporarily issues on models where the export is dependent on the input shape (for example longformer (but it's actually a bug in PyTorch), and longt5.
Related issues are linked in https://github.com/huggingface/optimum/issues/503
This PR follows https://github.com/huggingface/optimum/pull/522
Edit: let's wait for https://github.com/huggingface/optimum/pull/573 to be merged to clean up
Before submitting

[x] Did you write any new necessary tests?

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


[Question]: Can I load data from disk and then save it into an external Graph/Vector Store like Neo4j or AWS Neptune using a PropertyGraphIndex?

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
I had checked the PropertyGraphIndex's documentation and read the "Saving to/from disk" and "Saving and Loading with Integrations" sections. After saving the data to disk with:
# create
index = PropertyGraphIndex.from_documents(documents)
# save
index.storage_context.persist("./storage")

Next time, load the data from disk with:
# load
storage_context = StorageContext.from_defaults(persist_dir="./storage")
index = load_index_from_storage(storage_context)

How can I save loaded data into an online graph/vector store like Neo4j or AWS Neptune?

@dosu
That not what i meant.
My question is: Can i save the data that loaded from disk(in-memory, SimplePropertyGraphStore) into online graph store?


Build process cannot find pybind11/eigen.h

Solution to issue cannot be found in the documentation.

[X] I checked the documentation.

Issue
On both Linux and MacOS, build process cannot find pybind11/eigen.h, but when I print pip list and conda list, the required packages are actually installed. example azure output
# packages in environment at $BUILD_PREFIX:
#
# Name                    Version                   Build  Channel
...
pybind11                  2.12.0          py312h8572e83_0    conda-forge
pybind11-global           2.12.0          py312h8572e83_0    conda-forge
...

Package         Version
--------------- -------
pip             24.0
pybind11        2.12.0
pybind11_global 2.12.0
setuptools      69.5.1
wheel           0.43.0

And pybind11 can be found by building process:
-- Found pybind11: /home/conda/feedstock_root/build_artifacts/abess_1714374028828/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/include (found version "2.12.0")

And the CMakeLists.txt has linked the library:
# dependencies
find_package(pybind11)
find_package(OpenMP)

# sources
SET(SOURCES
    src/pywrap.cpp
    src/utilities.cpp
    src/List.cpp
    src/normalize.cpp
    src/api.cpp
)
add_library(pybind_cabess MODULE ${SOURCES})

# links
target_include_directories(pybind_cabess PRIVATE include
                                                 src)
target_link_libraries(pybind_cabess PRIVATE pybind11::module
                                            pybind11::opt_size
                                            pybind11::lto
                                            pybind11::windows_extras)

However,
  [ 16%] Building CXX object CMakeFiles/pybind_cabess.dir/src/pywrap.cpp.o
  /home/conda/feedstock_root/build_artifacts/abess_1714374028828/work/src/pywrap.cpp:1:10: fatal error: pybind11/eigen.h: No such file or directory
      1 | #include <pybind11/eigen.h>
        |          ^~~~~~~~~~~~~~~~~~

Besides, when I build locally or with pypa/cibuildwheel, same code works fine. I don't know what happens here. Please help.
Installed packages
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
binutils_impl_linux-64    2.40                 ha885e6a_0    conda-forge
binutils_linux-64         2.40                 hdade7a5_3    conda-forge
bzip2                     1.0.8                hd590300_5    conda-forge
c-ares                    1.28.1               hd590300_0    conda-forge
ca-certificates           2024.2.2             hbcca054_0    conda-forge
cmake                     3.29.2               hcfe8598_0    conda-forge
gcc_impl_linux-64         12.3.0               h1562d66_6    conda-forge
gcc_linux-64              12.3.0               h6477408_3    conda-forge
gxx_impl_linux-64         12.3.0               h1562d66_6    conda-forge
gxx_linux-64              12.3.0               h4a1b8e8_3    conda-forge
kernel-headers_linux-64   2.6.32              he073ed8_17    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
krb5                      1.21.2               h659d440_0    conda-forge
ld_impl_linux-64          2.40                 h55db66e_0    conda-forge
libcurl                   8.7.1                hca28451_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 hd590300_2    conda-forge
libexpat                  2.6.2                h59595ed_0    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-devel_linux-64     12.3.0             h2af2641_106    conda-forge
libgcc-ng                 13.2.0               hc881cc4_6    conda-forge
libgomp                   13.2.0               hc881cc4_6    conda-forge
libnghttp2                1.58.0               h47da74e_1    conda-forge
libnsl                    2.0.1                hd590300_0    conda-forge
libsanitizer              12.3.0               h2af2641_6    conda-forge
libsqlite                 3.45.3               h2797004_0    conda-forge
libssh2                   1.11.0               h0841786_0    conda-forge
libstdcxx-devel_linux-64  12.3.0             h2af2641_106    conda-forge
libstdcxx-ng              13.2.0               h95c4c6d_6    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libuv                     1.48.0               hd590300_0    conda-forge
libxcrypt                 4.4.36               hd590300_1    conda-forge
libzlib                   1.2.13               hd590300_5    conda-forge
make                      4.3                  hd18ef5c_1    conda-forge
ncurses                   6.4.20240210         h59595ed_0    conda-forge
openssl                   3.2.1                hd590300_1    conda-forge
pybind11                  2.12.0          py312h8572e83_0    conda-forge
pybind11-global           2.12.0          py312h8572e83_0    conda-forge
python                    3.12.3          hab00c5b_0_cpython    conda-forge
python_abi                3.12                    4_cp312    conda-forge
readline                  8.2                  h8228510_1    conda-forge
rhash                     1.4.4                hd590300_0    conda-forge
sysroot_linux-64          2.12                he073ed8_17    conda-forge
tk                        8.6.13          noxft_h4845f30_101    conda-forge
tzdata                    2024a                h0c530f3_0    conda-forge
xz                        5.2.6                h166bdaf_0    conda-forge
zstd                      1.5.5                hfc55251_0    conda-forge

Environment info
It actually from the PR's build pipeline, all linux and macos fails with this problem, e.g.:
https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=923705&view=logs&j=bb1c2637-64c6-57bd-9ea6-93823b2df951&t=55f066f8-9d52-54c8-1ae3-a2d9002ff304

#16

This is likely a question of not setting the right (or even any) include paths.
I've added pybind11-global in #17 (so that $PREFIX/include/pybind11/eigen.h exists, rather than the default one under $PREFIX/lib/python3.9/site-packages/pybind11/include/pybind11/eigen.h), but still it doesn't get found. I haven't looked closer at the upstream CMakeLists.txt, but you should check if anything modifies/deletes the include paths. If you pass -I$PREFIX/include to the compiler it should work (clearly this should be handled correctly by default; no idea what your build is doing though...)


Collapsed cursor is not rendered as a fragment

We lost that somewhere on the way. Expanded selections work.

It should be rendered this way now:

cursor fragment only when blurred (or other user)
selection fragment always

@michael is this the case?
This is a hybrid of the former approach (render selection when natively blurred) and rendering always.
As we can't hide the native cursor I think it is better not to double render in this case.
With the selections we could do the same, however, personally overall I prefer to render our selections always.

That approach is fine. However the cursor fragment is not rendered in the blurred case atm. Remote cursors however are rendered.

Ok. That should work indeed.

Probably I have some unmerged work here in the table-editing branch.
I will work on the general pieces related to selections and have them in an independent branch.

Fixed.


Solution FINALLY

https://github.com/Serveladik/devops_todolist_cicd_task_6_polish_pipeline/actions/runs/10738518918

 Add screenshoot to confirm this steps


Visual Studio Signature thumbprint do not match expected

Description
azure-arm.build_gallery_image: Downloading package from https://aka.ms/vs/17/release/vs_Enterprise.exe to C:\Users\INSTAL~1\AppData\Local\Temp\vs_Enterprise.exe...
azure-arm.build_gallery_image: Package downloaded in 0.3 seconds
azure-arm.build_gallery_image: Signature thumbprint do not match expected.
azure-arm.build_gallery_image: At C:\Program Files\WindowsPowerShell\Modules\ImageHelpers\InstallHelpers.ps1:972 char:9
azure-arm.build_gallery_image: +         throw "Signature thumbprint do not match expected."
azure-arm.build_gallery_image: +         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
azure-arm.build_gallery_image:     + CategoryInfo          : OperationStopped: (Signature thumb...match expected.:String) [], RuntimeException
azure-arm.build_gallery_image:     + FullyQualifiedErrorId : Signature thumbprint do not match expected.
Platforms affected

[X] Azure DevOps
[ ] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] Ubuntu 24.04
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[ ] macOS 15
[ ] macOS 15 Arm64
[ ] Windows Server 2019
[X] Windows Server 2022

Image version and build link
windows2022
Is it regression?
no
Expected behavior
Download visual studio enterprise bootstrapper
Actual behavior
azure-arm.build_gallery_image: Downloading package from https://aka.ms/vs/17/release/vs_Enterprise.exe to C:\Users\INSTAL~1\AppData\Local\Temp\vs_Enterprise.exe...
azure-arm.build_gallery_image: Package downloaded in 0.3 seconds
azure-arm.build_gallery_image: Signature thumbprint do not match expected.
azure-arm.build_gallery_image: At C:\Program Files\WindowsPowerShell\Modules\ImageHelpers\InstallHelpers.ps1:972 char:9
azure-arm.build_gallery_image: +         throw "Signature thumbprint do not match expected."
azure-arm.build_gallery_image: +         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
azure-arm.build_gallery_image:     + CategoryInfo          : OperationStopped: (Signature thumb...match expected.:String) [], RuntimeException
azure-arm.build_gallery_image:     + FullyQualifiedErrorId : Signature thumbprint do not match expected.
Repro steps
Run the create VM pipeline for windows2022

Hi @MathijsHofkens  , Thanks for bringing the issue. We will update once issue is fixed. thanks

Hi @MathijsHofkens , the signature has been updated. Kindly retry by forking latest code from main branch.
Closing this issue,Thank you.

Hi @vidyasagarnimmagaddi, visual studio is installing right now but VSIX does not seem to install properly. Created #10755


Fix role mapping in GPTAssistantAgent for OpenAI API compatibility

Why are these changes needed?
This change addresses a bug where an openai.BadRequestError occurs when using a GPTAssistantAgent and a ConversableAgent that utilizes a tool call within the same GroupChat. Specifically, when the ConversableAgent performs a tool call, messages with internal role 'tool' are added to the chat history. When the GPTAssistantAgent then tries to generate a response, it sends this conversation history to the OpenAI Assistant API, which returns an error because it only accepts messages with roles 'user', 'assistant', per the error message.
Note:  Was previously merged to Microsoft autogen repo:
https://github.com/microsoft/autogen/pull/3555
Problem Details:
The primary problem occurs when messages with roles like "tool" or "function" are submitted to the OpenAI Assistant API, which expects roles to be either "user" or "assistant".  As I was reviewing the best approach to fix this issue, it was clear that modifying the role directly in _append_oai_message can disrupt the internal message history and cause unit tests to fail.  Therefore, the recommended solution is to adjust roles within the GPTAssistantAgent when sending to OpenAI API.
Rationale:
By isolating changes to gpt_assistant_agent.py, we avoid impacting other agents and parts of the codebase.
Also we preserve internal logic, so internal AutoGen message roles remain unchanged, ensuring that any internal processing that depends on roles like "function" or "tool" continues to work correctly.
Agents Involved:
A GPTAssistantAgent.
A ConversableAgent that performs tool calls.
A ConversableAgent as user proxy
Error Message:
openai.BadRequestError: Error code: 400 - {'error': {'message': "Invalid value: 'tool'. Supported values are: 'user' and 'assistant'.", 'type': 'invalid_request_error', 'param': 'role', 'code': 'invalid_value'}}
Solution:
Role Mapping: The fix involves mapping internal message roles to roles accepted by the OpenAI Assistant API before sending messages.
Implementation:
Added a _map_role_for_api method in gpt_assistant_agent.py to map internal roles to valid API roles.
Internal roles such as 'tool' and 'function' are mapped to 'assistant'.
Modified the _invoke_assistant method to apply this mapping when constructing messages for the API call.
Benefits:
Ensures compatibility with the OpenAI API by sending only accepted roles, preventing the BadRequestError from occurring.  Allows the GPTAssistantAgent to function correctly within a groupchat that includes ConversableAgents utilizing tool calls.
Software versions:
pyautogen=0.2.35
python=3.12.2
tested with both openai=1.30.1 and openai=1.47.0
tested with gpt-4o and gpt-4o-mini
Logging:
if you add logging to the mre program, you can see the role issue in the log:
logging:
import logging
logging.basicConfig(level=logging.DEBUG)
output before fix: (role='tool')
DEBUG:openai._base_client:Request options: {'method': 'post', 'url': '/threads/thread_hSK0dCkoMCgRTwXDjxQOeV8v/messages', 'headers': {'OpenAI-Beta': 'assistants=v2'}, 'files': None, 'json_data': {'content': "This is a message from the 'print_message' function.", 'role': 'tool'}}
after fix: (role='system')
'role': 'user', 'name': 'Analyst'}, {'content': "Read the above conversation. Then select the next role from ['user_proxy', 'FunctionAgent', 'Analyst'] to play. Only return the role.", 'name': 'checking_agent', 'role': 'system'}], 'model': 'gpt-4o', 'stream': False, 'temperature': 0.0}}
A Minimal Reproducible Example (MRE) was created to demonstrate the issue and verify that the fix works consistently.
MRE Overview:
Creates an openai assistant analyst agent, then plugs in the asssistant id into the gpt assistant in the groupchat.
Set up GroupChat with GPTAssistantAgent and a ConversableAgent that performs a tool call.
The ConversableAgent invokes a tool, adding a message with role 'tool' to the chat history.
When the GPTAssistantAgent attempts to process the chat history, it sends the messages to the OpenAI API.
Without the fix, the API returns a BadRequestError due to unrecognized roles.
With the fix, the internal roles are correctly mapped, and no error occurs.
MRE:
from openai import OpenAI
from autogen import ConversableAgent, GroupChat, GroupChatManager, config_list_from_json
from autogen.agentchat.contrib.gpt_assistant_agent import GPTAssistantAgent

# OAI_CONFIG_LIST Example:
# Ensure that your OAI_CONFIG_LIST is properly formatted as shown below.
#
# [
#     {
#         "model": "gpt-4o",
#         "api_key": "INSERT YOUR OPENAI KEY"
#     }
# ]
# ------------------------------------------------------------------------

# Load LLM configuration from environment or file
config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST")
llm_config = {
    "config_list": config_list,
    "temperature": 0.0,
}

# Extract the assistant-specific configuration
if not config_list:
    raise ValueError("No configuration found in OAI_CONFIG_LIST.")

assistant_config = config_list[0]

api_key = assistant_config.get("api_key")
model = assistant_config.get("model")

client = OpenAI(api_key=api_key)

# Step 1: Create a new Assistant
assistant = client.beta.assistants.create(
    name="Analyst",
    instructions="""You are an insightful analyst. Your goal is to offer clear, concise, and accurate
    explanations based on the data you gather, ensuring that responses are well-structured and directly address the user's request.""",
    model=model,
)

# Get the Assistant ID
assistant_id = assistant.id
print(f"Assistant ID: {assistant_id}")

# Define the User Proxy Agent
user_proxy = ConversableAgent(
    name="user_proxy",
    description="Represents the user and manages interactions between the user and other agents.",
    llm_config=llm_config,
    human_input_mode="ALWAYS",
)

# Agent that can call a function
function_agent = ConversableAgent(
    name="FunctionAgent",
    description="An agent that can call a function called 'print_message'.",
    system_message="You are an agent that uses the 'print_message' function to provide information.",
    llm_config=llm_config,
    human_input_mode="NEVER",
)

# Register the function
@user_proxy.register_for_execution()
@function_agent.register_for_llm(
    name="print_message", description="Prints a predefined message."
)
def print_message() -> str:
    """A sample function that returns a predefined message."""
    return "This is a message from the 'print_message' function."

# Analyst Agent
analyst = GPTAssistantAgent(
    name="Analyst",
    description="Provides additional analysis after the function is called.",
    llm_config={
        "config_list": llm_config["config_list"],
        "assistant_id": assistant_id,
    },
)

# Set up the group chat with the agents
groupchat = GroupChat(
    agents=[user_proxy, function_agent, analyst],
    messages=[],
    max_round=10,
)

def main():
    # Task to initiate the chat and reproduce the bug
    task = "Please execute the function and then provide additional analysis."

    manager = GroupChatManager(
        groupchat=groupchat, llm_config=llm_config
    )

    user_proxy.initiate_chat(
        manager,
        message=task,
    )

if __name__ == "__main__":
    main()

Testing:
All unit tests have been run locally to ensure existing functionality remains unaffected.
Related issue number
Closes #3284
https://github.com/microsoft/autogen/issues/3284
Checks

No doc changes
No unit tests modified
I've run precommit, made sure all auto checks have passed, that no unit tests have broken as a result of the fix and code coverage does not decrease.

@evandavid1 is it good to have a test that covers the new case supported in the contrib-openai CI?

@evandavid1 is it good to have a test that covers the new case supported in the contrib-openai CI?

Hi @sonichi yes, good idea.  Will add tests and include going forward

@evandavid1, thanks for the great contribution! Are you working on adding tests? Also, I see that there is a conflict in the file autogen/agentchat/contrib/gpt_assistant_agent.py. Could you fix the conflict? Thank you!

Hi - sorry for delay, reviewing conflict and will submit tests
On Sun, Oct 20, 2024 at 11:43 AM Qingyun Wu @.***>
wrote:

@evandavid1 https://github.com/evandavid1, thanks for the great
contribution! Are you working on adding tests? Also, I see that there is a
conflict in the file autogen/agentchat/contrib/gpt_assistant_agent.py.
Could you fix the conflict? Thank you!
—
Reply to this email directly, view it on GitHub
https://github.com/autogenhub/autogen/pull/46#issuecomment-2425174171,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANXHUETSWT24E4PCJ27YJLDZ4P2T5AVCNFSM6AAAAABPCCFYXCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMRVGE3TIMJXGE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Thanks for the contribution @evandavid1!
Tests pass when I run them locally
LGTM


Use self-signed SSL certificate to create a Route53 Hosted Zone

Is your feature request related to a problem? Please describe.
Currently a Hosted Zone is a prerequisite for the cloudformation deployment.  Can a self-signed SSL certificate be used to bring up a demo formation?

References:

https://pillpall.github.io/aws/2020/08/27/Create-Self-Signed-Certificate-with-Cloudformation.html

Pull requests:

https://github.com/Senzing/aws-cloudformation-ecs/pull/26


Attempt local asset bundling before using Docker.

Issue #, if available: N/A
Description of changes:
Implemented local asset bundling, which will be used instead of Docker when possible. Local bundling is preferred over DIND for performance and security reasons. This is the same approach already used to bundle node.js dependencies in the UI construct.
Problem: Docker-in-Docker execution is often blocked in regulated environments. CDK uses Docker for S3 asset bundling by default. cdk synth fails if Docker is not available, making it impossible to build or deploy the solution.
Solution: This implementation of local bundling should succeed if zip and python3.11 (with pip) are available on the local path. If not, CDK falls back to Docker, so worst case we're back to the stated problem. Note that the required version of python is determined by the Lambda runtime specified in lib/shared/index.ts. Hard-coding python3 instead would probably make this work for more people, but matching the Lambda runtime version seemed a safer choice. I'll leave it to reviewers to make the final call.
Due to limits in CDK (and perhaps my knowledge of Javascript), I had to add similar code to two different classes. Currently, the CDK ILocalBundling.tryBundle(...) interface definition does not include the path to be bundled. An inline anonymous class implementation is the only solution I could get to work.
I've tested this on multiple versions of Amazon Linux and on Mac OS, but nowhere else.
Bundling discussion in CDK docs:

https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_s3_assets-readme.html#asset-bundling

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Hi, I am getting an issue with the code, and need to investigate the underlying reason

Hi, I am getting an issue with the code, and need to investigate the underlying reason.

Coincidentally, i've just tried a clean build of 4.0.2 and am getting an error related to this import in the react app:
import * as InfraConfig from '../../../../bin/config.json';
Build output makes it seem like a bundling error, but i think the bundling error is a consequence of the compilation failure. Is this the same issue you're seeing? If so, keep in mind that the local bundling used in the UI construct was implemented previously and is not related to this PR.

Hi, I am getting an issue with the code, and need to investigate the underlying reason.

Coincidentally, i've just tried a clean build of 4.0.2 and am getting an error related to this import in the react app: import * as InfraConfig from '../../../../bin/config.json';
Build output makes it seem like a bundling error, but i think the bundling error is a consequence of the compilation failure. Is this the same issue you're seeing? If so, keep in mind that the local bundling used in the UI construct was implemented previously and is not related to this PR.

This is a different issue. Run npm run build && npm run create to create a new config.json and then try again.

Hi, I am getting an issue with the code, and need to investigate the underlying reason.

Coincidentally, i've just tried a clean build of 4.0.2 and am getting an error related to this import in the react app: import * as InfraConfig from '../../../../bin/config.json';
Build output makes it seem like a bundling error, but i think the bundling error is a consequence of the compilation failure. Is this the same issue you're seeing? If so, keep in mind that the local bundling used in the UI construct was implemented previously and is not related to this PR.

This might be an unrelated issue. Try running npm run build && npm run create to create a new config.json and then try again.

i'm confused about the decision to handle import that way; will open a separate issue to ask about it.

The solution with the static class member does not work for me. The only solution that seems to work is to use this pattern:
class BuildImageProvider extends Construct {
  public static getOrCreate(scope: Construct): DockerImage {
    const stack = Stack.of(scope);
    const id = "build-image-provider";
    const x =
      (Node.of(stack).tryFindChild(id) as BuildImageProvider) ||
      new BuildImageProvider(stack, id);
    return x.buildImage;
  }

  private readonly buildImage: DockerImage;

  constructor(scope: Construct, id: string) {
    super(scope, id);

    this.buildImage = DockerImage.fromBuild(
      path.posix.join(__dirname, "alpine-zip")
    );
  }
}

and then retrieve the image builder with
bundling: {
          image: BuildImageProvider.getOrCreate(this),

@massi-ang any news on this?


Give two buttons cursor pointers

Hey I would like someone to give the two buttons in the right corner "Generate system" & "Show rotation" pointer cursors.

Hey can u assign me on this one, I'm glad to help on this one

Hey can u assign me on this one, I'm glad to help on this one

Absolutely, glad to have your help :)

Thanks for your contribution @AndersonCeci! Have a great day, feel free to work on any other issues in the repo if you want :)


Create 2.3_MongoDB_Installation_and_Configuration_Linux.md

Description 📜
MongoDB Installation in Linux
Fix #2400

Type of change 📝

[ ] Au#dio (Should be in mp3 format Includes speech clarity, Concise ,Low distortion)
[ ] Vi#deo (Animations, screen-recordings, presentations and regular explanatory films are all possibilties etc)
[x] Documentation (Content Creation in the form of codes or tutorials)
[ ] Other (If you choose other, Please mention changes below)

Domain of Contribution 📊

[ ] Android Dev #(Flutter)
[ ] Android Dev #(Java)
[ ] Android Dev #(Kotlin)
[ ] Backend Dev #(Java)
[ ] Backend Dev #(.NET)
[ ] Backend Dev #(PHP)
[ ] Backend Dev #(Python)
[ ] C/#CPP
[ ] Competitive #Programming
[ ] Cyber #Security
[ ] DS#A
[ ] Data#base
[ ] Datascience with #Python
[ ] Datascience with #R
[ ] Frontend Dev #HTML/CSS/JS
[x] Frontend Dev React/Angular/Vue
[ ] Go#lang
[ ] Interview #Prep
[ ] Java_#Domain
[ ] Java#Script
[ ] ME#RN
[ ] Machine #Learning
[ ] Open #Source
[ ] Python_#Domain
[ ] Ru#st
[ ] Statis#tics
[ ] UI/#UX

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

@priyanka001tech In which domain you are doing this pr? Is it in frontend with framework

while choosing domain please be carefull

@anandhu720 I'm very sorry... This was the mistake from my end..I'll fix it as soon as possible

Okk I'll do that!


M1 Docker environment build nvim LuaSnip Error (ARM64 ubuntu)

I'm working with arm64 ubuntu to build docker, and the LuaSnip fired a error like when I start nvim:
Error detected while processing BufWinEnter Autocommands for "*":
E5108: Error executing lua ...ot/.local/share/nvim/plugged/LuaSnip/lua/luasnip/loaders/from_vscode.lua:21: '=' expected near 'continue'
stack traceback:
        [C]: in function 'error'
        ?: in function <?:18>
        [C]: in function 'require'
        [string ":lua"]:1: in main chunk

my nvim.vim like this, and other plugin work fine:

if has("nvim")
  let g:plug_home = stdpath('data') . '/plugged'
endif

call plug#begin()

Plug 'tpope/vim-fugitive'
Plug 'tpope/vim-rhubarb'

if has("nvim")
  Plug 'hoob3rt/lualine.nvim'
  Plug 'kristijanhusak/defx-git'
  Plug 'kristijanhusak/defx-icons'
  Plug 'Shougo/defx.nvim', { 'do': ':UpdateRemotePlugins' }
  Plug 'neovim/nvim-lspconfig'
  Plug 'williamboman/nvim-lsp-installer'
  Plug 'tami5/lspsaga.nvim'
  Plug 'folke/lsp-colors.nvim'
  Plug 'L3MON4D3/LuaSnip'
  Plug 'hrsh7th/cmp-nvim-lsp'
  Plug 'hrsh7th/cmp-buffer'
  Plug 'hrsh7th/nvim-cmp'
  Plug 'nvim-treesitter/nvim-treesitter', { 'do': ':TSUpdate' }
  Plug 'kyazdani42/nvim-web-devicons'
  Plug 'onsails/lspkind-nvim'
  Plug 'nvim-lua/popup.nvim'
  Plug 'nvim-lua/plenary.nvim'
  Plug 'nvim-telescope/telescope.nvim'
  Plug 'windwp/nvim-autopairs'
  Plug 'windwp/nvim-ts-autotag'
endif

Plug 'groenewege/vim-less', { 'for': 'less' }
Plug 'kchmck/vim-coffee-script', { 'for': 'coffee' }

call plug#end()

Environment:
Dockerfile under Macos M1, Ubuntu 22.04 docker:
RUN apt-get update && apt-get --no-install-recommends install -y tmux fish luajit python3-neovim \
  software-properties-common gpg-agent nodejs npm \
  && add-apt-repository -y ppa:neovim-ppa/stable \
  && apt-get update \
  && apt-get --no-install-recommends install -y neovim gcc libc6-dev g++ \
  && rm -rf /var/lib/apt/lists/*
RUN sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
       https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
ADD dotfiles/.tmux.* /root/
ADD dotfiles/.config /root/.config/
ADD dotfiles/tree-sitter-0.20.6-1-aarch64.pkg.tar.xz /

Could you show the output of nvim -v?
I suspect nvim is linked agains lua, and not luajit, which causes an error because we use goto, which is only supported in luajit.

nvim -v                                                                                 ✔  root@a7adaf2093b8
NVIM v0.7.2
Build type: Release
Lua 5.1
Compiled by<EMAIL_ADDRESS>Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/share/nvim"
Run :checkhealth for more info

Could you show the output of nvim -v? I suspect nvim is linked agains lua, and not luajit, which causes an error because we use goto, which is only supported in luajit.

Maybe you are right, after I execute "apt-get remove lua5.1", and the neovim is gone too......
and I compare with a docker instance under x64 cpu, the result is linke to LuaJIT, so how to link the nvim back to LuaJIT?:
nvim -v                                                                                 ✔  root@ubuntu-ssh  18:05:54
NVIM v0.7.2
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by<EMAIL_ADDRESS>
Features: +acl +iconv +tui
See ":help feature-compile"

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/share/nvim"

Run :checkhealth for more info

Okay, just removed the goto, I thought luajit is required for neovim and anything else is a misconfiguration, but that's not the case.
luasnip should also work with regular lua, with the latest master.

I was keeping it there as a flag to identify users not using luajit :smiling_face_with_tear: , the rest of the code should work without it but it hits the performance / disallows potential optimizations.

BTW, you can force docker in the M1 to use amd64  with docker --platform linux/amd64 in amd64  ubuntu links nvim to luajit

I was keeping it there as a flag to identify users not using luajit :smiling_face_with_tear:

xD
Yea, it's a bit unfortunate, I also quite like using goto when appropriate, but neovim apparently also officially supports building with just lua, so we better get rid of that :/

After the day after, I found that this problem was fixed and neovim worked greate, even with lua5.1 (not luajit). So thanks a lot.


max_path_width option not available anymore

I used to limit the width of path buffer names like this before
vim.keymap.set("n", "<S-l>", function()
  local toggle = require("snipe").create_buffer_menu_toggler({
    -- Limit the width of path buffer names
    max_path_width = 1,
  })
  toggle()
end, { desc = "[P]Snipe" })

I'm not sure where to set this with the new keymap to open snipe
  "leath-dub/snipe.nvim",
  keys = {
    {
      "<S-l>",
      function()
        require("snipe").open_buffer_menu()
      end,
      desc = "Open Snipe buffer menu",
    },
  },

Did the name of that max_path_width option change or is it gone completely, how do I limit the path width?

Created a new issue, but found somoene else raised this in a closed issue here

This slipped my mind on the rewrite, ill have a way to restore this in a bit

Appreciate it very much!

Just an update on this, I have not gotten to it yet ( very busy in uni right now :( )

#41 What do people think about the feature I mention here. I think a lot of the "path shortening" and truncation is better handled by that proposed feature (not heavily tested yet)

#41 What do people think about the feature I mention here. I think a lot of the "path shortening" and truncation is better handled by that proposed feature (not heavily tested yet)

Personally I am fine with whatever the approach is, as long as I can implement it, I'm good. Not sure what others think

#41 What do people think about the feature I mention here. I think a lot of the "path shortening" and truncation is better handled by that proposed feature (not heavily tested yet)

Personally I am fine with whatever the approach is, as long as I can implement it, I'm good. Not sure what others think

well I will add this feature anyway but for now the alternative layout should hopefully solve most peoples issues with readability. Its near end of semester for me so i am quite busy with uni.


[a11y][web][infra] Adding Chrome OS bots to LUCI

After long investigations we agreed on an approach to test accessibility for Flutter for Web. Currently the approach only works in Google. We are planning to extend the testing to Flutter Engine and Flutter in the next quarters. Since a11y on web can break both on engine changes and on Framework changes it would be better if we can run these tests on both repos.
I want to discuss the possibility of adding ChromeOS bots to LUCI engine infra in the future quarters.

Chrome OS will be tricky as the OS hides most of the functionality and it requires users to be signed in. Can you please share the current test workflow? e.g. chrome os machines with a user signed in, x app installed, test loading a url and driving it with chrome driver.

/cc @derek-j-pitman

We had discussion with @godofredoc on this topic. Looks like we might be able to use Chrome OS GCE's.

Alternatively, the approach I've been going with has been using the linux-chromeos image:
https://chromium.googlesource.com/chromium/src/+/master/docs/chromeos_build_instructions.md
Runs the browser, as it would on Chrome OS, but with all the OS hooks stubbed out. No need to sign in with an account. It just works out of the box with ChromeDriver too, from my experience. You can also pass command-line flags to enable a11y features like high-contrast, screen magnification and ChromeVox (the screen reader).
All the same, Chrome would need builders in LUCI for this branch, just sharing what I know.

Obsolete


Add additional video player keyboard shortcuts

These are the shortcuts that I personally use a lot in VLC:

[ ] Skip forward 10 seconds (CMD ALT right)
[ ] Skip back 10 seconds (CMD ALT left)
[ ] Increase video speed (CMD +)
[ ] Decrease video speed (CMD -)

CMD or Ctrl? Should that depend of the platform?, darwin or fallback?
Apparently the event fired when a key is down has nice properties, such as e.ctrlKey and e.altKey -- not sure how to catch the CMD key.
This, combined with a change in the playbackRate property of <video> should do the last two tricks.
Pretty the same for the first two. This time, via
dispatch('playbackJump', state.video.currentTime + /* or -*/ 10)

@giuscri in electron you can do CmdOrCtrl (which we're doing all over the place for current shortcuts). I would assume command is equivalent to control on non-mac platforms for discussion purposes.

@giuscri Any interest in sending a PR to fix this issue?

Fixed by @Lurk in #275!


How to set front proxy to tor?

Hello,
I have to use a proxy to connect tor network, can not use this docker image directly .
I know how to set proxy to tor brower, but how do I set a proxy in ubuntu docker ?

closing because of inactivity


set zanox path extension

Zanox has alerted me to the fact that our url path was set up wrong. This PR fixes that. Whereas before the path in the template was set as, for example,
https://ad.zanox.com/abc and could not be changed, now the abc can be set dynamically by passing in a parameter along w/ the rest of them.
let me know if there's any questions/concerns!

looks good :+1:

thanks @salimhb !

:+1:

merge?

anyone against merging this? /cc @DonSchado @kangguru

oh, no. except, since this changes the API of the zanox tracker, we need to major version up.

I guess this has to be kept in mind when doing the next release then :)


ModuleNotFoundError: No module named 'agents.navigation.global_route_planner_dao'

Hello, I'm reaching out to inquire about the issue I'm encountering with the "bash run_generation_transfuser.sh" command. It appears to be unable to locate "agencies.navigation.global_route_planner_dao." Can you please provide guidance on how to resolve this issue and get the program functioning correctly? Your response would be greatly appreciated. Thank you!

请问楼主解决了吗


Assignment

What changes are you trying to make? (e.g. Adding or removing code, refactoring existing code, adding reports)
What did you learn from the changes you have made?
Was there another approach you were thinking about making? If so, what approach(es) were you thinking of?
Were there any challenges? If so, what issue(s) did you face? How did you overcome it?
How were these changes tested?
A reference to a related issue in your repository (if applicable)
Checklist

[ ] I can confirm that my changes are working as intended

This PR is from your branch to UofT-DSI's repo.
It looks like you have another PR that was made correctly (https://github.com/hassansaade/shell/pull/3). I've closed in the incorrect one, and your correct one will be graded sometime this week.

Thank you so much :)


⚠ ClamAV has degraded performance

In 5d0b1a8, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 84 ms

Resolved: ClamAV performance has improved in 6bf961f.


Options

add options app
migrate existing data

Coverage increased (+1.6%) to 79.067% when pulling ada9a4e17d741a75228063fac20a103f4411f28e on options into 16245e8bd535e62a8d13b43d61b984f5270014a6 on master.

Coverage increased (+1.6%) to 79.067% when pulling f03173112c50422b34528f999eaeb7228ba6d0e3 on options into 16245e8bd535e62a8d13b43d61b984f5270014a6 on master.


Update master version to 1.1.0.RC4.

Signed-off-by: Pan Li<EMAIL_ADDRESS>

will branch out for release.