Add expand/collapse option

Think about whether this should be built into the component, because it is also possible to implement it outside of it.

I'm trying to implement this outside the component and am running into trouble because nodes and links don't support two-way binding. Basically I'm updating properties on each node and link object to change visibility, but nothing happens because the UI never gets notified of the changes. Or am I going about this the wrong way?

@ericsvendsen don't know if you figured this out yet but make sure you use immutable data
e.g.
don't do
nodes.push(newNodeData);

do
nodes = [...nodes, newNodeData]

same for links.  this will make sure that the component updates with the OnPush strategy.

We can test the compound option inside dagre graph.

@marjan-georgiev ,Can I close this issue?
I think the expand collapse should come from the user aspect because ngx-graph is not handling the UI so different questions such as how to trigger the expand\collapse raise

@marjan-georgiev Closing this one, let me know if you want to open it.


Simplified mission descriptions

I've reduced the text on the mode select screen down to only a motivation block and rules.
I split the note text that was previously displayed into smaller fields, mmotivation, and mhint.
This doesn't yet use the text in mhint which still remains to be placed somewhere. So far discussion has suggested perhaps placing the mhint text in help screen for example.

Okay I pushed these discussed improvements. The only point where I wasn't really sure was

How about expressing "unspecified number and identity", but in a less verbose way?

I couldn't come up with a less verbose way so I left it at your suggestion of "unspecified number and identity"


Database loss of connection after extended period of inactivity.

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the SQLModel documentation, with the integrated search.
[X] I already searched in Google "How to X in SQLModel" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to SQLModel but to Pydantic.
[X] I already checked if it is not related to SQLModel but to SQLAlchemy.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
from typing import List, Optional

from fastapi import Depends, FastAPI, HTTPException, Query
from sqlmodel import Field, Session, SQLModel, create_engine, select

class TeamBase(SQLModel):
    name: str
    headquarters: str

class Team(TeamBase, table=True):
    id: Optional[int] = Field(default=None, primary_key=True)

class TeamCreate(TeamBase):
    pass

class TeamRead(TeamBase):
    id: int

db_url = "mysql://user:pass@localhost/db"

engine = create_engine(db_url)

def create_db_and_tables():
    SQLModel.metadata.create_all(engine)

def get_session():
    with Session(engine) as session:
        yield session

app = FastAPI()

@app.on_event("startup")
def on_startup():
    create_db_and_tables()

@app.post("/teams/", response_model=TeamRead)
def create_team(*, session: Session = Depends(get_session), team: TeamCreate):
    db_team = Team.from_orm(team)
    session.add(db_team)
    session.commit()
    session.refresh(db_team)
    return db_team

@app.get("/teams/", response_model=List[TeamRead])
def read_teams(
    *,
    session: Session = Depends(get_session),
    offset: int = 0,
    limit: int = Query(default=100, lte=100),
):
    teams = session.exec(select(Team).offset(offset).limit(limit)).all()
    return teams

Description
After an period of inactivity (have not yet isolated how long, roughly a few mins however) the following error will come up.
sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) (2013, 'Lost connection to MySQL server during query')
It appears to overcome this in SQLAlchemy, during engine creation you add pool_recycle. eg
engine  = create_engine("mysql://user:pass@localhost/db", pool_recycle=1800)

However if you do the same in SQLmodel the following error occurs.
ERROR:    Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 540, in lifespan
    async for item in self.lifespan_context(app):
  File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 481, in default_lifespan
    await self.startup()
  File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 518, in startup
    handler()
  File "/home/brentdreyer/Documents/automation/mnf_database_application/./app/main.py", line 24, in on_startup
    create_db_and_tables()
  File "/home/brentdreyer/Documents/automation/mnf_database_application/./app/db/session.py", line 8, in create_db_and_tables
    SQLModel.metadata.create_all(engine, pool_recycle=1800)
TypeError: create_all() got an unexpected keyword argument 'pool_recycle'

Operating System
Linux
Operating System Details
Fedora KDE 34
SQLModel Version
0.0.4
Python Version
Python 3.9.6
Additional Context
No response

Another option is using pool_pre_ping=True.  This is used in the older FastAPI/SQLalchemy demo.
engine = create_engine("mysql://user:pass@localhost/db", pool_pre_ping=True)
However the same issue occurs when you add it.
ERROR:    Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 540, in lifespan
    async for item in self.lifespan_context(app):
  File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 481, in default_lifespan
    await self.startup()
  File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 518, in startup
    handler()
  File "/home/brentdreyer/Documents/automation/mnf_database_application/./app/main.py", line 24, in on_startup
    create_db_and_tables()
  File "/home/brentdreyer/Documents/automation/mnf_database_application/./app/db/session.py", line 8, in create_db_and_tables
    SQLModel.metadata.create_all(engine, pool_pre_ping=True)
TypeError: create_all() got an unexpected keyword argument 'pool_pre_ping'

ERROR:    Application startup failed. Exiting.

Are you passing pool_pre_ping=True into SQLModel.metadata.create_all()? I'm trying to recreate your error from adding pool_pre_ping to the create_engine call (albeit I used sqlite) and I'm not getting the TypeError. I also don't get the error when connecting to a postgresql database with pool_pre_ping specified for create_engine, but I've not tried creating tables.

Yes, I am as passing pool_pre_ping=True into SQLModel.metadata.create_all() as I am passing engine object directly into create_all function.
db_url = "mysql://root:password@<IP_ADDRESS>:3307/db"

engine = create_engine(db_url, pool_pre_ping=True)

def create_db_and_tables():
    SQLModel.metadata.create_all(engine)

def get_session():
    with Session(engine) as session:
        yield session

Yah I don't know about SQLite or PostgreSQL, as my testing is being done with MariaDB. MariaDB is being ran in a docker container on the same host.
I have isolated the timeout that cases the sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) (2013, 'Lost connection to MySQL server during query') error to be about 10-15mins from the last query. This is inline with some of the default connection timeout of MariaDB. Which makes sense why the pool_pre_ping would re-establish the connection prior to the query to run on the DB.

You know what... I think I screwed up... I re-ran the code and now its working as expected with pool_pre_ping and I'm now no longer getting the same error... I'm willing to bet @rodg that you are correct and I put in pool_pre_ping in the wrong spot, and when I went to do my demo code I corrected my self with out realising.
I will test further and report back in a few hours.


scikit-v2 expand tests to include assertions for node.json

Expand tests to include assertions for node.json.

Hi @ancasarb ,
I'm getting some failing tests on my local scikit-v2 branch ... will resolve those later today and merge yours in.
Thanks!
M


feat(streaming): apply StateTable to hash join

What's changed and what's your intention?

apply StateTable to hash join
solve unflushed degree issue

Checklist

[x] I have written necessary docs and comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Refer to a related PR or issue link (optional)
#2794
#2795

It seems this PR consists of mutiple changes:

Update on mem_table.
Integrate StateTable
etc

Need to fix #2794 or test fails. To do that we must have update.


Upgrade HTTPClient to Version 4.5.5

The test failures do not seem to be related to the dependency upgrade (neither works with previous version).

@kevcodez looks good, thank you for the PR!


Add a share link for Mastodon

All is in the title, we have Facebook, Twitter in a share link of favorites, we'd like Mastodon :)
Thanks

Unfortunately it's broken on Mastodon's side. They used to have web protocol handlers but they removed it ultimately.
The replacement is not there yet : https://github.com/tootsuite/mastodon/issues/9373


Failed to request client certs with multiple addresses

1. Which version of Caddy are you using (caddy -version)?
Caddy v1.0.0 (h1:KI6RPGih2GFzWRPG8s9clKK28Ns4ZlVMKR/v7mxq6+c=)

2. What are you trying to do?

Enable client cert verification for multiple addresses.
3. What is your Caddyfile?
$ cat Caddyfile

(tls) {
  tls<EMAIL_ADDRESS>{
    dns cloudflare
    clients verify_if_given /etc/certs/ca/certs/ca.crt
  }
}

namunamu.com {
  import tls
}
namunamu.com/var/ {
  import tls
}

4.  Please paste any relevant HTTP request(s) here.

skipped
6. What did you expect to see?

Activating privacy features... done.

Serving HTTPS on port 443
https://namunamu.com
https://namunamu.com/var/

Serving HTTP on port 80
http://namunamu.com
http://namunamu.com/var/

7. What did you see instead (give full error messages and/or log)?

Activating privacy features... done.
incompatible TLS configurations for the same SNI name (namunamu.com) on the same listener: multiple hosts requiring client authentication ambiguously configured

8. Why is this a bug, and how do you think this should be fixed?

I think the tls config compatibility detector may have flaw in it. I'm not familiar with the code base/architecture so it's just my guess.
9. What are you doing to work around the problem in the meantime?

I use a subdomain instead of a path for the particular block. i.e. replace namunamu.com/var/ with var.namunamu.com. But it doesn't solve the problem.
10. Please link to any related issues, pull requests, and/or discussion.

This issue (https://github.com/mholt/caddy/issues/2251) may be related, but the situations we stuck with are different.
Bonus: What do you use Caddy for? Why did you choose Caddy?

Less boilerplate config than nginx - ideal for personal projects!

Hm, indeed, this is a weird edge case, because there's not really a great way to know that the two sites have the exact same TLS configuration, since their underlying CA pools are different pointers. We could do some deeper inspection but it would be somewhat complex I think. Still, if someone wants to find a simple and elegant solution, we'd welcome a PR!

Sorry I don't quite get it.
To me it looks from the source (https://github.com/mholt/caddy/blob/master/caddytls/config.go#L391) that at least one of ClientAuth or ClientCAs must have mismatched between the two sites. But it doesn't look like it's the case since they all have exactly the same tls config.

@shouya The pointers to the underlying CA pools are different, even if their contents are the same.

@mholt: I see. So ClientCerts is not really an array of strings as the paths to the CA certs but rather pointers to the CA pools (https://github.com/mholt/caddy/blob/master/caddytls/config.go#L238). In this case I can see it would be a bit tricky.
I'll see if I can fix it - but don't take it as a guarantee 😏

One option to consider would be to use the same cert pool for the same configuration, (i.e. don't call NewCertPool when the contents are the same as an existing one) but that might be more complex. Or not, if you find a clever/elegant way to do it. Or, just writing a Equal() function to compare two CertPools might be effective, if there's enough information exposed externally.

I submitted a pull request (#2648) to fix the problem. It basically just checked the file names instead of CA pool pointers.


do not assign another compute role to node with docker

do not assign another compute role to node with docker. Should fix failing docker builds

:+1: because jiri tested it

(tested manually, but I'm still waiting for my mkcloud run to finish)

:+1:


⚠ Spryr has degraded performance

In f354fcb, Spryr (https://spryr.com) experienced degraded performance:

HTTP code: 200
Response time: 5614 ms

Resolved: Spryr performance has improved in ea98626 after 7 minutes.


Only show "load more results" when there are more results to load

Problem

Even when we know the list of results for a search have been exhausted, we still show the "load more results". For example, visit /search/audio?q=galah&license=cc0. The result count is exactly 1. We know that this will fit into a single result page. We shouldn't show the "load more" button in this case. It sets up users for disappointment when loading more does nothing.
Description

Stop showing the button when the count of displayed results equals the result count.
Implementation

[ ] 🙋 I would be interested in implementing this feature.

This must be a fairly recent regression, as it doesn't occur in production:

Or staging, for that matter (currently on https://github.com/WordPress/openverse-frontend/commit/6c938c1c6bb7fca75b937749f8e14acddd69eb2c)


Add "equals" method to SafeMath

🎉 Description
Add "equals" to SafeMath. Currently mul / div / sub / add create a clean syntax. It would be nice to have an "equals" operation that could be added to require statements and return values.

[x] 📈 This is a feature request.

📝 Details
In detail this could be used for example like this inside methods:
require(x.equals(0));
return x.equals(0);

@rbval:
Maybe you got the inspiration for that from off-chain code that you have (e.g., Javascript assert module, which is often used in Truffle tests, etc).
In the on-chain side, such functionality is absolutely worthless.
The functions in SafeMath are wrappers for the Solidity language arithmetic operators, allowing the user to execute them "safely".
A wrapper for the Boolean operator == will not provide any additional functionality here, nor will it make the code look "cleaner" (if that's what you had in mind).

I think you are both right. One more poke: in the sub method there’s a requirement the first number to be greater than the second one. I believe this is due to not getting output of a negative number. Could that be applied here where we could demand both numbers to be greater than zero ( > 0 ) before comparing them as two integer overflowed numbers can be equal? I think the compiler throws warnings but it could be a good safe method? @nventuro @barakman


fix: fix useDebounceCallback isPending logic

I found a problem about the isPending response. It will return true after the first call.
I think it should return false after there is no pending call👀
Here is the demo: use the fixed hook, and the response may be correct
https://stackblitz.com/edit/vitejs-vite-kbwkhh?file=src%2FApp.tsx
Before:

After:

@simon-lammes is this ok for merge 👀

@PeterChen1997 I don't see any issues with the propsed changes. However, I don't have the permission to merge.

@PeterChen1997 I don't see any issues with the propsed changes. However, I don't have the permission to merge.

Pretty thx!
@alexeychikk please take a look if you have time ~

@PeterChen1997 I don't see any issues with the propsed changes. However, I don't have the permission to merge.

Pretty thx!
@alexeychikk please take a look if you have time ~

I'm not a contributor/maintainer. I just wanted to copy implementation in my project but found out it's poopy :)
Anyway, it looks okay now :)

@PeterChen1997 I don't see any issues with the propsed changes. However, I don't have the permission to merge.

Pretty thx!
@alexeychikk please take a look if you have time ~

I'm not a contributor/maintainer. I just wanted to copy implementation in my project but found out it's poopy :) Anyway, it looks okay now :)

wow thx too~
@juliencrn juliencrn please have a look ~


python312Packages.georss-qld-bushfire-alert-client: 0.7 -> 0.8

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 327120 run on x86_64-linux 1

5 packages built:

home-assistant-component-tests.qld_bushfire
python311Packages.georss-qld-bushfire-alert-client
python311Packages.georss-qld-bushfire-alert-client.dist
python312Packages.georss-qld-bushfire-alert-client
python312Packages.georss-qld-bushfire-alert-client.dist


Logging STdout filename discrepancy

Same app stdout pears to be in different formats
Stdout_pid_yyyyMdhms.log
Stdout_yyyyMMddhhmms.log
Maybe these format strings are not quite right but hompefully you get the idea
we change this  aspcoremodule <> aspcoremodulev2
And the output file format changes...  and then changes back.
How and why is this even possible.
There does not appear to be any config related to this anywhere  we can find and the doco implies that only the first format is correct pid first...
However ther only related info we could find was the accepted pull for ‘sortable filenames’ #130 in 2017? in the archived aspnetcoremodule repo
It would be nice to find info on this easier or if it is configurable info on how to do this.
Or if it is related to the V2 then where is the doco for this?!?

We changed the file name for the stdout log between AspNetCoreModule and AspNetCoreModuleV2. Are you hitting issues with the name change? We could potentially update the documentation here to mention that the log file format changed: https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/aspnet-core-module?view=aspnetcore-3.1#attributes-of-the-aspnetcore-element

Yes I would suggest that you do add a comment.
I’ll explain what happened here for info.
Log aggreagator was ingesting these files in emergency situations for warning and error only but we could up it for troubleshooting, however because this is not an ideal log sink and doesn’t have time stamps in the file we can only rely on approximate info and we’re using the filename stamp as referenc point for when the file was created as we found the OS file create date not accessible by the aggregator or was to be unreliable in some situations.
When we changed to the new v2 all our time stamps were out of Wack or the aggregator just dropped some files and it took us a long time to join the dots we revisited the doco page you refer to many times wondering if we had missed something subtle and it would have saved us a LOT of effort if there had been a note of this change that wasn’t buried in a change set in an archived repo

Apologies we didn't document the change. @guardrex want to make a quick doc change to mention that we have changed the file name for the log files to include the pid?

We already have it in ...
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/aspnet-core-module?view=aspnetcore-3.1#log-creation-and-redirection
... but I have the PID there after the date, so perhaps the format changed??? :ear:

Yes that’s the issue. All the doco has been updated to reflect the change from stdout-pod-date.log to stdout-date-pid .log...
As referenced in the doco even if you roll back to version 1... in the docs...
There should be a note somewhere easily accessible to all that says we changed the format in the new module

We can't version the ANCM in our topics easily. I don't think it's on the same release schedule as the framework (but they'll let me know if that's not correct). I'll update the doc to put the PID before the date.

@jkotalik I just got a 🎃 SCARE 👻 on your change tho ... IIRC, a dev in ancient .NET Core times asked to have the date first so that the files would sort better by file name. By placing the PID first, the sorting (by file name) isn't going to be so good. They have to use the file modified date at that point. Idk if that's a problem, but I seem to recall that fellow saying at the time that he wanted the file names to sort and that he either couldn't or didn't want to use the file's modified date.

I need to rereview the ANCM log file formats. I understand the concern though.

I found it ... https://github.com/aspnet/AspNetCoreModule/issues/130

Ah! ... It was in App Service, where I guess you don't even get an opportunity to sort by created/modified file dates. That makes sense.

:smile: I did that actually ... https://github.com/aspnet/AspNetCoreModule/pull/131

Just in case...
To be clear I’m not asking to change the code BACK from that change I was just suggesting a “NOTE: this changed from X To Y in acnm v2 so don’t freak out” to save others the heartache of “discovering” this ... TbH the new date is tonnes easier to parse as it’s fixed width on month day hour etc... just a shock...

I see. I was confused by the ask here. Just confirmed ...

... that nothing has changed since the ANCMv2 release.
The document is correct for ANCMv2 (for example, PID has been there for years and in the right position in the filename for v2). The guidance has been to use the latest version of the ANCM. We don't document different versions or when ANCM scenarios were rolled out over time.
Are we going to document ANCMv1? If so, I imagine that there's more (maybe even a lot more) content that we'll need to address in the topic. What we'd probably need to do is:

Determine the date the ANCMv2 came out.
Research back to the state of the topic at that point.
Contrast that version of the topic with today's content and add back missing ANCMv1 content. If the timing of the v2 release matches a framework major-minor release, version content using our normal versioning. Otherwise, it might be best to create a new ANCM topic for v1.
Understand what was changed for v1 since the release of v2, if anything, and make those updates (i.e., assume that the dev is using the latest release of ANCMv1).

I'll wait for your guidance on how you would like to proceed.

Are we going to document ANCMv1 at all? Isn't it unsupported at this point?

There has been talk of backporting ANCMv2 to 2.1 s.t. we can remove ANCMv1 entirely. @shirhatti this is probably a better question for you.

Well... purely selfishly I would support a "this changed" document...
TBH once we figured out that this "surprise" was related to ANCM 1/2 we went searching for "whats new" documents on this and all we found was "how to upgrade" which didn't include much detail beyond "change this string in web.config" and "see this doco" (the doco your reference above, which is the mostly same for ASPNET CORE 1..to..3 (on this page at least) you have some more features... but not much about what actually changed...
IF there are blogs or social/forum chatter, we couldn't find anything substantial.
I know "time marches onwards" and 2017 "was so long ago", but we are using a number of tools and libraries that don't work/have bugs/work weirdly between v1 and 2 and so we are sticking with some of these AND using v1 for specific reasons, so it would be nice to have this info "somewhere"...
Having said that I do understand the plight and expense of documentation, so I guess its up to you and how many others you think this will help...


Extend SentryRequestBody.request with query_string field

This change can be useful when we divide url for two parts - url and query params (or search params)
PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows Conventional Commits
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[x] Refactoring (no functional changes, no api changes)
[ ] Other... Please describe:

What is the current behavior?

Closes #
What is the new behavior?
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

@sevaru fyi


Added Vertex Cover Problem

Added the minimum vertex cover problem for binary trees. Please Review...

Added the link. Please Review.


mark all cells in a nb with a certain flag

hello, is there a way to mark all cells with a flag so that conditional testing can be used?
In nbdev1, we had # all_slow, for v2, I'm aware of skip_exec and skip_showdoc. A follow up question in that case would be can the values for these flags be changed when we use nbdev_test?
For now, I am manually adding test flags to each and every cell. Is there an alternative to this? @seeM @hamelsmu ?

Deven, it should work the same you need to supply the flags you want to use to tst_flags in settings.ini like this.
Now those flags will be skipped.  If you look at nbdev_test -h it will describe how you can run those flags.  HTH.
If that works for you please close the issue!

I am a bit confused by this -

For now, I am manually adding test flags to each and every cell. Is there an alternative to this?

Are you saying you want to apply the test flag to an entire notebook?

Are you saying you want to apply the test flag to an entire notebook?

Yes
For instance, I have a nb which I only want to run in colab.

There seems to be multiple ways from the docs
Can you use the skip_file_glob argument?

Ah, that's a clever hack. In that case, I'll just have to rename my nbs accordingly.
My previous workflow was something like this,
nbdev_test --flags colab # to test nbs in developed and executed in colab
nbdev_test --flags local # to test nbs in developed and executed locally on my system

@hamelsmu can we reopen this issue, I realized why having this feature was handy. Marking all cells with a certain flag still runs showdoc, without the all_slow flag, I would need to manually add the slow flag to all the cells.


Typo: Audit Manger => Audit Manager

Checklist

[ ] Issue(s) linked

It'll probably be a good idea to squash the commits before merging.

@pdecat thanks you for raising this correction PR.


Watched items (show+episodes) not removed from the API

Hello,
Some users are telling me that removed shows keeps coming back in the app.
The shows are removed from the website but  the Api is returning it anyway (even a few days later).
What can I do ?

API results from calling https://api.trakt.tv/sync/watched/shows :
{
    "plays": 9,
    "last_watched_at": "2021-04-01T00:54:55.000Z",
    "last_updated_at": "2021-04-01T00:54:55.000Z",
    "reset_at": null,
    "show": {
      "title": "WandaVision",
      "year": 2021,
      "ids": {
        "trakt": 146518,
        "slug": "wandavision",
        "tvdb": 362392,
        "imdb": "tt9140560",
        "tmdb": 85271,
        "tvrage": null
      }
    },
    "seasons": [
      {
        "number": 1,
        "episodes": [
          {
            "number": 1,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 2,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 3,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 4,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 5,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 6,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 7,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 8,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          },
          {
            "number": 9,
            "plays": 1,
            "last_watched_at": "2021-04-01T00:54:55.000Z"
          }
        ]
      }
    ]
  }

The user should check their history page on the Trakt website. It’s possible the UI indicates the item is unmatched, but the history page is the only reliable way to make sure. Sometimes the web browser needs to have the data refreshed, which the user can do at https://trakt.tv/settings/data


Remove deprecated Text-attributes

Solve #2152 (Removing deprecated Text-attributes).
Log of action:
updateModelicaAnnotations("Modelica",changeLinePattern=false,orderBitmapExtent=false, removeTextDeprecated=true)
LogOfAction.txt
(Some other lines are changed as well, primarily to not have the annotation on a separate line. And all line endings are messed up.)

Here another tip, you can simply attach files by dragging them into the text field.

@dietmarw

Here another tip, you can simply attach files by dragging them into the text field.

I don't see exactly what you mean - especially how it would be an improvement.
I dragged the files into the big field in the middle - but the problems were two-fold: bad line endings due to something with the upload and that I had to do it once per directory (the file-names are not necessarily unique).
(Anyway I just experimenting with the different variants of editing, and will next time see if it works better by just pushing locally to a branch.)

I was talking about the log file only you pasted here.

Ah, I see - as far as I recall it was just the log from the command - not a log-file; so I just copy-pasted it.

Yes and pasting the whole thing here made the ticket/pull-request hard to read. That's why one should normally either paste them as gists or simply attach them as file. It's just an improvement on readability really.

@dietmarw
I now understand your point: the texts for issues/pull-request should be kept to a few lines - and any additional information should be added as external file(s); because that is more usable with the GitHub web-interface (similarly editing Modelica files in the browser as I did for #2178 is also awkward).
However, such guidelines should be described directly.

github help describes what files can be attached to issues or pull requests and how:
https://help.github.com/articles/file-attachments-on-issues-and-pull-requests/
One important differrence is that these files will NOT become part of the repository and its git history,
so attaching png and docx to issues is fine, commiting them to the repository will bloat the history.
Or for text files, using a gist as Dietmar suggested is also good.


Add Ascii Art Python Script

Converts Image To String Of Ascii Character Art.
Reference Issue: #40
About the PR:

This PR deals with the conversion of image to ascii art using PIL.
The image to be converted is taken from the local path and then the script works on converting it into an ascii string of characters.

Process:

The image path is entered by the user.
Image is resized according to new width.
Each pixel of image is converted to grayscale
Ascii characters replace each pixel into a string of characters
Final output gets stored in a txt file and also gets displayed on the terminal window.

Final Output Of The Kolkata Image:

Beloved Cheems Ascii:

Adding Fresh Pull Request With Updated Changes As Requested During Review

Adding Fresh Pull Request With Updated Changes As Requested During Review


Adding CUTEst.jl to the optimization benchmarks

This PR leverages the integration of CUTEst.jl into the SciML umbrella to add all problems in the CUTEst collection to a set of optimization benchmarks. Resolves #935
To complete this PR, the building infrastructure will have to be changed to manually install gfortran as required by CUTEst.jl.

Is gfortran still required after https://github.com/JuliaSmoothOptimizers/CUTEst.jl/commit/df91b3c4641bae6e62fb44d0af9b8791c9fa802a ?
Is there anything not in the jll? Maybe @staticfloat can help here.

I am not sure to be honest, if the jll makes gfortran available system-wide, it should probably work. As far as I know, CUTEst.jl performs a simple test to verify if gfortran exists in the system by calling it in a shell and checking for errors

We ship libgfortran with Julia, and make it available for libraries and executables in JLLs, so if that's all you need, you should be good to go.

What exactly is asking/calling for gfortran @abelsiqueira?

Sifdecode, to decode the SIF file, which gets called by CUTEstModel. Things might have changed recently. Cc. @amontoison @dpo @tmigot

@alonsoC1s I'm working on a new release (v0.14.0) with many modifications (support of Windows as well as single and quadruple precision).
We also changed a  lot of things with Nick Gould in CUTEst and SIFDecode.
gfortran is needed because the test problems are based on SIF files and the SIF decoder generates Fortran files to be compiled.
On Windows I added an artifactact in Artifacts.toml to provide gfortran.exe but I expect the Linuw and Mac users to install it.
We don't precompile the problems to support problems of variable size. We also have 1500 problems so it's 4500 libraries if we want to precompile everything (with fixed size).

On Windows I added an artifactact in Artifacts.toml to provide gfortran.exe but I expect the Linuw and Mac users to install it.

That's very non-standard? Seems odd to bundle an artifact on some systems but not others. Also, it doesn't make much sense given @staticfloat's comment that it's already bundled with Julia?

You didn't understand the message of @staticfloat. libgfortran is shiped with Julia not gfortran.
A library is different than a compiler. 😏
I did a copy of the Artifacts.toml available in PackageCompiler.jl, that only install the compilers on Windows.
I don't know if we have available artifacts of compilers (and not cross-compilers) available thanks to BinaryBuilder / BinaryBuilderBase for all platforms (Mac, linux, FreeBSD).
@staticfloat Do you have the answer?
Binaries and libaries of SIFDecode and CUTEst are cross-compiled on all platforms with Yggdrasil.

I don't know if we have available artifacts of compilers (and not cross-compilers) available thanks to BinaryBuilder / BinaryBuilderBase for all platforms (Mac, linux, FreeBSD).

Ask me again in ~2 months, I should have implemented it in BinaryBuilderToolchains.jl by then.  Until then, what you're doing here is fine.

So do we build add gfortran as a buildkite dep in the meantime?

You should be able to either add it to the rootfs image being used, or just apt update && apt install -y gfortran.

You need to bump the manifest and Symbolics version. Since gfortran is now installed, this should be finishable.

Yep, I just saw the railed build. I'll fix the manifest, try again, and once I can see some preliminary results I can write something about them and write the rest of the benchmarks

Error: InitError: gfortran is not installed. Please install it and try agai
n.
during initialization of module CUTEst

@thazhemadam can you take a second look at this?

Did the benchmark get stuck or does it just take really really long?

Maybe split this into a few different scripts for the major groups? Seems like it's running fine though so it's just a bit of file management.

Sure, I'll start splitting into files. Hopefully that resolves the stuck chunk or at least makes it easier to see where it's getting stuck

It looks like it's stalling in the first solve. Every solve really. @alonsoC1s was it doing this locally for HIER13?

I only did some very limited testing locally, basically confirming I didn't have any runtime errors. I did try solving manually some problems like Rosenbrock and it worked as expected, as long as the models were finalized as I took care of doing in the testing loop

In the process of introducing some filtering to reduce the number of benchmarks so that the CI job doesn't stall I think I might have found some problems that fail silently. For instance, I identified that one of the problems that stall, even at 2 variables, is ZECEVIC3.
`julia> zecevic3 = CUTEstModel("zecevic3")
  Problem name: zecevic3
   All variables: ████████████████████ 2      All constraints: ████████████████████ 2
            free: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0                 free: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0
           lower: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0                lower: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0
           upper: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0                upper: ████████████████████ 2
         low/upp: ████████████████████ 2              low/upp: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0
           fixed: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0                fixed: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0
          infeas: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0               infeas: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0
            nnzh: (  0.00% sparsity)   3               linear: ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ 0
                                                    nonlinear: ████████████████████ 2
                                                         nnzj: (  0.00% sparsity)   4

Which produces this error when optimized:
julia> prob = OptimizationNLPModels.OptimizationProblem(zecevic3, Optimization.AutoForwardDiff())
OptimizationProblem. In-place: true
u0: 2-element Vector{Float64}:
  0.1
 -0.1

julia> solve(prob, MOI.OptimizerWithAttributes(Ipopt.Optimizer); maxiters = 1e6)
┌ Warning: common maxiters argument is currently not used by Feasibility
│
│ Subject to:
│
│ Nonlinear
│ . Set number of iterations via optimizer specific keyword arguments.
└ @ OptimizationMOI ~/.julia/packages/OptimizationMOI/LnXYV/src/OptimizationMOI.jl:86

******************************************************************************
This program contains Ipopt, a library for large-scale nonlinear optimization.
 Ipopt is released as open source code under the Eclipse Public License (EPL).
         For more information visit https://github.com/coin-or/Ipopt
******************************************************************************

This is Ipopt version 3.14.16, running with linear solver MUMPS 5.7.3.

Number of nonzeros in equality constraint Jacobian...:        0
Number of nonzeros in inequality constraint Jacobian.:        4
Number of nonzeros in Lagrangian Hessian.............:        3

Total number of variables............................:        2
                     variables with only lower bounds:        0
                variables with lower and upper bounds:        2
                     variables with only upper bounds:        0
Total number of equality constraints.................:        0
Total number of inequality constraints...............:        2
        inequality constraints with only lower bounds:        0
   inequality constraints with lower and upper bounds:        0
        inequality constraints with only upper bounds:        2

ERROR: MethodError: no method matching Float64(::ForwardDiff.Dual{ForwardDiff.Tag{OptimizationForwardDiffExt.var"#50#68"{…}, Float64}, ForwardDiff.Dual{ForwardDiff.Tag{…}, Float64, 2}, 2})

The Ipopt output was silenced on the original weave script

Interesting. But why would that cause it to stall?


use build flag to set version

the version is currently hardcoded in https://github.com/compose/transporter/blob/master/pkg/transporter/pipeline.go#L12-L15 but this should be moved elsewhere and set when builds get published with a flag
-ldflags="-X main.version=$VERSION"

will address #194

fixed via #239


Suppress  current task being outputted in terminal before it runs

Is it possible to stop the output of the current task:
for example if I run my npm script "production"
"production": "concurrently -r -s -g --silent --no-color \"npm run -s build:css\" \"npm run -s build:woocommerce\" \"npm run -s build:js\"",
I get the out put of:
><EMAIL_ADDRESS>production
> concurrently -r -s -g --silent --no-color "npm run -s build:css" "npm run -s build:woocommerce" "npm run -s build:js"

What's even more odd if I have a postproduction script it prints out the task too:
><EMAIL_ADDRESS>postproduction
> echo "\033[0;32m \xE2\x9C\x94 Production assets built \033[0m"

 ✔ Production assets built

Closing as this is unrelated to concurrently but to npm itself.
You might want to try out the following solution: https://stackoverflow.com/a/75581185/20504834

Yup, apologies @paescuj I discovered this through some more testing that its npm itself I needed to deal with - it through me as running the commands directly outside of concurrently didn't show the same output.
I've gone with adding log level to .npmrc - thanks for your response.


\Cart::restore('username') does not restore data

I have stored the cart content in table using Below code
    \Cart::store('username');

Now I want to get data from the db and show to the user
I ran
   \Cart::restore('username');

and then:
   dd(\Cart::content());

Nothing is shown.
I am using laravel 8.

My problem is solved.
I have changed the following in config/session.php file:
'same_site' => 'lax',
To the below value:
'same_site' => null,

Now session are persistent even after return URL from payment gateway!

My problem is solved.
I have changed the following in config/session.php file:
'same_site' => 'lax',
To the below value:
'same_site' => null,

Now session are persistent even after return URL from payment gateway!

hi, if you are in iran you can pay any forign payments via our web site.
سایت EPAY 724 | خدمات ارزی بین الملل (https://bit.ly/3uieWwW) (سایت EPAY 724 | خدمات ارزی بین الملل (https://epay724.com))
online payments for application fees, buying gift cards, international exams fees are easier than ever ….

Same problem for me.

I have the same problem in laravel 5.8


M3-5191: Use React Query for Profile and Grants

Description

Uses React Query for all profile related API fetching and store
This PR required a lot of changes in general

I refactored some class components to functional components where I saw it would not be too difficult
This PR can have a big effect on users that are restricted and have limited grants

How to test

Test everything in Cloud Manager ☁
Test feature flag user identification

Somes files I deemed sketchy after updating (please make sure they still work as expected):

TwoFactor.tsx
CreateImageTab.tsx
LongviewDetail.tsx
RestoreToLinodeDrawer.tsx
LishSettings.tsx
Settings.tsx
UserDetail.tsx
userSSHKeyHOC.ts
StackScriptCreate.tsx

There were a lot of issues, but I think I finally merged develop in correctly after the 5th try :crossed_fingers:. This should be ready for review now

ImagesDrawer.tsx needs some attention. Unable to edit a description of an Image.

@HanaXu @DevDW  Addressed yall's feedback. I definitely would like to work on a follow up PR down the road that improves consistency for restricted users / users with only some grants. For now, trying to make sure this PR has no regressions in comparison to prod.


Update isConnectedQuery for Threat Intelligence Upload Indicators API connector

Required items, please complete
Change(s):

Updated isConnectedQuery for ThreatIntelligenceUploadIndicatorsAPI  data connector

Reason for Change(s):

The current query results in the 'Status' being 'Connected' for this data connector when another connector is ingesting data. This has caused confusion among customers and they are not able to delete or disconnect the connector either.

Version Updated:

Yes

Testing Completed:

Need Help

Checked that the validations are passing and have addressed any issues that are present:

Need Help

Hello @ni-bhandari, Can you please try to resolve branch conflicts


Versioning conventions

Follow some versioning convention, at least at the high level. See for example https://semver.org/
Change the current version to 0.17.1 or something. Increase versions according to some rules. For example:
major.minor.patch:

Major version numbers change whenever there is some significant change being introduced. For example, a backward-incompatible change to a software package.

Minor version numbers change when a new, minor feature is introduced.

Patch is usually for small bug-fixes.

Also see: https://github.com/marketplace/actions/git-semantic-version


⚠ Turnos 24x7 has degraded performance

In 174d6fc, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 922 ms

Resolved: Turnos 24x7 performance has improved in 14858aa.


Predictive maintenance - implementation details for new services

Please could you update the design in the architecture documentation here to include new services like Time Series Insights, Anomaly Detector, and Metrics Advisor?
It would be very useful to see exactly where these would fit into a predictive maintenance scenario.
Thanks

Thanks for bringing this to our attention. Your feedback has been shared with the content owner for further review.

Thank you @DJPaulo, I have captured this as an architecture request for my team.


Using customised issue template for the repository

https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository
While filing bugs/RFE if we have customised template it will be easier for Getting all the required information.
This will be helpful for identifying root cause and saves time for getting required information for debugging

@vikasmulaje Thanks for filing this issue! I'll work on getting this adding ASAP.
/assign
/kind feature


Unable to install @rhds/elements

Discussed in https://github.com/orgs/RedHat-UX/discussions/378

Originally posted by eyevana June  9, 2022
Hey, all! I'm one of the devs on the Red Hat Ecosystem Catalog team and I'm having trouble installing the package for . I'm using node 16 but I see the following error when trying to install it with npm install @rhds/elements:
npm ERR! code 127
npm ERR! path /Users/ivrodrig/Documents/projects/ecosystem-catalog/node_modules/@rhds/elements
npm ERR! command failed
npm ERR! command sh -c run-s postinstall:**
npm ERR! sh: run-s: command not found
Help! Ayuda! Aide-moi!! 😸
Reproduction
mkdir tmp
cd tmp
nvm install v18
nvm use v18
npm init -y
npm i @rhds/elements

see above error

Should be solved now


Choose your party modal does not match the mockup

Expected behavior
After I search for a party and results are displayed, it should look like this per the mockup:

Actual behavior
party results look like this:

Steps to reproduce behavior
Click the find a party modal, and view results. Click a party to select.

https://razoyo.atlassian.net/browse/TST-119

7-28  - Fixed.


scripting

Postman has the possibility to add scripts (in JavaScript) for requests. This would be a nice to have for this application too. I've got some very early stage experimental script running working, but without integration yet (binding native functions, variables, etc.).
Keep an eye on that.

Tasks

[x] C++ support using cling, because why not?
[ ] JavaScript support

C++

[x] static value binding
[ ] read/write value binding
[ ] function binding
[ ] function binding with arguments

JavaScript
still deciding on an engine


Hi,do you know how to load the dataset from local file now?

          Hi, if I want to load the dataset from local file, then how to specify the configuration name?

Originally posted by @WHU-gentle in https://github.com/huggingface/datasets/issues/2976#issuecomment-1333455222

@Gera001
Loading Dataset from Local Files Using 🤗Hugging Face.
To load a dataset from local files using the Hugging Face datasets library, you can use the load_dataset function.
from datasets import load_dataset
dataset = load_dataset('csv', data_files={'train': 'path/to/train.csv',
                                         'test': 'path/to/test.csv'})

Reference to HF Datasets docs for loading from local.

like this: from datasets import load_from_disk
dataset = load_from_disk(data_path)

@ge00009

like this: from datasets import load_from_disk dataset = load_from_disk(data_path)

Loads a dataset that was previously saved using save_to_disk().


chore: bdd-nh-1587474925 to 0.0.1

chore: Promote bdd-nh-1587474925 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Can't find security groups

Hi guys!
I'm trying to use tiopatinhas on my ASG but it returns an error with security groups:
[root:~/tiopatinhas/tp #]python tp.py -g ASG-nginx-images-prod-20160316 -v
2016-04-28 23:38:28,338 ASG-nginx-images-prod-20160316 INFO Starting Tio Patinhas
2016-04-28 23:38:28,339 ASG-nginx-images-prod-20160316 DEBUG Refreshing state...
2016-04-28 23:38:30,432 ASG-nginx-images-prod-20160316 DEBUG Current candidate for target instances: 1.0
2016-04-28 23:38:30,432 ASG-nginx-images-prod-20160316 DEBUG >> guess_target(): changed target from 0 to 1.0
2016-04-28 23:38:30,432 ASG-nginx-images-prod-20160316 INFO >> refresh(): autoscale instance count changed from None to 1
2016-04-28 23:38:30,432 ASG-nginx-images-prod-20160316 DEBUG *** Current state:
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Managed by Autoscale: 1
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Managed by TP: 0
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Target: 1.0
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Live:
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Emergency:
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG LB Unhealthy:
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Checking if needs to launch emergency instances
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Checking if there's any emergency instance to replace
2016-04-28 23:38:30,433 ASG-nginx-images-prod-20160316 DEBUG Checking if it needs to buy spot instances
2016-04-28 23:38:30,488 boto ERROR 400 Bad Request
2016-04-28 23:38:30,488 boto ERROR <?xml version="1.0" encoding="UTF-8"?>
<Response><Errors><Error>InvalidGroup.NotFound<Message>The security group 'sg-270fa542' does not exist</Message></Error></Errors><RequestID>718987da-03bd-4753-9ed7-d3dc8072667b</RequestID></Response>
2016-04-28 23:38:30,488 main ERROR EC2ResponseError: 400 Bad Request
<?xml version="1.0" encoding="UTF-8"?>
<Response><Errors><Error>InvalidGroup.NotFound<Message>The security group 'sg-270fa542' does not exist</Message></Error></Errors><RequestID>718987da-03bd-4753-9ed7-d3dc8072667b</RequestID></Response>
Traceback (most recent call last):
  File "tp.py", line 425, in run
    self.save_money()
  File "tp.py", line 452, in save_money
    self.bid()
  File "tp.py", line 210, in bid
    monitoring_enabled = True)
  File "/usr/lib/python2.7/dist-packages/boto/ec2/connection.py", line 1638, in request_spot_instances
    verb='POST')
  File "/usr/lib/python2.7/dist-packages/boto/connection.py", line 1186, in get_list
    raise self.ResponseError(response.status, response.reason, body)

Here's my tp.conf file:
{
    "max_price": {
        "t2.micro": "0.200"
    },
    "spot_type": "t2.micro",
    "emergency_type": "t2.micro",
    "max_candidates": 7,
    "instance_name": "thumbor-teste",
    "region": "sa-east-1",
    "placement":  "sa-east-1a",
    "instance_profile_name": "role_baseline",
    "health_check_path": "ping",
    "lower_cpu": 5,
    "upper_cpu": 19,
    "lower_threshold": 1,
    "upper_threshold": 1,
    "tags": {"VREnv":"QA"},
    "user_data_file": null
}

Is there anything wrong in my configuration?
Thanks!

@wilsonhipolito Hi there! Are you using VPC or EC2-Classic?

Hi @mwconceicao !
I'm using VPC

I'll be merging the PR #8 that adds the VPC support to it :+1:

Nice! thanks, @mwconceicao ! ❤

@wilsonhipolito PR #8 merged. Check it out please.

@mwconceicao It works! 👍
I'll make further tests, but there's no more errors about the security groups. Thanks!


Possible false positive with Dictionary<K,V> Values property

When you do read only access to a Dictionary<K,V> Enumerator in two tasks a Race condition is issued, even though they are Read-Read operations. This also happens for properties like Count.
Example to replicate false positive:
Dictionary<string, string> cities = new Dictionary<string, string>() {
    { "new york", "usa"},
    { "munich", "germany"},
    { "lisbon", "portugal"},
};

//use this in the foreach to see the warning disappear
var other = cities.Values;

bool f = false;
bool t = true;
System.Threading.Tasks.Parallel.Invoke(
    () =>
    {
        foreach (var c in cities.Values)
            if (c == "usa")
                f = true;
    },
    () =>
    {
        foreach (var c in cities.Values)
            if (c == "germany")
                t = false;
    }
    );
Console.WriteLine($"{t} , {f}");

If you transform the collection into a IEnumerable first outside the thread (see  other  variable in the example) and use that instead then the warning goes away. Obtaining the iterator should be a thread safe operation for IDictionary. Some operations seem to be correctly marked as read only/thread safe while others with the same semantics aren't.
Warning issued:
Warning	ParallelChecker	Issue: #0 Race condition on System.Collections.Generic.Dictionary<string, string>
  caused by Thread-unsafe call at "cities.Values" in Program.cs line 20
    caused by thread or task at "() => { foreach (var c in cities..." in Program.cs line 18
      caused by call ConsoleConcurrent.Program.Main(string[])
        caused by initial thread at "Main" in Program.cs line 5
  caused by Thread-unsafe call at "cities.Values" in Program.cs line 26
    caused by thread or task at "() => { foreach (var c in cities..." in Program.cs line 24
      caused by call ConsoleConcurrent.Program.Main(string[])
        caused by initial thread at "Main" in Program.cs line 5

Thank you very much for this report. The checker's precision can be improved here in two aspects:

Read-only operations can be safely done as long as there is no modifying operation (according to the specification of Dictionary class). Currently, all concurrent operations on instances of generally thread-unsafe classes like Dictionary are treated as a potential issue.
The copying of iterator references (as described in your example) should lead to the same analysis results.
I will take these two issues on the list to be fixed with the next release.

I'm also seeing a false positive when accessing dictionary values behind a lock.
`
...
lock(someObj)
{
SomeFunc(key);
}
...
`
private void SomeFunc(TKey key) {   if(someDict.ContainsKey(key)) //ParallelChecker marks this as a race condition on the value   {     //do stuff   } }
I assume that's due to the lock being external to SomeFunc, regardless of it only being called from within the lock?


Fix a initiate chats

Why are these changes needed?
TLDR. The bug is at https://github.com/microsoft/autogen/blob/main/autogen/agentchat/chat.py#L214
When I used await inside an '''async with condition block'' that's controlling access to a shared resource with an asyncio.Condition, the coroutine will pause at the await and yield control back to the event loop. This does not block the entire program; rather, it allows other coroutines to run while this one is waiting.
However, the async with block will hold onto the condition's lock until the block is exited, which means other coroutines that want to acquire the condition (for example, to notify waiting coroutines that something has happened) will have to wait until the lock is released.
To fix the bug, the new approach is to use asyncio.Task to create a Task per chat. Chat Tasks will be executed once it is created. In detail,
await sender.a_initiate_chat(**chat_info) is wrapped inside Task.
None dependent chats could execute concurrently.
"await" the prerequisite chat results before create the new chat when necessary.

Related issue number

Checks

[ ] I've included any doc changes needed for https://microsoft.github.io/autogen/. See https://microsoft.github.io/autogen/docs/Contribute#documentation to build and test documentation locally.
[ ] I've added tests (if relevant) corresponding to the changes introduced in this PR.
[ ] I've made sure all auto checks have passed.

Codecov Report
Attention: Patch coverage is 16.66667% with 40 lines in your changes are missing coverage. Please review.

Project coverage is 45.60%. Comparing base (0e1a4b9) to head (06324bd).
Report is 5 commits behind head on main.

Files
Patch %
Lines

autogen/agentchat/chat.py
16.66%
39 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1938      +/-   ##
==========================================
+ Coverage   37.09%   45.60%   +8.51%
==========================================
  Files          64       64
  Lines        6836     7777     +941
  Branches     1502     2051     +549
==========================================
+ Hits         2536     3547    +1011
+ Misses       4083     3908     -175
- Partials      217      322     +105

Flag
Coverage Δ

unittests
45.39% <16.66%> (+8.29%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

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

test/agentchat/test_function_call.py::test_a_execute_function
/home/runner/work/autogen/autogen/test/agentchat/test_function_call.py:156: RuntimeWarning: coroutine 'test_a_execute_function..add_num' was never awaited
assert user.execute_function(func_call=correct_args)1"content"*** != "15"
This may be a bug in the existing test.
@yenif @davorrunje for awareness.


Use ViewTreeLifecycleOwner to reliably get the lifecycle owner for databinding.

When is this commit being merged?

Good question! The reason is it's been sitting here is I had hoped data binding would start using this method internally itself which would simplify the implementation. Haven't checked that that's the case or is on the roadmap.

Could you consider merging, and in a later stage re-evaluate the need for it?

Could you consider merging, and in a later stage re-evaluate the need for it? @evant


Revised customizers

This patch replaces the current customizer system with simple classes with annotations to denote the methods to use for customizing.
This pull may require additional documentation or additional work to fit with the style of the module.  The previous system was not documented.

The code is much more pythonic, thanks. Can you sort out the problem with Python2, then we are ready to merge?

Yeah.  I will sort it out.  It appears to be a difference in how the name binding works between python2 and python3.
In python 3, this is acceptable.
class _JList(object):
    def __jclass_init__(cls):
        # Replace addAll method with the one from _JList
        type.__setattr__(cls, 'addAll', _JList.addAll)
        type.__setattr__(cls, 'removeAll', _JList.removeAll)

in python2 it wants the __jclass_init__ to read as
class _JList(object):
    def __jclass_init__(cls):
        # Replace addAll method with the one from _JList
        type.__setattr__(cls, 'addAll', _JList.__dict__['addAll'])
        type.__setattr__(cls, 'removeAll', _JList.__dict__['removeAll'])

I am thinking that this level of monkey patching is way too much, so perhaps I should have it use a helper class.
class _JList(object):
    # Helper is a proxy for getting, setting, or replacing items in the class dictionary.
    # it can't have map syntax as it needs to do cross version dictionary patching.
    def __jclass_init__(cls, helper):
        # Replace addAll and removeAll method with the one from _JList
        helper.copy(JList, ('addAll', 'removeAll'))

This eliminates the need to getting the syntax of the setattr right and lets us perform required checks so we can prevent problems.  But it doesn't seem very pythonic.  Any suggestions?
The __jclass_init__ is supposed to be the post loader that gets called after the class is created to monkey patch out java methods that are problematic.  Maybe it should be __jclass_new__?

can't you avoid using the internal dict by directly patching the method in the class?
class _JList(object):
    def __jclass_init__(cls):
        # Replace addAll method with the one from _JList
        cls.addAll = JList.addAll

I like the proxy solution. My proposal does not work.

I wished your solution would work.  However, there are two parts that prevent it.   JClass structures are closed to prevent accidentally attempting to set field or method as a user.  I have been burned too many times by code that looks like this...
Java code:
public MyClass
{
   public int someGlobal = 1;
}

Python code:
MyClass = JClass('MyClass')
MyClass.someGloble = 2

As java classes are closed and accessing or setting a variable which does not exist it should be an error in jpype.  Further this discourages setting something on an instance which would technically work, but as passing an object to and from java returns a new java object proxy, any extra data would be lost as it only exists on the original wrapper.  Thus we have overridden the __getattribute__ and __setattr__ on all jpype classes to render them closed to modifications.
So setting something on the closed class requires an extraordinary action like type.__setattr__.
The second issue is that python2 and python3 mean different things when the call v=Foo.bar.  In python2 it returns a method which is bound the to the class Foo.  Thus it is unless to put into the dictionary of another class.  In python 3, it returns a function which can be used anywhere.
Having rendered the classes closed and then having to deal with syntax differences between versions the only clean solution would be the proxy.
I will try to come up with a reasonable syntax, but please feel free to make suggestions on the syntax when I push it in.
So here are some options to consider.
Option 1) Use the jpype namespace to put helper functions for any class patching.
@JImplementationFor('java.util.List')
class JList(object):
   def __jclass_init__(cls):
        jpype.JClassCopyMethods(cls, JList, ('addAll', 'removeAll))

I don't like this as it pollutes the namespace badly.  It won't be clear where the functions can be used and for what purpose.
Option 2) Hand the user a proxy class with magically monkey patching powers.
@JImplementationFor('java.util.List')
class JList(object):
   def __jclass_init__(cls, dproxy):
        dproxy.copy(JList, ('addAll', 'removeAll))

This at least contains where we can do the modifications.  And we have the ability to change the implementation of the proxy if we need to have compatibility with different versions or implementation of python.  But then we have document the capabilities for an object which is pretty well hidden.
Option 3) Limit the scope of the power.  Instead of giving the user an all powerful monkey patching handle, I could limit it to do just a few specific actions which are keyed off of global fields.   This would be much like module exports.
@JImplementationFor('java.util.List')
class JList(object):
   # these methods will hide all java implementations for this class and all subclasses.
   __jclass_overrides__ = ('addAll', 'removeAll')

This reduces what we can do to the class to a very limited and controlled set of actions.  We can always grant them more powerful functions later if we need them.  The documentation is limited to just those actions we need to support.
Option 4)  Use annotations to mark functions with attributes we can used to trigger the specific actions we need.
@JImplementationFor('java.util.List')
class JList(object):
   @JMethod(sticky=true)
   def addAll(obj, values):
      pass

   @JMethod(sticky=true)
   def removeAll(obj, values):
      pass

The result is more consistent with the other annotations we are doing, but this means more stuff in the global namespace.
Do you have any preferences between the options?

@marscher any opinions on the direction?

Okay I am going to try for the annotation based method.  I will use @JOverload as we are going to need it for Proxies and Extends as well.  So using the same keyword for all three will make sense.  There are no places where customizers, proxies, and extends are on the same object.

Made some more progress on this one, but apparently I have another issue with python 2.  Will have to wait until I have access to machine with multiple versions installed.

Okay puzzled a portion of this one out.  There is an instability in the mro algorithm.  No matter what I tried in terms of the overrides it was randomly failing.  I am going to switch it to something which pushes Interfaces down relative to explicitly specified base classes.  Assuming that works the pull request will be ready.

@marscher this pull request should be ready for review.  Once merged, I will use this to finish the proxy patch.

I like the decorator approach, it is clean and simple. Thanks a lot! Please merge on your own behalf.

On 02.11.18 19:11, Karl Nelson wrote:

Thrameos commented on this pull request.

@@ -45,12 +47,21 @@ def new(cls, *args):
eq = int.eq
ne = int.ne

if _sys.version_info < (3,):

   __cmp__ = int.__cmp__

I removed it from Python 3 because it is not being used.   At least according to the guides I could find that special method does nothing in Python 3.  I had it in both versions but I got a bug that showed up only in Python 2 and then did some research to discover the reason the bug didn't trigger in Python 3 was that nothing was calling it.
https://portingguide.readthedocs.io/en/latest/comparisons.html
I don't really have an issue placing the __cmp__ method in Python 3, but there is no guarantee that int will have a __cmp__ at points in the future.
Thanks a lot for the reference.
Do you think that a comment to this effect is required in the code?
No, now it is documented here.


Minor bug fixes

I'm not sure if you're accepting pull requests but there were a few minor bugs that needed to be fixed before orderable_stack could be run with the current version of flutter.

thanks a lot @fred3m !

No problem. I'm just learning how to use flutter and reading through and experimenting with your code was a great way to get started!


feat: allow reuse of persistent license sessions

Add capability to re-use persistent license sessions across sessions.
DrmEngine will now always:

try to start stored persistent sessions before trying to fetch a license, as-to be able to check if all needed keys are already loaded.
ask for a new license when the persistent session doesn't have the needed keys for playback,

Given the flag persistentSessionOnlinePlayback is true, DrmEngine:

won't remove the persistent session from the device at the end of the playback,
won't throw an error when the persistent session isn't found on the device,

For now, it needs Shaka's users to persist session information by themselves (localStorage, IndexDB, ...) before giving it back for the next session. Still, it lays foundation to develop the feature to fully handling it on Shaka's side.
TBD:

[x] Rename all offlineSessionIds_ in DrmEngine to storedPersistentSessionIds_ because we now use those in two different contexts, online / offline (and in comments too) (after full review to avoid noise over the feature)
[ ] Rename loadOfflineSession_ in DrmEngine to loadStoredPersistentSession_ (after full review to avoid noise over the feature)
[x] Add a public API to retrieve the session (ids and expiration) from DRM Engine if not already available
[x] Refactor / Set up another way to give persistentSessionIds to also give associated initData with it
[x] Test full offline to ensure no regressions
[x] Document feature usage

Related to #1956

Related to https://github.com/shaka-project/shaka-player/issues/1956

@valotvince it seems that there are some conflict with the main branch, can you rebase? Thanks!

👋 @avelad @joeyparrish I've rebased on main & added documentation about the feature, could you review it again ? Thanks :)

I think we should give the possibility (player configuration) that ShakaPlayer itself stores this information in localStorage for example.
If that's possible I'd like it to be done in another PR, as localStorage (or IndexeDB) is not necessarily the best on some devices. It might take more reflexion on the whole storage capabilities of Shaka, like allowing to give a StorageManager like the ABRManager which would handle the storage, without Shaka's knowing what the storage is.

Hi @avelad @joeyparrish, any comments to share on this PR ? Thanks !

@avelad 👋  Rebase done !

Failed tests look like unrelated flakiness, but I'm re-running them just to be sure.


Rename fetch

Describe the problem
I've been using SvelteKit for a while now and only today I learned that depending on whether I pass fetch as a param in the load function, I get a "special fetch" or "normal fetch". And the "special fetch" is more optimized and doesn't load requests twice, as the "normal fetch" does.
I consider the current implementation something similar to monkey patching. It looks really good, almost magical.....a little too magical. Unless you read the documentation very thoroughly before you begin (or you learn the hard way as I did) it's easy to miss that the fetch is special.
I don't care what the special fetch is called, be it specialFetch, svelteFetch, magicLoad or whatever else - but calling it fetch is too confusing, imho.
Describe the proposed solution
Rename fetch passed to the load function to something more distinct.
Alternatives considered
Alternatively - overwrite all fetch calls to be special fetch calls, at least that'll be consistent monkey patching.
Importance
would make my life easier
Additional Information
No response

Renaming it just sounds like it would be more typing for everyone and more things to worry about.
I think the confusion about what's going on would be sufficiently addressed by #3731.

Besides it being more typing, I think people would be less likely to do the right thing if we renamed the parameter. I'm going to close this in favor of the improved warnings suggested in #3731.


Recent cargo integration broken?

Continuing from #20, it seems running the same binary via --bin works as expected, whereas cargo profiler callgrind is able to compile but fails in debug mode and doesn't even build in release.
I'm going to use an older cargo binary to see if that helps.

No, it wasn't relevant. Finally, I tried a cargo install cargo-profiler --vers 0.1.3, but it installed a 0.1.4 anyway and surprisingly release integration seems to work in one simple rust project. In projects like exa or cargo-profiler, the first comment still stands but debug started producing profiles.
No idea what's going on here.

Hey @petevine - sorry you're dealing with these issues. I just wrote a patch in v0.1.5 that should fix the  compilation issues, let me know if you can compile and run properly now!

Thanks again for submitting these issues, hopefully things should stabilize asap.

Yup, that part is fixed. Thx!


[Daily Builds] Enable 'NoUpdate' Test Scenario on Windows

Hi @bmanikm, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;


Having issues selecting file

I imagine I can't select this file because it's in aiff format. Wondering if you can add support for aiff files.

Go to the Settings Guide -> Additional Settings -> Select "Accept Any Input"

THANK YOUUUU <3


Fix PATH errors on Windows

Description
When we encounter an invalid PATH element during the binary discovery process, we drop those elements instead of throwing an exception which would break the entire GDK.
The alternative proposed solution was to call spatial/dotnet and check the result, but apparently Mac is a little special and so that would not always work.
Tests
Will try to break my PATH and see what happens. 🤞
Documentation
Change log and will close known issue #959

Added "oh;no" to my PATH - was able to generate code no problems (also verified that my PATH had actually updated)


feat(depcheck): proposal to add depcheck

I keep adding depcheck to projects which I feel is evidence we should include it in our starter repo.


Notification API does not match spec: missing close method.

The Notification API wrapper implemented by Franz does not have the close method when the class is instantiated.
It appears as though Notification.close exists, however this is incorrect, and should really be Notification.prototype.close. This will cause errors/tracebacks in applications that use the close prototype method.
Screenshots (if appropriate):

Possible Solution
Change noop function that currently resides in Notification.close => Notification.prototype.close.
Steps to Reproduce (for bugs)
Run the following code:
var notification = new Notification({});
// triggers an error as `Notification.prototype.close` does not exist.
notification.close();

Context
This breaks notifications in the Zulip application and creates tracebacks that are sent to our sever.
Your Environment

Franz Version used: Version 5.0.0-beta.10 (5.0.0-beta.10.7)
Operating System and version: MacOS High Sierra

@brockwhittaker thanks for bringing this issue up and your clear guide to solve it. This fix will be shipped with beta 12 in the next few days. 🙌


Uncaught TypeError: __WEBPACK_IMPORTED_MODULE_1_clip_path___default(...) is not a function

Getting the following error when I try to execute the ClipPath on a element:
Uncaught TypeError: __WEBPACK_IMPORTED_MODULE_1_clip_path___default(...) is not a function
Known error?

This library doesn't export default value. It should work fine importing like:
import { ClipPath } from clip-pathor import * as ClipPath from clip-path.


The model and loaded state dict do not match exactly

Hello, I am executing:
python tools/train_recognizer.py config_files/sthv2/tsm_tpn.py --work_dir chekpoint/sthv2_tpn.pth
Warning: WARNING-The model and loaded state dict do not match exactly
Error: TypeError: optimizer must be a dict of torch.optim.Optimizers, but optimizer["type"] is a <class'str'>
Please give me some suggestions， Thank you!

Hello, have you solved the problem，I also encountered this problem, but my mmcv is 1.x version, it can be used after downgrading to 0.2.10.

I'm observing something similar with test_video.py:
python test_video.py config_files/sthv2/tsm_tpn.py ckpt/sthv2_tpn.pth --video_file juggling_short.mp4  --rendered_output juggling_short_res.mp4

Error:
The model and loaded state dict do not match exactly

missing keys in source state_dict: necks.aux_head.convs.conv.weight, necks.aux_head.convs.bn.weight, necks.aux_head.convs.bn.bias, necks.aux_head.convs.bn.running_mean, necks.aux_head.convs.bn.running_var, necks.aux_head.fc.weight, necks.aux_head.fc.bias

您好，您解决了这个问题，我也遇到了这个问题，但是我的mmcv是1.x版本，降级到0.2.10后可以使用。

I'm observing something similar with test_video.py:
python test_video.py config_files/sthv2/tsm_tpn.py ckpt/sthv2_tpn.pth --video_file juggling_short.mp4  --rendered_output juggling_short_res.mp4

Error:
The model and loaded state dict do not match exactly

missing keys in source state_dict: necks.aux_head.convs.conv.weight, necks.aux_head.convs.bn.weight, necks.aux_head.convs.bn.bias, necks.aux_head.convs.bn.running_mean, necks.aux_head.convs.bn.running_var, necks.aux_head.fc.weight, necks.aux_head.fc.bias

Thank you very much, I solved this problem, but encountered a new problem：
WARNING - unexpected key in source state_dict: fc.weight, fc.bias
FileExistsError: [Errno 17] File exists: '/home/wang/project/python/TPN-master/chekpoint/sthv2_tpn.pth'

I'm observing something similar with test_video.py:
python test_video.py config_files/sthv2/tsm_tpn.py ckpt/sthv2_tpn.pth --video_file juggling_short.mp4  --rendered_output juggling_short_res.mp4

Error:
The model and loaded state dict do not match exactly

missing keys in source state_dict: necks.aux_head.convs.conv.weight, necks.aux_head.convs.bn.weight, necks.aux_head.convs.bn.bias, necks.aux_head.convs.bn.running_mean, necks.aux_head.convs.bn.running_var, necks.aux_head.fc.weight, necks.aux_head.fc.bias

Hello, I also encountered the same problem, did you solve it?

Aux head is not used during inference time. So you can ignore the error 'missing keys in source state_dict'.


Exclude duckdb 0.4.0 from compatible versions

Related to #9
Currently, an install of dbt-duckdb==1.1.1 in a fresh environment will yield versions like this:

dbt-duckdb-1.1.1
duckdb-0.4.0

This PR simply constrains the upper bound of duckdb so it will install duckdb-0.3.x instead.

Thank you @dbeatty10! Finally have a little time to dig in and see what's going on in here.


[WIP] 3rd (and hopefully last) part of the removal of $user_info

I'm sending this just to have some feedback on something that looks weird.
Will remove the [WIP] tag once it's ready to merge.

Never mind, while trying to describe the weirdness, I got what it is meant to do.


Reference to WCode's - "limitations"

Hi Ben, first of all - thanks a lot for referencing my project WCode and also building on and improving the wordlist.
I just wanted to clarify that WCode was built with the very clear intention to minimize any ambiguity of communication. The existence of words like "landslide" and any homophones in its wordlist in any early or even current version - would have been a mistake / a temporary oversight - as I had EXPLICITLY stated that WCode's words should exclude such compounded words and homophones.

Hi @ujLion - thanks for reaching out, and especially thanks for choosing to share the WCode word list in the public domain - it was a great contribution to the community, and I mentioned the project in the notes here specifically because I wanted to thank you for offering that as a resource.
The primary challenge that kept me from adopting the WCode wordlist directly was the "to be replaced" list of 74 words, which contains various items like "death", "cancer", "cannon" and "sword".  Since those are marked as to be replaced, I'm sure future releases of the WCode list will replace and improve on these words, but these inclusions were unacceptable for my purposes as the list currently stands.  I also removed some other words that could have mildly inappropriate or unpleasant connotations in certain settings, like "collar" and "cockroach".
I did already acknowledge the design goals you list here and indicate that I made a design decision to adopt different restrictions than WCode in verbal-id in this note on the project homepage:

I discarded a few limitations WCodes adopted; most notably, this list permits common compound words that aren't typically hyphenated like 'landscape' and 'moonlight'.

As I'm sure you've encountered too, I found that the pool of short, simple, phonetically unique words to adopt as replacements was surprisingly small, and so I made the decision to include compound words to backfill back up to 1024 options after removals because I was out of other words I found to be suitable that had unique Metaphone codes and that were included in multiple ESL dictionaries.  I made an effort while doing that to choose words that are commonly pronounced without a pause between the two compound word stems, in the hopes that users will not accidentally split them up, but this is definitely an area where our projects diverge.
Since the intent of referencing WCode is to acknowledge your community contributions and thank you for your efforts, I certainly don't want you to be unhappy with the way your project is referenced in the verbal-id documentation.  Would you like me to remove the WCode acknowledgment entirely, or would you like me to reference this issue from the project welcome page as a point of clarification?  I'm happy to do either upon request.
Thanks again for everything you've done, and best of luck with the WCode project!

Oh - my bad, I read your sentence wrong! In the paragraph that you have quoted above - I misinterpreted this list as the WCode list when you actually meant VerbalID list. Thanks again @bandrews for taking out time to address my concern. Even though your sentence is proper, I would request you to make it a little more clear - so that someone else does not repeat my mistake in interpreting it; So instead of "this list" you could say: "the VerbalID list" or place 'VerbalID' in brackets there.

`Existing projects like WCodes have provided a similar idea, but the word list contains homophones and words with negative connotations.
I also wanted the system to be tolerant to minor typos...`
Here I want to stress that - WCode has had these same goals... It is just that I, like you @bandrews , was short of words... And thus have had to keep poor words as a temporary arrangement. Thus the limitations are of WCode's word list and NOT the WCode system itself.
When you have time - it would be kind of you to make this distinction in your reference.
I do also acknowledge that you have been more diligent and systematic in improving the words of the list - and have made it much more useful for all.

Thanks, this all makes sense!  I definitely appreciate the feedback, and I agree this needed to be clearer.  I went ahead and made updates to README.md to address them and to make it clearer that the divergence between the two projects is simply based on different design goals.
Please take a look and see what you think;  if you have further feedback, let me know, and otherwise feel free to close the issue if your concerns are resolved.
Cheers!

Just to point out:

verbal-id aggressively filters words that even have a small chance of being interpreted with negative connotations or potentially offensive meanings when combined with other words.

As mentioned above in point 8 & 9 of WCode's Word selection criteria list - I have always wanted to keep the words of WCode as positive as possible in order to avoid any potential negative connotations. Thus discouraged words like pig (I love all animals and insects though - just that not all people can get on to same page right now), and even the slightest negative word like "fall". However it may so be that you may find some words to be inappropriate which I might not, and thus VebralID's list could be more aggressive in such filtering.

verbal-id uses Metaphone phonetic codes to filter the word list for homophones and to match words entered by users, enabling the system to be tolerant to minor typos (e.g. "kiwi" and "keewee" map to the same metaphone code).

I had intended to handle this matter - at input level. i.e. if the user would enter a misspelling - like 'keewee' - it would get auto corrected to 'kiwi' upon decoding.
* This is currently not implemented in WCodes though.

verbal-id incorporates parity bits as a checksum to enable friendly error handling.

WCodes has had this feature since the beginning. It is part of the executable and demoed in the video.
However this has been an optional feature, in order to keep the code shortest if that is the user's priority.
@bandrews I am happy 🙂 with your response. You may close this issue.
Thanks brother ✊


Fix swagger request schemes

What does this PR do?
This PR fixes allowed schemes for the swagger docs ui.
Changes

Add manual schemes list

Code changes make sense. This seems like something that's hard to test locally- I think it's safe to merge then test (and we can always continue to fix if necessary!)

Yeah, I had no idea how to actually do that in a test :/


When searching, exact matches should be suggested first

When you type in the search bar, you get a list of suggestions as you type. However, exact matches are sometimes drowned out by non-exact matches. Borrowing the example from #865:
When type "pandoc", and you get:

pandoc-pandocker-filters
pandoc
jekyll-pandoc
pandoc-numbering
etc...

Pandoc only points to crates.io, however. If I want the PyPI package of the same name, it does not show up. Preferably, exact matches should always be suggested before non-exact matches are suggested.

This is an issue with the clearlydefined api, more precisely https://github.com/clearlydefined/service/blob/324017ef0ccfe73eb9d1593faf777d19b621a216/routes/definitions.js#L37 .
The search bar's typeahead  displays suggestions in the order they appear.
To fix this, the api should return the response where the exact match appears first.


start postfix at runtime if sendmail is used

@djdefi this is the correct fix for sendmail
it checks if sendmail is selected. If so then postfix is used. otherwise everything stays the same
fixes #232

if someone is wondering, why this effort is needed: postfix only wants to run under root user


How to export a project in a multi project solution

Can you export a project to a stand alone project, new solution to be able to build, debug and run by just that project?

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

ID: 5b76e208-2a2a-9fc3-98ff-147540157f32
Version Independent ID: 5f5c9adf-da1d-ec0b-8af3-ccd2e27eaadc
Content: Create multi-project templates - Visual Studio (Windows)
Content Source: docs/ide/how-to-create-multi-project-templates.md
Product: visual-studio-windows
Technology: vs-ide-general
GitHub Login: @TerryGLee
Microsoft Alias: tglee

@MaxFun -- Max, thank you for your question.  Please consider these resources:

Visual Studio on Microsoft Q&A
Visual Studio MSDN Forum
Stack Overflow
Reddit

Thanks for responding. I should have mentioned that I had search google for an answer for two days before asking the question with no useful results.

@MaxFun -- Max, thank you for your followup.  My suggestion is to add this scenario as a feature request:

Use the new Suggest a feature for Visual Studio IDE menu item.
Suggest a feature, track product issues, and find answers in the Visual Studio Developer Community.


Horses + transmitter

so try riding a horse and go through a transmitter
you end up on the reciever but instantly teleport back on the transmitter and a endless loop acourse. this happend on a server I was playing on.
since it was a vanilla horse + rftools I cant realy see how it might becaused by another mod.
rftools version: 1.1x-5.72
forge version: <IP_ADDRESS>5
minecraft version: 1.10.2
modpack: MMD project Ultimate version 1.3
edit: the reason it goes sofast is because of the infusion being 100%,

Fixed next release (by simply not teleporting if you're riding a horse)


customise version strings?

I'm having problems publishing the auto generated commits to sonatype snapshots. I think the + might be causing a 400 error.

ok, I have a workaround that is compatible with #23 ... I run this on my CI
git tag | xargs git tag -d

which removes all tags, and that means it defaults to the isSnapshot = true case where the version is the git hash. Exactly what I want!
I only do versioned releases from my desktop.

This is related to #5, but with more flexibility. That's fine because I wanted to provide a flexible solution to the problem space anyways. I started working towards that with #11, but I never finished completely.

this morphed into the need to add -SNAPSHOT at the end of version strings for me.

@fommil Would you mind verifying for me that the docs at https://github.com/dwijnand/sbt-dynver#custom-version-string are clear and obivous, and provide a suitable solution to your problem? Just make sure you update to version 1.1.1+9-bd70cc00.

oh cool, I'll try to do this after work tonight. If not, remind me again at scalasphere.

Cut as v1.2.0

docs look good! Although I am a little scared by how much code I have to write to customise that version string :smile:
    version := {
      val v = version.value
      if (!v.contains("+")) v
      else v + "-SNAPSHOT"
    }

maybe I should refer to dynver.value here instead of version.value

dynver is the task, version is the setting. So one is memoised and stable, the other one is more correct, but varies on each call (depending on the state of the repo, working directory and time).
The amount of code.. yeah... it's tragic. Some of it is little mistakes here, but a big problem is the hard divide between settings and tasks.

I which either sbt-dynver set -SNAPSHOT automatically or Maven repos didn't enforce this -SNAPSHOT ending.

Basically sbt-dynver is anti-SNAPSHOT.

Fair enough

Hehe a look at what i do it sbt-sensible

Hehe a look at what i do it sbt-sensible

we can't, you deleted it


update floki and use explicit parsing of floki

Since the update of Floki to version 0.24.0 other projects get warnings
in there tests when using Floki 0.24.0 and oembed together. With this
commit the warnings will disapear because it uses the new parse_*/1
functions instead of the old Floki.parse/1 that is now depricated.

Thanks!
Sorry, that merging took so long


Passing table instance down component tree via context breaks functionality

Describe the bug (required)
Passing table instance down component tree via React Context breaks functionality.
Provide an example via Codesandbox! (required)
Here's a fork of the row selection demo sandbox, modified to use React context:
https://codesandbox.io/s/objective-kalam-iqw89?file=/src/App.js
Steps To Reproduce (required)
Steps to reproduce the behavior:

Go to sandbox
Click on checkboxes
Observe that checkbox state is not toggled on/off

Expected behavior (Recommended)
It should be possible to break large component trees up and pass the react-table instance via context.
Additional context
In a nutshell, I'm trying to do the following, with the goal of breaking my large table component into smaller pieces:
const ReactTableContext = React.createContext({});

export default function Table({ children }) {
  const instance = useTable(
    {
      columns,
      data,
    },
    useFilters,
    useGlobalFilter,
    usePagination,
    useRowSelect,
  );
  return (
    <ReactTableContext.Provider value={instance}>
      {children}
    </ReactTableContext.Provider>
  );
}

export function TableRows() {
  const {
    getTableProps,
    getTableBodyProps,
    headerGroups,
    page,
    prepareRow,
  } = React.useContext(ReactTableContext);
  // Render rows...
}

export function TableFilters() {
  const {
    // ...
  } = React.useContext(ReactTableContext);
  // Render filters...
}

export function TablePagination() {
  const {
    // ...
  } = React.useContext(ReactTableContext);
  // Render pagination...
}

// Usage:
// <Table>
//   <TableFilters />
//   <TableRows />
//   <TablePagination />
// </Table>

<ReactTableContext.Provider value={instance}>

Your problem is here. instance is a stable reference, so you're passing the same value every time. Since it's the same value, the context never will update.
Easiest solve for this would be to create a new value object every time, with a reference to the instance:
<ReactTableContext.Provider value={{ table: instance }}>

And to consume it like this:
const { prepareRow } = React.useContext(ReactTableContext).table;

Or maybe add a helper:
const useReactTableContext = () => React.useContext(ReactTableContext).table;
// ...
const { prepareRow } = useReactTableContext();

@nderscore thanks! I came up with my own fix shortly after posting this issue:
// Before:
<ReactTableContext.Provider value={table}>

// After
<ReactTableContext.Provider value={{ ...table }}>

But I'm still wondering if this is the most performant approach as I expect most/all of my component tree will be rerendered on every update.

Rerenders are good and keep your app up to date with your UI state. Embrace them and just make them faster.
https://twitter.com/tannerlinsley/status/1255209957219168257
https://twitter.com/tannerlinsley/status/1255197677991522309

This lib behaviour is very counterintuitive in React ecosystem. It makes it impossible to effectively use this with any sort of memoization that you may have in place. Remembering to artificially create new references while passing any parts down may lead to many bugs.
I would suggest documenting this fact clearly in the docs.

How to get the typescript working on this when declaring
const ReactTableContext = React.createContext({});


Add files via upload

plz add cwgc.edu.hk with email student.cwgc.edu.hk or teacher.cwgc.edu.hk

There are several files in the request, along with file.zip. It must not be there. Please remove file.zip and make pull request again.  I have to close this request without merging. Thank you for your understanding.