Uplift Pydantic version to V2

Issue: https://github.com/IBM/lmctl/issues/199
Changes in the PR for uplifting to Pydantic  V2

Added more explicit type annotation indicating that the field can be either a string or None e.g endpoint: Optional[str] = None
As parse_obj_as is deprecated, using TypeAdapter for parsing and converting types
Replaced @root_validator(pre=True) to @model_validator(mode='before') and handling values as either ArgsKwargs or a dictionary.
Replaced constr with Annotated for defining string constraints.
There are some differences in how error messages are presented in Pydantic v2, added changes for better readability. For example, the transition from general error types like type_error to more specific ones such as value_error or dict_type is handled.

Tested for lmctl config environments on multiple updates.
Which exludes
fields that have no value and fields that are set to the default value.
active_environment: ride-4 environments:   ride:     tnco:       address: https://cp4na-o-ishtar-lifecycle-manager.apps.ride.cp.fyre.ibm.com       api_key: krPwtJ1EjinnXAn7AiG9xWMDAV6hnv8k6Ze7co1I       auth_address: https://cpd-lifecycle-manager.apps.ride.cp.fyre.ibm.com/icp4d-api/v1/authorize       auth_mode: zen       secure: true       username: cpadmin   ride-1:     tnco:       address: https://cp4na-o-ishtar-lifecycle-manager.apps.ride.cp.fyre.ibm.com       api_key: krPwtJ1EjinnXAn7AiG9xWMDAV6hnv8k6Ze7co1I       auth_address: https://cpd-lifecycle-manager.apps.ride.cp.fyre.ibm.com/icp4d-api/v1/authorize       auth_mode: zen       secure: true       username: cpadmin   ride-2:     tnco:       address: https://cp4na-o-ishtar-lifecycle-manager.apps.ride.cp.fyre.ibm.com       api_key: krPwtJ1EjinnXAn7AiG9xWMDAV6hnv8k6Ze7co1I       auth_address: https://cpd-lifecycle-manager.apps.ride.cp.fyre.ibm.com/icp4d-api/v1/authorize       auth_mode: zen       secure: true       username: cpadmin   ride-3:     tnco:       address: https://cp4na-o-ishtar-lifecycle-manager.apps.ride.cp.fyre.ibm.com       api_key: krPwtJ1EjinnXAn7AiG9xWMDAV6hnv8k6Ze7co1I       auth_address: https://cpd-lifecycle-manager.apps.ride.cp.fyre.ibm.com/icp4d-api/v1/authorize       auth_mode: zen       secure: true       username: cpadmin   ride-4:     tnco:       address: https://cp4na-o-ishtar-lifecycle-manager.apps.ride.cp.fyre.ibm.com       api_key: krPwtJ1EjinnXAn7AiG9xWMDAV6hnv8k6Ze7co1I       auth_address: https://cpd-lifecycle-manager.apps.ride.cp.fyre.ibm.com/icp4d-api/v1/authorize       auth_mode: zen       secure: true       username: cpadmin


[HOLD] Make keyboard shortcuts modal discoverable in UI

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Problem
We recently added a modal to display all the available keyboard shortcuts. However, currently it's only discoverable via the keyboard shortcut that opens it.
Why this is important
Keyboard shortcuts are convenient, fun, and supercharge the usability of our app. However, regular users currently have no way to discover those keyboard shortcuts.
Solution

Add a new list item in Settings -> About to open the keyboard shortcuts modal.
(desktop) add View keyboard shortcuts to the application menu.

Platform:

Web
Desktop App

HOLD on https://github.com/Expensify/Expensify/issues/187957

The changes we'll need are the following (as outlined in this comment):

Add a menu item in /settings/about saying Keyboard Shortcuts that opens this modal.

Note: This is currently on hold because we need a keyboard icon from our design team. Issue for the icon is here.

We'll also want to add a new desktop application menu item saying View Keyboard Shortcuts, which also opens the modal.

However, we'll also want to move the KeyboardShortcutsModal from ScreenWrapper to Expensify, so that there's one global keyboard shortcuts modal that can be opened from everywhere. Putting it in ScreenWrapper was a mistake because now we have a duplicate modal many times in the DOM for every component that uses a ScreenWrapper. In essence, the KeyboardShortcutsModal will be used much like the UpdateAppModal.

KeyboardShortcutsModal from ScreenWrapper to Expensify,

Good Catch.

@roryabraham

We'll move the KeyboardShortcutsModal.isOpen to Onyx.IS_SHORTCUTS_MODAL_OPEN  and update the relevant functions to hide and show the visibility

We then create KeyboardShortcuts in libs/action to update the Onyx keys

We'll add row in AboutPage to add the shortcuts menu, with the relevant update calls

Add the menu in desktop/main.js

const keyboardShortcutsMenu = new MenuItem({
    label: 'View Keyboard Shortcuts',
    enabled: true,
    click: showKeyboardShortcutsModal,
});

and
appMenu.submenu.insert(2, keyboardShortcutsMenu);

Move the modal to Expensify as mentioned above.

Okay @akshayasalvi, just for clarity sake are you volunteering to do this as part of the scope for https://github.com/Expensify/App/issues/5588, or do you think that this should be treated as a separate job?

I’ll do it as a part of the scope from the previous work.

Great, thanks! Feel free to submit a pull request whenever you're ready, and then before we merge it we'll just make sure to get the correct keyboard icon that our design team is making in the settings menu list item.

📣 @akshayasalvi You have been assigned to this job by @roryabraham!
Please apply to this job in Upwork and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑💻
Keep in mind: Code of Conduct | Contributing 📖

As discussed above, there is no separate Upwork job for this issue.

@roryabraham Do we have any example where we can call actions from the desktop/main.js?
I tried and it gives an import error.

I think I can help you here @akshayasalvi . If I am getting is correctly, you want to trigger the modal action from Desktop app shortcuts.

Use this to send an event to the renderer process.
https://github.com/Expensify/App/blob/087ad951423843a9758e0849469bf3950724dcf0/desktop/main.js#L99

use this to listen for event from main process
https://github.com/Expensify/App/blob/087ad951423843a9758e0849469bf3950724dcf0/src/setup/platformSetup/index.desktop.js#L13.

now you can call the action directly.

Thanks @parasharrajat this worked. Appreciate your help once again 😄  PR updated

PR merged

https://github.com/Expensify/App/issues/6879 is a regression caused by this, so we need to hold payment

Oh, there's also this https://github.com/Expensify/App/pull/6833/files#r774194681

As stated here, there's no separate job for this. Since this work is done, I'm going to close it out.


Make sure backup retention is properly defaulted

Summary
Due to a limitation in the kubebuilder framework, we need a hack to ensure that objects actually get the specified defaults.
Checklist

[x] Categorize the PR by setting a good title and adding one of the labels:
bug, enhancement, documentation, change, breaking, dependency
as they show up in the changelog
[x] Update tests.
[ ] Link this PR to related issues.

please check it in the lab as it's often trickier than we think :D

I'm adding e2e tests for all services for that. However, I might not be able to finish it before my vacation.

I;m taking Your ops tomorrow, so please just assign PR to me and leave comment explaining where to pick it up and I'll finish it


Physical connection is not usable [xFFFFFFFF]

This should be A) retried, and B) a user exception
PDOException:SQLSTATE[08S01]: [Microsoft][ODBC Driver 17 for SQL Server]Session Provider: Physical connection is not usable [xFFFFFFFF]

This will need a test like https://github.com/keboola/db-extractor-common/pull/85

again today

again
https://keboola.slack.com/archives/C09U3R1J4/p1549250351002600

Also "Connection has been closed by peer" https://keboola.slack.com/archives/C09U3R1J4/p1551261006006400

:-( https://keboola.slack.com/archives/C09U3R1J4/p1551875710014700

Another err 500:
PDOException:SQLSTATE[08S01]: [Microsoft][ODBC Driver 17 for SQL Server]Session Provider: Connection has been closed by peer [xFFFFFFFF].

https://keboola.slack.com/archives/C09U3R1J4/p1553606409034200

PDOException:SQLSTATE[08S01]: [Microsoft][ODBC Driver 17 for SQL Server]Session Provider: Connection has been closed by peer [xFFFFFFFF].
https://keboola.slack.com/archives/C09U3R1J4/p1554106870011600

Happened multiple times today. I'll try to fix it - retry + user exception afterwards.

@tomasfejfar Jak to vypadá, dostal jsi se k tomu?

Myslel jsem, že to dám během ZD, ale nakonec mi to tady nějak zapadlo, sorry. Zapomněl jsem si to assignout :(
Assignul jsem si to a někdy vyřeším nebo si to může vzít někdo jiný. Bojuju s db-ex-common...

Another PDOException:SQLSTATE[08S01]: [Microsoft][ODBC Driver 17 for SQL Server]Session Provider: Connection has been closed by peer [xFFFFFFFF]
https://keboola.slack.com/archives/C09U3R1J4/p1555983221021300

should by finally solved by 3.4.5


[mp-7-wip] WFLY-19592 Test case for MP Fault Tolerance with MP Telemetry Metrics

Jira
https://issues.redhat.com/browse/WFLY-19592

@kabir Failures are unrelated.

Thanks!


Update: Mozilla.Firefox.DeveloperEdition version 78.0b5

Removing old versions to reduce clutter
Microsoft Reviewers: Open in CodeFlow

/azp run


vendor: update containerd/cri, remove "docker/distribution" dependency

@dmcgowan @AkihiroSuda @mikebrow ptal

I can update to include https://github.com/containerd/cri/pull/1477 once merged (and if this one isn't merged yet before that)

https://github.com/containerd/cri/pull/1477 was merged, so updated containerd/cri to include it


noImplicitAny allows type changing for non-typed variable declaration

TypeScript Version:  3.7.5
Code
let smth; // any
smth = 1; // any
console.log(smth); // number
smth = 'afas'; // any
console.log(smth); // string

Expected behavior:
error at second assignment due to determined number type
Actual behavior:
no error
Playground Link: https://www.typescriptlang.org/play/#code/DYUwLgBAzgtmAWBuAULBEC8ECMKDGA9gHZQGgB0wBA5gBRrwCUKDmEA5AIYBmnU7+YqQpU6DZkA

This is the intended behavior. Typescript is pretty good at tracking types through control flow analysis. If you were to access the variable without and assignment or in an inconsistent way, you would get an error:
let smth;
smth.test() // error
smth = 1;
smth.toExponential()
smth = 'afas';
smth.toExponential() // error

Playground Link


Refused MasterCard payments displayed as normal payments

Refused (online) MasterCard payments are displayed as normal (accepted)  payments.
Attribute values of a blocked payment:
authorisation_status=BLOCKED
authorisation_type=NORMAL_AUTHORISATION
And you have a property "decision", for example "INSUFFICIENT_BALANCE"

You have also the property "decision_description" with a more "human readable" textual explanation of why it was denied.
Possible authorisation statusses:
CLEARING_REFUND
PRE_AUTHORISED
PRE_AUTHORISATION_FINALISED
PRE_AUTHORISATION_EXPIRED
REVERSED
REVERSED_PARTIAL
ACQUIRER_AUTHORISED
AUTHORISED
AUTHORISED_PARTIAL
BLOCKED
IGNORED
NOT_PERFORMED
PENDING
STAND_IN_AUTHORISED
UNAUTHORISED_CLEARING
Authorisation types:
CLEARING_REFUND
PRE_AUTHORISATION
ACCOUNT_STATUS
BALANCE_INQUIRY
ATC_UPDATE
FINAL_AUTHORISATION
NORMAL_AUTHORISATION
STAND_IN_ADVICE
TOKEN
UNAUTHORISED_CLEARING
UNMATCHED_REVERSAL

This has been implemented in 0.7.4 but due to all the different types and statuses we'll slowly implement more detailed and user-friendly descriptions to the card payments


[CI/CD]Write notes about ci/cd in contributing documentation

follow the root issue: #1460
Content:

The new PR code ut coverage is required to reach 60%
The the coverage rate after merge PR can only be increased, not reduced
UT only use junit and mockito, we worried about license issues after other library is introduced
Before submitting the PR, you must ensure that the build passes, the ut passes, the license check、spotbugs check、checkstyle check、and eslint check all pass.

done


Service Definition item (CompoundMap) exists without an associated hosted service

Hosted service CompoundMap/FeatureServer does not exist, but associated service definition item "CompoundMap" 84f165cbc7404302b1597c3116d6d1f2 exists; please delete the following item; otherwise the hosted service will be published to ops servers.

I believe that there is an associated feature service that was simply renamed to "Monterey Airport Compound Map".  I have renamed the Service Definition for clarity.

@elinz - Is there an additional issue that needs to be resolved by @ScottCecilio?

@ScottCecilio @jrweakland The fixes described above actually didn't fix the problem.

[ ] The "Monterey Airport Compound Map" service definition item (84f165cbc7404302b1597c3116d6d1f2 ) needs to be deleted. Renaming the SD item title to match the hosted service item doesn't solve anything as what's important is the service name captured in the SD file, which in this case is "CompoundMap".

[ ] The hosted service MonterreyAirportCompoundMap_WFL/FeatureServer needs to be republished so that the SD item for this service is uploaded to the portal.

Working on this, I'm on travel bear with me.

Talked to @ScottCecilio this afternoon. We are looking in this issue, but need to reassess in the morning.

@elinz @jrweakland Does the issue "https://github.com/Esri/ops-server-config/issues/1131" relate to this as well?  If so, I believe that this is no longer an issue and can be closed.

@ScottCecilio @jrweakland I verified that the service definition item 84f165cbc7404302b1597c3116d6d1f2 was deleted; also verified that the service MonterreyAirportCompoundMap_WFL/FeatureServer was republished. Closing issue.


.Net Adaptive card not rendering with large data in Teams

Hi,
I am using Adaptive cards version v.1.2.4.
When I am trying to post Weather report Today , 24 Hour and 5 Day  in single message using Adaptive card in Teams channel using json. But it giving below error
Operation returned an invalid status code 'RequestEntityTooLarge'   at Microsoft.Bot.Connector.Conversations.ReplyToActivityWithHttpMessagesAsync(String conversationId, String activityId, Activity activity, Dictionary`2 customHeaders, CancellationToken cancellationToken)
Is there any limitation of  size of the data that can be posted in teams using Adaptive card.
Please help me.

@ckkashyap / @dandriscoll / @jameslew ideas on this one? @nagavamsi777 this error isn't coming from AdaptiveCards so have added the Bot framework partners to help!

This issue has been copied over to Microsoft Teams repo here: https://github.com/MicrosoftDocs/msteams-docs/issues/4668


Use pointer for bRead/bWrite

In version <IP_ADDRESS>, we are calling bRead/bWrite using string as input:
_PLC.bRead(sTag:='codesys_bool', eDataType:=CoDeSys_EIP.eCipTypes._BOOL, pbBuffer:=ADR(_bReadTag_codesys_bool));
However, this means we need to make additional ADR calls within the methods to get reference pointer.  To save a few extra ADR calls, change input directly to pointer that references string (POINTER TO STRING):
_PLC.bRead(pstTag:=ADR('codesys_bool'), eDataType:=CoDeSys_EIP.eCipTypes._BOOL, pbBuffer:=ADR(_bReadTag_codesys_bool));
This should make library faster.  End user will need to update from sTag:='codesys_bool' to pstTag:=ADR('codesys_bool')

Updated in v<IP_ADDRESS>


Implementing an Image Classification App in One Minute for TinyMs-0.3.1

What type of PR is this?

/kind enhancement

What does this PR do / why do we need it:
This PR updates tinyms0 3.1 realize the document of "realizing one graphic classification application in one minute" and publish it (Chinese version and English version) on the official document website.
Which issue(s) this PR fixes:
Special notes for your reviewers:

Sorry, the folder needs to be closed because it was deleted


related links

(/cc @samuelroy I just created this as a placeholder for related links; not an actual issue; I'm assuming you've already read that link)

Nim Code Coverage · HookRace Blog

Actually, the project came from this blog post. I wasn't able to make it work as stated in the article and wanted to share my findings with this library.


artifacts from previous builds

There is this bug when sometimes flutter loads some code/assets from previous builds.
So basically you are developing, making build 1, do some changes in the code, assets or yaml configs, make a new build 2 and run it. Then you discover that the resulting app from build 2 contains some artifacts of the build 1.
Hard to track and reproduce this one.

Two most repeating scenarios:

gradle loads some older libs

pubsec.yaml refers to a config.yaml with

flutter:
  uses-material-design: true

  assets:
    ...
    - config/config.yaml

and the apk contains older versions of the config.yaml

Seems to be a case of #16604

Duplicate of #16604


How would you catch Page.navigate({ url: 'https://www.google.com/404' }) (404)?

I'd like to know if Page.navigate({ url: '...' }) ends in a 404. Have you any ideas?

listen for Network.requestWillBeSent and save the requestId of the event whose documentURL matches the one you navigated to;
listen for Network.responseReceived and check the response.status for those event that matches the above requestId.


add fonts/colors

Did you want to edit what you mentioned and commit it? It should automatically commit to this PR.

Everything looks good, but our .gitignore isn't blocking your .DS_Store files for some reason. Oh. because it is missing.
I can remove it all but will have to add those filetypes to it and remove them later. Unless you inform me within 10 minutes, I'm gonna accept this PR and merge it.


Prefixes / Suffixes Not Working.

Hi there, I am starting a factions server and my prefixes and suffixes are not working. I have EssXChat and it handles chat. When I set it to not handle chat I cannot see the faction names... only the Prefix. I need both to display. Is there anything that I can put into my EssXChat name format in config like for example "[Prefix] [FactionRoleIcon][FactionName]{NAME} &a&l>>"
Is there anything like the [Prefix] for LuckPerms that I can paste into my EssXChat config? Thanks!

You need to ask Essentials for support with this.
As far as I know, it's not possible. Something like DeluxeChat would be more appropriate.


Remove the deprecated weights property in favor of weight in TorchConnector

Summary
Fixes #350
Details and comments

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.02%) to 85.949%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
2777

Relevant Lines:
3231

💛  - Coveralls


✨ Feat: Add a footer

What feature?
The website is lacking the footer :(

add a footer
in the footer add  only this

open source is awesome 💜
OpenSourcer is an open-source project. Feel free to contribute and help us to make this project better
Copyright © 2023 by openSourcer. Under MIT License

Add screenshots
No response
Record

[X] I agree to follow this project's Code of Conduct
[ ] I want to work on this feature

Hello @murtazajoo! Congratulations on creating your first issue! 🎉 We appreciate your contribution and want to assure you that we're on it. We'll do our best to resolve the issue promptly. If you have any additional information or details to share about the issue, please let us know. We're here to help! Thanks again for taking the time to report this issue. We value your feedback and look forward to working together to address it. Best regards, Your Project TeamWe will promptly review your changes and offer feedback. Keep up the excellent work! Kindly remember to check our contributing guidelines

Hi, I would like to take this issue. Please assign it to me.
Thank you!

Great its All Yours

Hi murtazajoo,
I'm interested in taking the first issue. I'm new to this project, but I'm eager to learn and contribute. I've read the issue description and I think I have a good understanding of what needs to be done.
please assign it to me.

Hello, @yhimanshu22
I don't understand what you meant by the "first issue"

add a comment in the respected issue you want to work on.

This (Add Footer) issue is already assigned to @akj2018

i am completely new and don't know much how to contribute.

@yhimanshu22 let's talk here


type parameter discovery for beans that are not registered by component scan

Describe the bug
There is an issue in discovering type parameters (S and T) of Function<Flux<S>, Flux<T>> beans if they are not registered by component scan and their declaringClassNames are not Function<Flux<S>, Flux<T>>.
When beans are registered by component scan, their type parameters can be accurately discovered (thanks to this fix).
This issue is for beans that have been registered by other means.
Unlike this, it simply uses declaringClassName, not doing deep type discovery. code.
		if (source instanceof MethodMetadata) {
			param = findBeanType(definition, ((MethodMetadata) source).getDeclaringClassName(), ((MethodMetadata) source).getMethodName());
		}

Sample
A Function<Flux<S>, Flux<T>> class.
public class HelloWorld implements Function<Flux<String>, Flux<JSONObject>> {

    @Override
    public Flux<JSONObject> handle(Flux<String> s) {
        ...
    }
}

Issue: a bean registered by java config and its declaringClassName is HelloWorld, not Function<Flux<S>, Flux<T>>. Having issue discovering its reactive type parameters.
@Configuration
public class FunctionalBeans {

    @Bean
    public HelloWorld helloWorld() {
        return new HelloWorld();
    }
}

When invoking the function, the framework throws java.lang.ClassCastException: java.lang.String cannot be cast to reactor.core.publisher.Flux due to its type parameter being lost.
Workaround
The issue can be worked around by changing the bean's declaringClassName to Function<Flux<S>, Flux<T>>
@Configuration
public class FunctionalBeans {

    @Bean
    public Function<Flux<String>, Flux<JSONObject>> helloWorld() {
        return new HelloWorld();
    }
}

Actually this may have ben fixed prior as I could not reproduce it, but do remember similar issue from a while back. In any event, I've added a test to validate this scenario. The test is also back ported to 3.0.x branch


Add Module::validate API from Wasmtime

Closes https://github.com/paritytech/wasmi/issues/839.


Generated code is not handling the HTTP 401, 403, 404 . Code is failing with AttributeError: 'str' object has no attribute 'copy'

Generated code is not handling the HTTP 401, 403, 404 . Code is failing with AttributeError: 'str' object has no attribute 'copy'
I am trying to generate Python client for the Codebeamer ALM tool REST API.
Codebeamer REST API: https://codebeamer.com/cb/wiki/11631738
For example, I want to use list projects API , Refer: https://codebeamer.com/cb/wiki/11375774#section-Getting+the+list+of+available+projects
I used Codebemae’s OpenAPI 3.0.1 compliant JSON file to generate the python client like following.
openapi-python-client generate --path //mp/cb_openapispec_v3.json --meta none
Following is the snip one of the REST API:
from codebeamer_swagger_api_client import AuthenticatedClient, Client
from codebeamer_swagger_api_client.api.project import get_projects

def list_projects() -> None:

    client = Client(base_url="https://<server>/cb/api", headers={"Authorization": "Basic <base64_string>"},
                   verify_ssl="/tmp/all.pem")

    project_list = get_projects.sync(client=client)
    pprint(project_list)

The above code works fine when the Authrntication is correct. When I pass a wrong base64 string / Authentiction failure situation, I get following error.
Traceback (most recent call last):
  File "/CodeBeamer_REST_Tools/tools/cb_rest_pygen.py", line 45, in list_projects
    project_list = get_projects.sync(client=client)
  File "/CodeBeamer_REST_Tools/tools/generated/codebeamer_swagger_api_client/api/project/get_projects.py", line 118, in sync
    return sync_detailed(
  File "/CodeBeamer_REST_Tools/tools/generated/codebeamer_swagger_api_client/api/project/get_projects.py", line 105, in sync_detailed
    return _build_response(response=response)
  File "/CodeBeamer_REST_Tools/tools/generated/codebeamer_swagger_api_client/api/project/get_projects.py", line 82, in _build_response
    parsed=_parse_response(response=response),
  File "/CodeBeamer_REST_Tools/tools/generated/codebeamer_swagger_api_client/api/project/get_projects.py", line 67, in _parse_response
    response_401_item = AbstractReference.from_dict(response_401_item_data)
  File "/CodeBeamer_REST_Tools/tools/generated/codebeamer_swagger_api_client/models/abstract_reference.py", line 44, in from_dict
    d = src_dict.copy()
AttributeError: 'str' object has no attribute 'copy'

I try to debug the issue, Here is what I found.
Generated  code looks like below ,
def _parse_response(
    *, response: httpx.Response
) -> Optional[Union[List[AbstractReference], TooManyRequestsException]]:
    if response.status_code == 403:
        response_403 = []
        _response_403 = response.json()
        for response_403_item_data in _response_403:
            response_403_item = AbstractReference.from_dict(response_403_item_data)

            response_403.append(response_403_item)

        return response_403
    if response.status_code == 429:
        response_429 = TooManyRequestsException.from_dict(response.json())

        return response_429
    if response.status_code == 404:
        response_404 = []
        _response_404 = response.json()
        for response_404_item_data in _response_404:
            response_404_item = AbstractReference.from_dict(response_404_item_data)

            response_404.append(response_404_item)

        return response_404
    if response.status_code == 200:
        response_200 = []
        _response_200 = response.json()
        for response_200_item_data in _response_200:
            response_200_item = AbstractReference.from_dict(response_200_item_data)

            response_200.append(response_200_item)

        return response_200
    if response.status_code == 401:
        response_401 = []
        _response_401 = response.json()
        for response_401_item_data in _response_401:
            response_401_item = AbstractReference.from_dict(response_401_item_data)

            response_401.append(response_401_item)

        return response_401
    return None

In my case, code comes into 401 check loop, response.json is following ,
{'message': 'Not authenticated', 'resourceUri': '/cb/api/v3/projects'}

Then  AbstractReference.from_dict code is raising exception as “message” str object is passed as src_dict.
AbstractReference.from_dict code looks like below,
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
    d = src_dict.copy()
    id = d.pop("id", UNSET)

    name = d.pop("name", UNSET)

    type = d.pop("type", UNSET)

    abstract_reference = cls(
        id=id,
        name=name,
        type=type,
    )

    abstract_reference.additional_properties = d
    return abstract_reference

I think, in this situation, It should not even try to parse the response as its a 401 HTTP code. Instead it should raise an exception. I see the similar issues with 403, 404 handling as well.
Code generated with openapi-generator-cli.jar is handling this situation correctly. I get an exception.  openapi-generator-cli.jar produce following code for this error handling,
if not 200 <= r.status <= 299:
    if r.status == 401:
        raise UnauthorizedException(http_resp=r)

    if r.status == 403:
        raise ForbiddenException(http_resp=r)

    if r.status == 404:
        raise NotFoundException(http_resp=r)

    if 500 <= r.status <= 599:
        raise ServiceException(http_resp=r)

    raise ApiException(http_resp=r)

return r

Expected behavior
Security exception is raised.
Desktop (please complete the following information):

OS: Ubuntu 22.04 x64
Python Version: 3.10
openapi-python-client version : openapi-python-client version: 0.11.4

Thanks for reporting an issue @bakkiaraj!
I'm not seeing the actual OpenAPI schema in the link you provided—but it seems to me like the responses are not documented correctly in the schema—resulting in the generated code to expect the wrong thing. My guess is that the schema lists the responses as all having the same "$ref": "/components/schemas/AbstractReference" when they should be documenting the true return type (something that contains message and resourceUri in the example you posted).
So this seems like a bug in the API, not in this project.

I think, in this situation, It should not even try to parse the response as its a 401 HTTP code. Instead it should raise an exception. I see the similar issues with 403, 404 handling as well.

With OpenAPI, it's up to the API designers to inform consumers whether or not there is structured data to parse. In this case, it seems like there is structured data to parse ({'message': 'Not authenticated', 'resourceUri': '/cb/api/v3/projects'}) but that it is documented incorrectly.
This generator does not raise exceptions in any cases—it's expected that users will check the possible types of the documented responses and handle them however is appropriate for their use case (e.g., raising an exception, refreshing some tokens, retrying...).
If it turns out that this generator was misinterpreting the schema—and the responses actually were documented correctly, please reopen.


[WFCORE-4865] Upgrade Remoting JMX to 3.0.4.Final

https://issues.redhat.com/browse/WFCORE-4865
    Release Notes - Remoting JMX - Version 3.0.4.Final

        Bug

[REMJMX-166] -         IllegalThreadStateException after idle jmx connection

        Release

[REMJMX-169] -         Release Remoting JMX 3.0.4.Final

@darranl thanks


Some optimization of the queries constructed from SMARTS

The two big changes here are:

Instead of having [C] construct the query AND([atomic number=6], [isAliphatic]), it now constructs a composite AtomType query that captures both the atomic number and the aromatic/aliphatic state.
Instead of having unspecified bonds converted to the query OR([bond type=single],[bond type=aromatic]), it now constructs an IsBondTypeSingleOrAromatic query.

The net consequence of all this is an 10-20% bump in speed (at least with the set I was using for testing). That's not too bad.

I'm assuming that the speed up is not having to traverse deeper into the matching tree?
This looks pretty good to me so far.


Removed deprecated dependency

Description
It looks like https://github.com/run-llama/llama_index/pull/8016 added deprecated a month ago to help deprecate some interface.

Finishes the deprecation cycle (it's been a month)
Removes the deprecated dependency in favor of the built-in deprecation facilities (DeprecationWarning + warnings)

Re-runs poetry lock afterwards

This PR removes one of the dependencies of LlamaIndex, making it marginally lighter weight
Type of Change
Please delete options that are not relevant.

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

How Has This Been Tested?

[ ] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[x] I stared at the code and made sure it makes sense

Pretty sure DeprecationWarning + warnings do not show up for users by default (unless I was crazy testing last time lol)
I quite like the deprecated packages :)

Ah okay. No worries, going to close this out


rviz2 creates multiple nodes with the same name when Node name is set

Bug report
Launching an rviz2 node with the name argument set results in multiple nodes with the same name being spawned. I have only tried one .rviz config file that generates this behavior so far (from nav2_bringup
nav2_default_view.rviz.txt for reference, converted to .txt to allow upload), but the behavior seems to be related to how rviz is launched, so I don't think its only a config file issue.
Required Info:

Operating System:

Ubuntu 20.04

ROS2 Version:

Foxy binaries

Version or commit hash:

ros-foxy-rviz-assimp-vendor	8.2.1-1focal.20201210.052742
ros-foxy-rviz-common	8.2.1-1focal.20210225.225538
ros-foxy-rviz-default-plugins	8.2.1-1focal.20210225.235655
ros-foxy-rviz-ogre-vendor	8.2.1-1focal.20201210.052821
ros-foxy-rviz-rendering	8.2.1-1focal.20210125.200440
ros-foxy-rviz2	8.2.1-1focal.20210226.004041

Steps to reproduce issue

I can reproduce this issue both using the CLI and using Launch files.
On the commandline, with the attached file:
ros2 run rviz2 rviz2 -d nav2_default_view.rviz.txt --ros-args --remap __node:=test

Expected behavior
A single rviz node is created, with the name "test"
Actual behavior
4 rviz nodes are created resulting in the following warning:
[rviz2-4] [WARN] [1617916304.102991367] [rcl.logging_rosout]: Publisher already registered for provided node name. If this is due to multiple nodes with the same name then all logs for that logger name will go out over the existing publisher. As soon as any node with that name is destructed it will unregister the publisher, preventing any further logs for that name from being published on the rosout topic.

and ros2 node list output:
ros2 node list
WARNING: Be aware that are nodes in the graph that share an exact name, this can have unintended side effects.
...
/test
/test
/test
/test

Additional information
If the node name is not set (e.g. just running ros2 run rviz2 rviz2 -d nav2_default_view.rviz.txt), rviz runs as expected without any duplicate nodes.
ros2 node list
...
/rviz

I tried to reproduce this using the default rviz config (e.g. opening rviz without any arguments, saving the config, closing rviz, and rerunning rviz with the config file and a node name set) and only 1 node was created... So the behavior feels at least in part due the config file.

@shonigmann When launching with
ros2 run rviz2 rviz2 -d nav2_default_view.rviz
There are actually four nodes created:

/lifecycle_manager_localization_service_client
This is a (non-spinning) node used to call the lifecycle manager service.
/lifecycle_manager_navigation_service_client
This is a (non-spinning) node used to call the lifecycle manager service.
/rviz
The main rviz node.
/transform_listener_impl_<n>
A node created by the transform listener.

If you use: --ros-args --remap __node:=test, you're requesting that every node be renamed to test, which is what happens.
Instead, you can target the nodes individually, if you like:
rviz2 --display-config nav2_default_view.rviz --ros-args --remap rviz:__name:=test --remap lifecycle_manager_localization_service_client:__name:=lc_mgr_client
Check this page out for more details: https://design.ros2.org/articles/static_remapping.html

@mjeronimo, that makes sense, thanks for the clear explanation! I'll see if I can get a pull request in over on the nav2 stack to implement the more explicit node naming to avoid the warning message. Cheers


Add ability to get whole cookies within browser

Need feature to get all cookies (not from page.GetCookiesAsync which is returning current page cookies)
The need for this is that you dont know all url's to get cookies for them,
More than that Chrome DevTools Protocol permit that, but pupetter API's doesnt.
...

await page.GoToAsync("https://google.com/");
await page.GoToAsync("https://yandex.ru/");

var resp = await page.GetCookiesAsync(new string[0]); // returning cookies for last Url
// based on https://github.com/hardkoded/puppeteer-sharp/blob/master/lib/PuppeteerSharp/Page.cs#L629

// need to get all cookies?
// NetworkGetCookiesResponse is internal
// so i have to re-create it in the code
var resp2 = await page.Client.SendAsync<NetworkGetCookiesResponse>("Network.getCookies");

tldr; need ability to get all browser cookies from pupetter API without specifying concrete urls

Closed due to inactivity. Feel free to reopen it if needed.


Path simplification bug

Scour munges a few paths in http://en.wikipedia.org/wiki/File:Chrome_Logo.svg to look incorrect, specifically it breaks this path:

https://gist.github.com/1102020

(by ecmanaut)
Current output (r215), re-formatted in the same way for readability:

(by ecmanaut)
Specifically, it tries to join
s32.5-85.499-4-128.999
c0 0 14.001 22.833 15.834 42.333

into
s32.5-85.499-4-128.999
14.001 22.833 15.834 42.333

which apparently doesn't have the same effect.
There's a tiny missed optimization opportunity in there too;
c0 0-10.251 7.166-3.583 14.416
c6.666 7.25 29.333 31.666 56.083 33.916

can legally omit the second "c".

Duplicate of #91.


[Suggestion] Allow capability to modify modifiers values for upgrades

In some server, the values for upgrades are differents : Advanced upgrade 4 gives 80%. Is it possible to allow this configuration ?

Need to make a separate Settings page and migrate the existing settings button contents to that page. (Expensive End Game Recipes, White Tiger Recipes, Craft Resource Modifier). Then this feature could be added to the settings page


Fix/use ports instead of impl

use unit of work port instead of the Implementation to ensure dependencies are used  in one way  (infrastructure) --->(core domain)
use userRepositoryPort instead of the Implementation UserRepository

Thanks for the PR!
I left some comments

Entire code base refactored so this pull request no longer needed


worksnot very with wrapped lines.

It seems #13 fixed this problem. But it not works very well:
https://user-images.githubusercontent.com/42114817/226256694-ab659534-3565-4dc4-aece-1ea10854334b.mp4
As you see. When I press ctrl-d, then line numer become 43. But expected 21. :(

here is that file: shared-libraries.adoc.txt

copy from https://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html

Apologies, I missed this issue. Dealing with wrapped lines is notoriously difficult. If you use <C-d>/<C-u> in your document you'll notice that while the number of lines you move is more or less respected your cursor ends up on different heights. Essentially you need to choose to either respect the amount of lines moved or the height of the cursor. For scrolling my opinion is that keeping the cursor at the same height during the scrolling animation (and final position) is preferable and what most people would expect.

Thank you. In fact, except when writing asciidoc, I rarely encounter the problem of too long lines.  Currently I often use visual rows to move the cursor


feature: infer distinct from SetOperator

Proposed changes
Issue Number: close #xxx
Infer distinct from Distinct SetOperator, and put distinct above children to reduce data
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 43.95 seconds
stream load tsv:          457 seconds loaded<PHONE_NUMBER>9 Bytes, about 156 MB/s
stream load json:         23 seconds loaded<PHONE_NUMBER> Bytes, about 97 MB/s
stream load orc:          57 seconds loaded<PHONE_NUMBER> Bytes, about 18 MB/s
stream load parquet:          28 seconds loaded 861443392 Bytes, about 29 MB/s
insert into select:          68.7 seconds inserted 10000000 Rows, about 145K ops/s
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230627092034_clickbench_pr_168621.html

run buildall

run buildall


Lower links do not work

The lower section's links are broken.

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

ID: 06f54870-f12b-d72f-3899-a188bba87627
Version Independent ID: 06f54870-f12b-d72f-3899-a188bba87627
Content: Publish your app in the Microsoft Store - Windows apps
Content Source: hub/apps/publish/publish-your-app/overview.md
Product: reunion
Technology: apps
GitHub Login: @Karl-Bridge-Microsoft
Microsoft Alias: kbridge

Links have been corrected, thank you.


address field during signing up to app needs fixing

https://docs.greenitglobe.com/ThreeFold/proj_onboarding_tools/issues/118

'add address' pops up on top of the screen
not clear you need to add more address info (no scroll down or arrow or whatever).

Please see video

for 1.: Turns out this is a feature
for 2: This is a duplicate of #659


🐛 [Bug] Log print misleading error messages when there is unsupported operator

Bug Description
When we have some unsupported operator in a network, it will automatically fallback with some messages showing that this operator is not supported. However, currently the message is misleading because it shows as an error which may make users think the compilation failed.
To Reproduce
For example, have many errors such as this we I support MaskRCNN:
ERROR: [Torch-TensorRT - Debug Build] - Unsupported operator: aten::max.dim(Tensor self, int dim, bool keepdim=False) -> (Tensor values, Tensor indices)
/home/bo/Projects/detectron2/detectron2/structures/image_list.py(83): from_tensors
/home/bo/Projects/detectron2/detectron2/modeling/meta_arch/rcnn.py(226): preprocess_image
/home/bo/Projects/detectron2/detectron2/modeling/meta_arch/rcnn.py(199): inference
export_model.py(112): inference
/home/bo/Projects/detectron2/detectron2/export/flatten.py(294): forward
/home/bo/.local/lib/python3.6/site-packages/torch/nn/modules/module.py(1090): _slow_forward
/home/bo/.local/lib/python3.6/site-packages/torch/nn/modules/module.py(1102): _call_impl
/home/bo/.local/lib/python3.6/site-packages/torch/jit/_trace.py(965): trace_module
/home/bo/.local/lib/python3.6/site-packages/torch/jit/_trace.py(750): trace
export_model.py(121): export_tracing
export_model.py(221): <module>
Serialized   File "code/__torch__/detectron2/export/flatten.py", line 24
    _1 = ops.prim.NumToTensor(torch.size(t, 2))
    image_size = torch.stack([_0, _1])
    max_size, _2 = torch.max(torch.stack([image_size]), 0)
                   ~~~~~~~~~ <--- HERE
    _3 = torch.div(torch.add(max_size, CONSTANTS.c0), CONSTANTS.c1, rounding_mode="floor")
    max_size0 = torch.mul(_3, CONSTANTS.c1)

Expected behavior
Give a warning, rather than error.
Additional context
will raise a PR for this soon.

I have a fix for this as part of #918

For vis, related to #803


TECH: Update dependencies

TODO:

[x] Use latest aiohttp 3.5.4
[x] Add support for py37

Can you please update the README.md the Run the tests section? We don't support 3.4 now 🤷♂
And also, please rename the PR to include the ticket number

@epoplavskis have another look, please.
Few notes:

I did not upgrade HTTPretty to the most recent version as it was breaking 3.7 tests (this version is not officially supported).
after switching to the latest release of madedotcom's Contexts, 3.6 and 3.7 started failing. Using master's HEAD made them pass, so I used it.
The way I set the ClientReponse.reason is a bit different from what we discussed, but I believe it makes more sense to have it that way.


python/test: Add some unit test for handle_k8s_service

Description
Adding some tests
Related Issues
https://github.com/datawire/ambassador/pull/2353
Testing
Adding automated tests.

Merging since I got a local pass.


Prevent new title showing as old title in browser history

Hey, thanks for all the great work on these packages.
The issue I'm experiencing:
It seems that when changing the page title at the route level, the title updates before the old route is pushed to the browser's history.
E.g.
FlowRouter.route('/', {
   name: 'index',
   title(params, query, data) {
      return 'Home Page'
   }
});
FlowRouter.route('/page-2', {
   name: 'page-2',
   title(params, query, data) {
      return 'Page 2'
   }
});

Upon navigating to the site's index the browser's history will be like so:

All is well. However after navigating to Page 2, the history will be:

This is the issue. Page 2 should be Home Page. Navigating back will correctly take you to the home page, it's just the title in the history is incorrect.
This PR resolves the issue by adding a 0ms timeout to the setting of document.title.
Cheers,
Morgan

Hello @FishSaidNo ,
Thank you for contribution!

Do you have more insights? Like what browsers and platforms are affected?
Does it acts the same way when title is String?
Have you successfully ran tests after those changes?


tmctl dump -p kubernetes-generic

Experimental, low-effort feature that enables TriggerMesh integration deployment on any Kubernetes clusters with no prerequisites - tmctl dump -p kubernetes-generic produces vanilla Kubernetes Deployment objects. Can be | kubectl apply -f -'d on "empty" Minikube. One detail to keep in mind - if integration components require external services reconciliation, this process will take place in the CLI during initial creation, just like in any other cases.

FYI i did an update of all the CLI reference docs which now includes the new dump -kubernetes option as well as the new delete commands: https://github.com/triggermesh/docs/commit/fcb681b933bb86ee628dbff870cb86678b261b79


Encode both pre- and post-update versions in fixture-specific files

As I work to get #278 where it needs to be, I think it's becoming clear that we should double down on the concept introduced in #280, where the expected versions are encoded in a readable, comment-able file that's stored directly in the fixture.
The main benefit I think this will have is clarity. When you point a test case at a fixture, it will immediately know where it should start from, and where it should end up (assuming TUF doesn't throw an exception or abort the update).
@tedbow felt that the files should use YAML, and that's fine with me. It will necessitate adding a dev dependency on the Symfony YAML component (the YAML extension doesn't seem to install properly with PHP 8.2 on Windows).

On second thought, this won't work. Fixtures set initial conditions, but the final versions can vary depending on a number of factors. Those, then, should be encoded in the tests.


Make Markdown more interoperable

By disallowing the annoying link/image syntax that would cause terrible rendering bugs in other clients.
As result of this change, this note:
# titles still work

- lists
- still
- work

normal https://literal.links and `monospace` still work

**bold** and _italic_ still work

just [annoying](https://syntax-heavy.links/likethis) do not work, and ![the even](https://more.annoying/images.png)

normal images work fine: https://pixy.org/src/487/4870083.jpg

Renders like this:

That is the point: to discourage people from posting stuff in this syntax. They are rendering broken like that on every other client too.
But sure, let me see if there is a good fallback for this.


ts api

rebooting #1001 with a "typescript as documentation" approach.
Things to watch for:

[ ] Plot.valueof(undefined, () => {}) crashed
[ ]  Plot.map("foo") crashed
[x]  Plot.selectMinX potentially inserted undefined in the facet index
[x]  mid(x1, x2) was wrongly typed (it expected a data argument)
[x] the API for marker passed a Context as {document}, now just passes document: see e891948
[x] Plot.stackY crashes on some orders: ("z", "appearance", etc) and X or Y are missing
[x] The window transform used the percentile function with the wrong types

Probably superseded by #1320 which goes the d.ts route. Close?


0157-nfts/fee-subtype-Fee Schedule SubType

Related issue(s):
Closes #157
Applicable documentation

[ ] Javadoc
[ ] HAPI protobuf comments
[ ] README

We will have to update the PR once the protobuf is updated to FeeDataList


feat: slight shimmer around chat box while waiting for user input

make the chat input box glow very slightly if its waiting for input (make highlight look alive)
https://github.com/user-attachments/assets/83582441-9384-4a71-8c06-17337d535718

Addressed in the suggestion PR https://github.com/highlight-ing/highlight-chat-frontend/pull/482


Downloaded chapter arent saved to storage

Steps to reproduce
Just download a chapter
Expected behavior
After all page is downloaded, it should be saved.
Actual behavior
Instead, after all page downloaded, it failed to saved and shows error.
Crash logs
crashlog.txt
Mihon version
0.17.1
Android version
Android 12(DroiTong container under HarmonyOS Next)
Device
HUAWEI Pura 70 ultra
Other details
This container is very new, therefore it is uncertain if this it due to some issues in the container or is something can be done on the mihon side.
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have gone through the FAQ and troubleshooting guide.
[X] I have updated the app to version 0.17.1.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

You can just upload the crash log file instead of pasting the whole chunk of text here.
I'm inclined to say it's because you're trying to run the app in whatever container/unsupported setup.

From a Reddit post talking about this container thing:

You can just upload the crash log file instead of pasting the whole chunk of text here.
I'm inclined to say it's because you're trying to run the app in whatever container/unsupported setup.

From a Reddit post talking about this container thing (mainly about the file access bit):

I am sorry for the chunk. Edited with a txt file.
For reddit post you mention, it has no relationship for what he mentioned. He mention about the filesystem access between the host system and the container. But, mihon is running in container and saving in container, not writing to the host system, so it is not the case.

I just take a look on the code that cause the error, the issue is kind of weird. While using a similar api for creating file and renaming files in the code, which call the same api from Android, only renaming files crash the code. Probably is some issue with incomplete support to DocumentsProvider. Anyway, I have also contact the team of Droitong, see if they can follow up the issue.


[Authorization Logic] Move Antlr Generation Directory out of Source Tree

Currently antlr generates code in the source tree in the path src/parsing/anglr_gen. Having both tracked human-written code and untracked compiler-generated code in the same directory is confusing. It would be better to move this somewhere else, like a subdirectory of target.
This was attempted during the first PR, and proved to be a bit tricky, but perhaps it can be solved with more time/effort
Notes:

There is code in the Oak repository that does something similar.

I tried to get it working in this WIP branch, but I get errors when trying to compile the generated rust code. The errors are about annotations in the generated code, for example:

error: an inner attribute is not permitted in this context
 --> src/parsing/antlr_gen/../../../target/antlr_gen/authlogiclexer.rs:2:1
  |
2 | #![allow(dead_code)]

It looks like other people have run into similar issues with annotations in generated code. It seems like the only fix people on the internet have found is to change the generated code (which is going to be hard in this case).
@conradgrobler

This was fixed for the CPP version. Rust version is not relevant.


Example for AuthUserBasic usage needed

I'm sorry for spamming this tracker/repo but I need an example for the usage of AuthUserBasic. Regardless what I try to import or subclass the AuthUserBasic, at the end it is
NameError: name 'AuthUserBasic' is not defined

@gi0baro are you more happy with stuff like this over here or on StackOverflow? I plan to use this framework for one of my projects productive :).

@GiantCrocodile no problem :) Maybe you can use the weppy user group for questions regarding the development of applications, I'm not sure at the moment I have the time to follow every weppy question on stackoverflow :/
Anyway, I've just tested:
(weppytest)➜  Test  python
Python 2.7.8 (default, Nov  6 2014, 14:53:57)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.54)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from weppy.tools.auth.models import AuthUserBasic
>>> AuthUserBasic
<class 'weppy.tools.auth.models.AuthUserBasic'>

So, seems that information available in auth chapter of docs are correct :)


CI yaml fixed after PR 60 changes, Whitelist regexp fix

@zakkak Seems fine now. Ad perf results: I will examine them on a baremetal lab box.


TextArea can't auto-size based on content

When you have a BTF:
Box(
  Modifier.heightIn(min = minTextAreaHeight, max = maxTextAreaHeight),
  contentAlignment = Alignment.TopStart,
) {
  BasicTextField(state = myState, modifier = Modifier.fillMaxWidth())
}

It will size itself based on the number of text lines in the state, and the heightIn modifier. When empty, it matches the min; when there are too many lines to fit in the max it'll stop growing and start scrolling.
However, the same does not happen with TextArea:
Box(
  Modifier.heightIn(min = minTextAreaHeight, max = maxTextAreaHeight),
  contentAlignment = Alignment.TopStart,
) {
  TextArea(state = myState, modifier = Modifier.fillMaxWidth())
}

The TextArea will always stretch until max, regardless of its text contents.

It may be worth simplifying how the TextArea scrollable layout is handled, by decoupling it from ScrollableContainer, and/or fix the ScrollableContainer implementation. The main issue is that doing a 2D scrollable container adds a lot of complexity and requires a number of compromises, and it's even unclear if 2D scrolling in Compose for Desktop is working at all anyway. We should likely deprecate/remove the 2D version and focus on one axis only until proper support at a higher level than draggable2D is available in Compose.


problem with creating link (angular)

When I am creating a link, "Open in new window" option does not work, I can't check it.  Next, when editing links, "Open in new window" option does not work also.
I use:
summernote 0.8.3
angular-summernote 0.7.1
How can I fix this problem?
Thanks

Hi, I think the version of your summernote should be the same as the version of angular-summernote to work correctly. Check the in README.md for further.


Auto completion widget shows even after line return

Description
What steps will reproduce the problem?

Type

import numpy as np
np.as

Type <TAB> + <RETURN> very quickly

Versions

Spyder version: 4.0.0.dev0 db6848f80
Python version: 3.7.3
Qt version: 5.9.1
PyQt5 version: 5.9
Operating System: Darwin 18.5.0

Dependencies
pygments >=2.0    :  2.3.1 (OK)
qdarkstyle >=2.6.4:  2.6.5 (OK)
sphinx >=0.6.6    :  1.8.5 (OK)
psutil >=0.3      :  5.6.1 (OK)
pyls >=0.19.0     :  0.25.0 (OK)
nbconvert >=4.0   :  5.4.1 (OK)
pandas >=0.13.1   :  0.24.2 (OK)
numpy >=1.7       :  1.16.2 (OK)
sympy >=0.7.3     :  1.3 (OK)
cython >=0.21     :  0.29.6 (OK)
qtconsole >=4.2.0 :  4.5.0.dev0 (OK)
IPython >=4.0     :  7.3.0 (OK)
matplotlib >=2.0.0:  3.0.3 (OK)
pylint >=0.25     :  2.3.1 (OK)

Is there currently a timer to trigger this? If we do not we should probably have a small one to get rid of this issues

The time is whatever time lsp takes to come back with a reply. The way I do it in #9260 is to check if the autocompletion has not gone stale in the meanwhile.

Yes, I think we need a timer could help in this situation

I am not sure I understand how a timer would help? Surely you want the completion to happen as quickly as possible?


Ability to search for users and their content using their public address

We have a search bar in the header, need to integrate proper filter with relay and event in order to search and follow users

Could we implement the DID's where tags can be filtered or names

Yes, if I am not wrong it is already there in nostr protocol. We will start off with public address, since it is the easiest and then look into decentralized identities based event filtering.

Implemented in #78


Add dispatchNamespace to TraceItem

Adds a property called dispatchNamespace on TraceItem so that Workers for Platforms customers can tell which namespace a script emitted trace events from.

recheck

I have read the CLA Document and I hereby sign the CLA

recheck

Grr... CLAassistant is being annoying again. Going to bypass the check since this clearly is ready to go otherwise.


add support for pcap-ng

This commit adds support for pcap-ng.  The pcapio.Reader interface
was tweaked a bit to accommodate the changes so that a Reader can
be either a pcap-ng reader or a legacy pcap reader.  pcapio.Reader
uses the same trick as zio to autodetect whether input is pcap-ng
or pcap legacy.
The pcap-ng parsing code is derived from
https://github.com/google/gopacket/.
We added a simple test for pcap-ng along the lines of the pcap test
that was already there.  Testing is still limited for pcap and
needs to be addressed in a future PR.

I noticed this earlier and wanted to dig in to the PR and ranger to understand things but didn't get around to it, so... some very black-boxy feedback:
It looks like result of pcap index on a (legacy) pcap file have changed with this PR.  Is this expected?
Here's master:
    "Index": [
      {
        "X": 24,
        "Y0": 0,
        "Y1":<PHONE_NUMBER>719396000
      },
      {
        "X": 390608,
        "Y0":<PHONE_NUMBER>719400000,
        "Y1":<PHONE_NUMBER>739203000
      },
      {
        "X": 799324,
        "Y0":<PHONE_NUMBER>739205000,
        "Y1":<PHONE_NUMBER>755799000
      },
      {
        "X": 1114496,
        "Y0":<PHONE_NUMBER>755801000,
        "Y1":<PHONE_NUMBER>765437000
      },
      {

and on this branch:
    "Index": [
      {
        "X": 24,
        "Y0":<PHONE_NUMBER>699327000,
        "Y1":<PHONE_NUMBER>719400000
      },
      {
        "X": 390684,
        "Y0":<PHONE_NUMBER>719488000,
        "Y1":<PHONE_NUMBER>739205000
      },
      {
        "X": 799400,
        "Y0":<PHONE_NUMBER>739251000,
        "Y1":<PHONE_NUMBER>755801000
      },

It looks like result of pcap index on a (legacy) pcap file have changed with this PR. Is this expected?

I didn't expect that but I'm not surprised, so I'll have a look.  It looks like it still is correct, but I will double check.  Probably won't get to this for a few hours.
I changed a lot and found and fixed several bugs so I'll try to do some more comprehensive QAing...

It looks like result of pcap index on a (legacy) pcap file have changed with this PR. Is this expected?

I didn't expect that but I'm not surprised, so I'll have a look. It looks like it still is correct, but I will double check. Probably won't get to this for a few hours.
I changed a lot and found and fixed several bugs so I'll try to do some more comprehensive QAing...

Ok @henridf, I looked at this a bit closer and I think the newer code handles the first point correctly with the re-write to handle pcap-ng.  The first index entry should be X=24 (the size of the pcap legacy header and the Y0/Y1 range should be the timestamp range, which should not start from 0 as with the old code in master.


Incorrect cursor indentation in PHP files with queries/php/indents.scm

Describe the Bug
When editing a PHP file in Neovim with the current queries/php/indents.scm configuration, adding a new line places the cursor at the beginning of the line instead of aligning it correctly with the surrounding code or block. This issue occurs even in cases where no custom indentation logic should apply.
Steps to Reproduce

Open a PHP file in Neovim.
Press o to insert a new line.
Observe that the cursor starts at the beginning of the new line instead of being correctly indented.

Screen shoot

Expected Behavior
The cursor should align with the surrounding indentation level or the current code block, as expected for most programming languages.
Note: If I remove queries/php/indents.scm file. the indent behavior is correct.

Thanks for reporting!


botman Framwork Redis Storage

i  useded in botman Framwork Redis Storage

when disconnected connect i have this error

See error
[Wed Nov  2 12:48:49 2022] PHP Fatal error:  Uncaught ErrorException: fclose(): supplied resource is not a valid stream resource in //vendor/predis/predis/src/Connection/StreamConnection.php:247
Stack trace:
#0 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleError()
#1 //vendor/predis/predis/src/Connection/StreamConnection.php(247): fclose()
#2 //vendor/predis/predis/src/Connection/StreamConnection.php(49): Predis\Connection\StreamConnection->disconnect()
#3 [internal function]: Predis\Connection\StreamConnection->__destruct()
#4 {main}
thrown in //vendor/predis/predis/src/Connection/StreamConnection.php on line 247

[Wed Nov  2 12:48:49 2022] <IP_ADDRESS>:34146 Closing
Versions (please complete the following information):

Predis: [2.0.3]
PHP [7.4]
Redis Server [6.0.6]
OS [e.g. Ubuntu 20.04]

Similar to #793 and #801.
@googleshokry: Can you open a PR with a fix?


serialization: obfuscate the serialized search paths

We noticed some Swift clients rely on the serialized search paths in the module to
find dependencies and dropping these paths altogether can lead to build failures like
rdar://85840921.
This change teaches the serialization to obfuscate the search paths and the deserialization
to recover them. This allows clients to keep accessing these paths without exposing
them when shipping the module to other users.

@swift-ci please smoke test


net/url: unexpected url encoding for ! in path

What version of Go are you using (go version)?

$ go version

Does this issue reproduce with the latest release?
alway Exist
What operating system and processor architecture are you using (go env)?
go env Output
$ go env

What did you do?

func TestEncodedUrlPathEncode(t *testing.T) {
	urlString := "http://www.xyz.com/!^test.jpg"
	parsedUrl, _ := url.Parse(urlString)
	rawUrl := parsedUrl.EscapedPath()
	fmt.Println("encodedUrl：",rawUrl)
}

func TestEncodedUrlPathEncode(t *testing.T) {
	urlString := "http://www.xyz.com/!test.jpg"
	parsedUrl, _ := url.Parse(urlString)
	rawUrl := parsedUrl.EscapedPath()
	fmt.Println("encodedUrl：",rawUrl)
}

What did you expect to see?
for example
originUrl：https://github.com/!test.jpg
encodedUrl: https://github.com/!test.jpg    --- result is expected

originUrl: https://github.com/!^test.jpg
encodedUrl: https://github.com/%21%5Etest.jpg
expected: https://github.com/!%5eds.jpg

What did you see instead?
func (u *URL) EscapedPath() string {
	if u.RawPath != "" && validEncoded(u.RawPath, encodePath) {
		p, err := unescape(u.RawPath, encodePath)
		if err == nil && p == u.Path {
			return u.RawPath
		}
	}
	if u.Path == "*" {
		return "*" // don't escape (Issue 11202)
	}
	return escape(u.Path, encodePath)
}

i found the code int sdk, "validEncoded" method treat the "!" as encoded,  but in "escape" define "!"  need encoed when mode is “encodePath”， where is judged in method "shouldEscape", logic conflict, so the result is not expected.
and i found other language do not encode "!" "(" ")" , such as python

Looking at RFC 3986 ^ must always be percent encoded while ! may avoid percent encoding depending on its position in the URL. Section 3.3 indicates that ! need not be escaped. However any character in a path element may be percent escaped, for example https://google.com/a and https://google.com/%61 are identical.
I agree that the addition of a character that must be escaped into a path element triggering other sub-delims to be percent encoded is surprising, but by my reading of the RFC not wrong.
Can you explain how you found this issue and what problem is it causing for you?

i found this，cause i build a web proxy use go，a url through this proxy，the “!” has been encoded to "21%"，but the dest server also a proxy， dest server has a lot of rules to dispatch the request ，one of them is match the char “!”，because  the "!" was encoded to "21%" when the request  pass through my proxy server,  so the dest server can not match correctly

/cc @rsc @bradfitz

I also faced the same issue while I try to utilize Microsoft's Graph API.
What I experienced was the password which I need to get a JWT in below post request fails
https://login.microsoftonline.com/{{TenantID}}/oauth2/v2.0/token
`package main
import (
"fmt"
"net/url"
)
func main() {
password := "my!pass*w'-ith(and)%[]"
fmt.Println("Password : " + password)
fmt.Println("Password QueryEscape" + url.QueryEscape(password))
fmt.Println("Password PathEscape" + url.PathEscape(password))

fmt.Println("Expected Output : my!pass*w'-ith(and)%25%5B%5D")

}`
Output :
$ go run main.go  Password : my!pass*w'-ith(and)%[] Password QueryEscapemy%21pass%2Aw%27-ith%28and%29%25%5B%5D Password PathEscapemy%21pass%2Aw%27-ith%28and%29%25%5B%5D Expected Output : my!pass*w'-ith(and)%25%5B%5D
My experience with postman can get the token without any issue.
But when I do the same in Go Native I face the issue since we need to encode the password to generate x-www-form-urlencode. I believe this happens because Go is strict rfc-3986 compliance. But this could lead to many of the API Services built with JS will fail to communicate with Go applications since they use encodeURIComponent()
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent
Posman Screenshot :

it seems that we produce a valid encoding. use RawPath if you need some kind of unescaped variant.


Bug submenu routing tooltip

Version
Browser and OS info
Chrome 69 / Windows 10 x64
Steps to reproduce
Open vue-devtools,  hover on menu item routing, and on the first item in this menu
What is expected?
see tooltip menu item mouse
What is actually happening?
tooltip was shown under my mouse, after this hover leave menu and menu closing

Change position of this tooltip on hover
Vue devtools 5.0.0 beta 3

+1 for this one.
Just to explain it in more detail (I think this is the same issue as described above), when you hover over the routing dropdown, 2 menu items appear in the dropdown. If you hover over the first item, after a moment, a tooltip appears below the cursor, which in turn, causes the dropdown to disappear.
See gif attached of the issue.

Now fixed


[release-1.15] Bump helm.sh/helm/v3 from 3.9.3 to 3.9.4

Manual cherrypick required.
#40717 failed to apply on top of branch "release-1.15":
Applying: Bump helm.sh/helm/v3 from 3.9.3 to 3.9.4
Using index info to reconstruct a base tree...
M	go.mod
M	go.sum
Falling back to patching base and 3-way merge...
Auto-merging go.sum
Auto-merging go.mod
CONFLICT (content): Merge conflict in go.mod
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 Bump helm.sh/helm/v3 from 3.9.3 to 3.9.4
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

Merged as part of #40732


Module web3-v1-contracts

Hi i wanted to run tests on swappa but i cant find module to install for the import {} from '../../types/web3-v1-contracts/... to work.
Example of error : Cannot find module '../../types/web3-v1-contracts/IERC20' or its corresponding type declarations.

You need to run:
> yarn
> yarn build

to install dependencies and compile code


Campaigns folder upload to make static urls work

Please upload campaigns folder to root to make static urls like below to work.
Fix #1114
Before: https://main--moleculardevices--hlxsites.hlx.page/campaigns/en/chart-your-own-course
After: https://campaigns--moleculardevices--hlxsites.hlx.page/campaigns/en/chart-your-own-course
Before: https://main--moleculardevices--hlxsites.hlx.page/campaigns/en/b/chart-your-own-course
After: https://campaigns--moleculardevices--hlxsites.hlx.page/campaigns/en/b/chart-your-own-course
Before: https://main--moleculardevices--hlxsites.hlx.page/campaigns/de/legen-sie-ihren-eigenen-kurs-fest
After: https://campaigns--moleculardevices--hlxsites.hlx.page/campaigns/de/legen-sie-ihren-eigenen-kurs-fest
Before: https://main--moleculardevices--hlxsites.hlx.page/campaigns/eu/chart-your-own-course
After: https://campaigns--moleculardevices--hlxsites.hlx.page/campaigns/eu/chart-your-own-course
Before: https://main--moleculardevices--hlxsites.hlx.page/campaigns/fr/tracez-votre-propre-chemin
After: https://campaigns--moleculardevices--hlxsites.hlx.page/campaigns/fr/tracez-votre-propre-chemin
Before: https://main--moleculardevices--hlxsites.hlx.page/campaigns/zh/chart-your-own-course
After: https://campaigns--moleculardevices--hlxsites.hlx.page/campaigns/zh/chart-your-own-course
Before: https://main--moleculardevices--hlxsites.hlx.page/campaigns/zh/b/chart-your-own-course
After: https://campaigns--moleculardevices--hlxsites.hlx.page/campaigns/zh/b/chart-your-own-course

LGTM as well , hope all redirects will work fine after merge!


impersonators on Disqus sites

Really impressed and pleased with the extension, I noticed, however that it doesn't handle impersonators on Disqus forums well. Looks like you're using the user's name to identify a 'hushed' poster, but abusers on that forum often spoof the names of legit users.  Why not use the 'data-username' attribute instead?

Huh - I hadn't noticed that property. Yeah, I'll switch to using that to identify users. I just first need to work out a transition plan...

I was fiddling with some similar code a while back, but other work got in the way. One thing I noticed about that attribute is that on at least one occasion it was blank. I suspect the spammer had registered using special characters, or a line-feed code or something like that, so that it would break the disqus template. It may be that an option to 'hush' people with a missing or malformed 'data-username' would defeat the more clever spammers.
Again, thanks for your work.

Presumably, if I base blocking around that property, the first such clever spammer hushed will cause all similar spammers with blank data-username to also be hushed.

I guess your right about that.
From: Daniel Martin<EMAIL_ADDRESS>Sent: Thursday, July 09, 2015 1:18 PM
To: fizbin/killfile-extension
Cc: Jefferson Wood
Subject: Re: [killfile-extension] impersonators on Disqus sites (#1)
Presumably, if I base blocking around that property, the first such clever spammer hushed will cause all similar spammers with blank data-username to also be hushed.
—
Reply to this email directly or view it on GitHubhttps://github.com/fizbin/killfile-extension/issues/1#issuecomment-120134239.

Any news about it? I started using your extension today and also was surprised you're not using data-username attribute.

Okay, having now gotten around to looking at it in detail, it seems that I did actually use the disqus attribute, but at some point it changed from being data-user to being data-username, and that meant that I lost the per-disqus-id tracking. Well, that and I had a bug in my regex that meant I had trouble matching attributes properly in any case.
Fix should be on its way.

Version 0.2.7 is up for Google Chrome and Firefox that should resolve this; however, as I don't regularly visit sites with name-changing trolls like this, I may not fully understand the problem or the desired solution. Do you have an example of a discussion where this would have been useful?

Is data-username really used? I looked into Disqus thread and I see that under dtm_killfile_user display names are stored, not real user names.
Like here:

data-username is disqus_EUgvSrERxV
display name and dtm_killfile_user (at commenttopxpath) is mr.nobody

If 2 different people have the same display name, would Killfile hush them both?

Are you sure you're using the latest version of killfile? (0.2.7)
I look there, and see:
<div data-role="post-content" class="post-content dtm_killfile_commentholder target dtm_killfile_commentholder_showcomment" dtm_killfile_user="mr.nobody!disqus_EUgvSrERxV">

So data-username is used exactly as "url" is in many of the other blog scenarios.

Ah, my fault. I had my local version enabled, not official from Extensions Repository, and it was not up to date. I checked again and yes, I see dtm_killfile_user="mr.nobody!disqus_EUgvSrERxV". Seems good.


Update README.md

Updated the documentation with a more detailed description of the project and its features, a frequently-asked-questions section, and pre-requisites for usage.

Note: This pull request was made as part of a school assignment, so feel free to disregard.


Add module block to SDL

The current version of SDL and migrations does not allow expressing the migration of interdependent modules because a single SDL blob is only supposed to reference one module. The solution to this is to force SDL to express the entire user-schema in the context of migration. This means that a single SDL block must denote unambiguously which modules the various entities belong to. There are two mechanisms proposed for that:

Fully-qualified names for all entities (except ones belonging to std, since that's always built-in in all contexts).
A special module <name> { ... } block. All inner SDL inside this block is understood to have the default module <name>. It is possible to have multiple module blocks with the same name in a single SDL document.

The total list of modules in the schema is inferred from module block names and from fully-qualified names.
Example of SDL using module blocks:
module default {
   # the default module here is "default"
   type Foo {
      # the module "std" is also part of the default name
      # resolution as usual
      property name -> str;
      link bar -> other_mod::Bar;
   }
}

module other_mod {
   # the default module here is "other_mod"
   type Bar {
      link bar -> Bar;
      link foo -> default::Foo;
   }
}

And the same schema expressed using only fully-qualified names SDL:
# only the "std" module can be omitted here, all other
# names have to be fully-qualified, even "defaut"
type default::Foo {
   property name -> str;
   link bar -> other_mod::Bar;
}

type other_mod::Bar {
   link bar -> other_mod::Bar;
   link foo -> default::Foo;
}

The following schemas are also equivalent:
# Multiple module blocks with the same name
module default {
   type Foo;
}

module other_mod {
   type Bar;
}

module default {
   type Foo2;
}

# Each module block has a unique name
module default {
   type Foo;
   type Foo2;
}

module other_mod {
   type Bar;
}

# Mix of fully-qualified names and module blocks
type default::Foo;

module other_mod {
   type Bar;
}

module default {
   type Foo2;
}

It's unclear from the text:
type User {
}
module other {
  type User { }
}

Is the first User's fully quaified name is User? Or ::User? Or something like in postgres: public::User?

All inner SDL inside this block is understood to have the default module

Does it mean "default module" when referring things. Or when defining too? I mean can I do:
module first {
  type other_top_level_module::User {
  }
}

The options 1 and 2 are mutually exclusive, meaning:

A fully qualified name (so a name of the form <module>::<shortname>) can only be used in a declaration that is not nested in any module block. It is also a requirement to use fully-qualified name in this case.
It is illegal to use fully-qualified name in a declaration inside a module block, only short names are allowed.

This is legal:
type default::User;
module other {
   type User;
}

This is not legal:
# this name is not fully-qualified
type User {
}
module other {
  type User { }
}

Okay, here is my second take on it.
TL;DR: This text explains three things that are mostly required at the same time:

A top-level namespace say app::
Nested namespaces
Everything built-in under std::

And here is why.
Top-Level Namespace
Rationale
Say you have defined a top-level function:
CREATE FUNCTION session() RETURNS Session AS $$...$$

What's a fully qualified name of it? Is it just session ? This basically means there can't be any standard or installable module named session. If latter exists, it can't be used.
Note: that some kind of fully-qualified-syntax doesn't work here, because ::session is the same fully qualified name.
Note 2: If you say that ::session can't refer to application types, you have a second problem:
type User {}
module something {
  type User {
    parent -> ::User;  # <-- how to refer to the outer user.
  }
}

A bit offtopic story for Rust:

In Rust 1.0, you could refer by user::User to either current crate's module user or to the external crate user. In Rust 2018, the latter is referred to by crate::user. Because that was a big source of confusion and conflicts. (I can find proof links if needed).
This is essentially what I'm proposing here as app:: namespace.

Proposal
Add default namespace for all the things in current application. I propose name app:: but we can find a better name.
So basically if you define something like this:
type User {}

It can be referred to as app::User or ::app::User everywhere.
Nested Namespaces
If we go with app:: let's take a look at this fragment:
type User {}
module admin {
  type User {
    parent -> app::User;
  }
}

This essentially describes nested structures. So fully qualified names should rather be app::User and app::admin::User rather than app::User and admin::User. This is also helpful to avoid conflicts with an external package named admin.
The Nested std:: Namespace
Now, this is twofold, it's both: is backed by the idea of nested namespaces and supports it.
Let's say we want to add module for working with complex numbers:

We can add it as std::complex::Number
Or we can add it as complex::Number

Note the first would just work. The second is more problematic. If you already have such a module in your app it's not a problem, because all your things are in app::. But if you have an external package with such name it means:

Either it can break right away
Or we can allow disabling stdlib module in some way
Or we can allow renaming stdlib module in some way

Note that (1)-(2) doesn't even allow start using new module to then migrate data. And (3) is kinda working but very confusing.
Note 2: unlike in Rust I expect modules to store data in the DB (i.e. Type is essentially a table, right?), so you can't freely rename imports back and forth.
Final notes
So I think that all three: app:: namespace, nested namespaces, and nested std are needed.
Some things like the cal module can really be considered as external modules installed everywhere, so basically can be top-level, but adding them later can be a problem.
And also if we're speaking about "packages": yes packages should bring only one top-level namespace (I mean package x_y can't inject anything to x::y:: namespace). But there are lots of legitimate uses on namespaces within the package (I can elaborate more, just this is already a long read, and I think justification above is enough).

A top-level namespace say app::

This is already the case. We do have a top-level default module called default::.  The name is different from what you propose, but the intent is the same.
OT: @vpetrovykh Could you please add a "Name Resolution" section to EdgeQL/Overview? It looks like the name resolution algorithm and the default module particularities aren't properly documented (or discoverable).
BTW, it is possible to change what's the default module per query using WITH MODULE another_default SELECT Abc or for the current connection session, using the SET MODULE another_default command.

Nested namespaces

Yes, let's leave the door open for them, meaning that there will be no syntax that prohibits us adding them later in Alpha 2. We don't have engineering capacity to implement them before Alpha 2 or even 1.0. They can be a feature in 2.0 or something.
Having some top-level builtin modules is OK, we won't have too many of them.  Right now it's std, math, sys, cfg.  I imagine we'll add cal (soon), net (maybe before 1.0) and gis (at some point of time as an optional extension). Even if we add a couple more in the next few years it shouldn't cause too much problem.
BTW we can brainstorm and add a list of future-reserved module names; that's quite doable and we can add stuff to the list until 1.0 final is released.
If we realize that we plan to add a big number of modules in 2.0 we can then add nested namespaces and start compartmentalizing that new stuff.
Essentially what I'm trying to say here is that rushing support for nested modules before Alpha 2 isn't necessary.  Although making sure we can add them later is.  Let's focus our discussion on that.

CREATE FUNCTION session() RETURNS Session AS $$...$$

This will create a session() function in the current default module.  All names in EdgeDB are fully qualified, always.

Either it can break right away
Or we can allow disabling stdlib module in some way
Or we can allow renaming stdlib module in some way

[..]
Note 2: unlike in Rust I expect modules to store data in the DB (i.e. Type is essentially a table, right?), so you can't freely rename imports back and forth.

Option 4: we'll make it possible to create a schema migration that renames a module. That should cover those rare cases when a new version of EdgeDB clashes with some local module. We need to add an ALTER MODULE to our existing module DDL commands.
FWIW there are other scenarios when a user would need to update their code/queries/schema for a new DB version — one of them is when a new reserved keyword is added to the query language. You cannot make it so that it's possible for users to blindly upgrade their DB, unfortunately.

This is already the case. We do have a top-level default module called default::. The name is different from what you propose, but the intent is the same.

I don't challenge the name. But let's look at adding nested namespaces later:
type User {}
module web {
  type Session {}
}

So basically we have default::User and web::Session, right?
Then when we add nested namespaces, we can't add them in rust way:
module session {
  module oauth {
  }
}

Because that means the user can't make default::subnamespace::something (well, it's one look at the things, but inconvenient.
If we add them in C++ way:
type User {}
module default::files {
  type
}
module session::oauth {
  type X {
    user -> User;         # <-- Okay now
    file -> files::File;  # <-- can I refer it like this? Or should I use default::?
  }
}

Still keeps a lot of questions on consistency.
I also find module { module {}} nicer for name resolution (I can elaborate about it).

We don't have engineering capacity to implement them before Alpha 2

Sure, I have thoughts about that. But, let's define goal first, and then cut down MVP.

Option 4: we'll make it possible to create a schema migration that renames a module.

At a glance, that requires altering all the queries in the app too.

Because that means the user can't make default::subnamespace::something (well, it's one look at the things, but inconvenient.

Good point! @elprans thoughts?

At a glance, that requires altering all the queries in the app too.

True.

We don't have engineering capacity to implement them before Alpha 2

Sure, I have thoughts about that. But, let's define goal first, and then cut down MVP.

Actually, Elvis, how long do you think we need to implement nested namespaces? If it's on the order of 1-2 days we should consider that.

Because that means the user can't make default::subnamespace::something (well, it's one look at the things, but inconvenient.

Good point! @elprans thoughts?

Not sure I understand the problem.  The "default" module is in no way special, it's just a convention to SET MODULE default (like SET search_path = public in Postgres).
type User {}
module default::files {
  type
}

This is not a legal SDL syntax per the proposal above.  You must either qualify the name, or put it inside the module block.  I see no conflict with possible future addition of nested modules.

This is not a legal SDL syntax per the proposal above. You must either qualify the name, or put it inside the module block. I see no conflict with possible future addition of nested modules.

Ah, right.

type User {}
module default::files {
type
}
This is not a legal SDL syntax per the proposal above

I've explained that I don't like that syntax, and you have not addressed that issues.

Actually, Elvis, how long do you think we need to implement nested namespaces?

Okay, if we can't separate question of what we want implement at all from what we can implement now, here is my approach:

Just disable module {} for now
(optionally) Move all std modules to nested std::
Rename default:: to app:: or whatever (with the current semantics default:: is okay, but if we put all the user's submodules to this namespace it's ugly)

Now I expect the complexity of nested namespaces come from how we're going to store users namespaces, and how name resolution inside the module works. I.e. moving submodules to std should not be hard.
Okay, as I've said we can keep stdlib modules at top namespace, if we really want to.
Few arguments from the internal chat:

Python has had no problems introducing new modules to the stdlib.

Well, remember why absolute imports appeared? Before them, there were numerous cases where import something was in conflict with stdlib of the same name (I can find examples in popular libraries if you wish).
In python, we don't have this problem specifically because all your own modules are in a single toplevel package/namespace and all imports are absolute.
What you're basically proposing is what was in python before absolute imports:
type User {}
module math { # conflict
}

In python:
app/__init__.py
app/math.py  # no conflict, can import either this or stdlib module math

And yes, fixing this means nested namespaces for app, but yes we can keep stdlib modules in top level.

Technically, you can still use math::log() because std:: is always imported, so this isn't a problem.

But then how are nested namespaces improving forward compatibility in any way? :)

Here's how shadowing works:
module complex {
}
type Geometry {
  point -> complex::Complex;  # <-- app module complex
}

If we introduce complex stdlib module, it can be referred only as ::std::complex (my option) or
::complex (flat std namespace). And app's module can be referred to as ::app::complex (but don't need too).
If you don't put apps' modules to a nestted namespace, your ::complex is application's module.

@tailhook

I've explained that I don't like that syntax, and you have not addressed that issues.

Please re-read the messages in this thread carefully.  Your criticism is against the syntax that is NOT VALID per this proposal.  Again, the only valid form would be the one, where every definition is explicitly, an unambiguously qualified:
type default::User {}

# OR

module default {

  type User {}

}

Nesting module {} blocks and using fully qualified names to define schema objects inside a module{} block is NOT supported.  When, and if, we decide to allow nesting modules, we can enable this.

Rename default:: to app:: or whatever (with the current semantics default:: is okay, but if we put all the user's submodules to this namespace it's ugly)

I'm not against changing the conventional name of the default module.

If you don't put apps' modules to a nestted namespace, your ::complex is application's module.

We cannot force users to put everything under "app", can we? What we can do is to put up a set of recommended practices, and that might just as well recommend using a prefix for application modules, e.g "app_foo", which isn't much different from "app::foo".  This is what people have been happily doing with Django and RoR, both of which have large ecosystems of modules.
I'm not convinced it's worth pursuing an elaborate Rust-like module system at this time.  Nesting and scoping rules bring higher complexity and raise the learning curve, whereas the advantages of formally nested module system vs a flat one are unclear.
I think good documentation and clear conventions, which are, importantly, followed by the client tooling, can achieve the same effect.  For example, the edgedb migration tool can adopt a convention of concatenating directory names to form module names, so schema/app/module/submodule.esdl becomes app_module_submodule:: or something like that.

@tailhook

I've explained that I don't like that syntax, and you have not addressed that issues.

Please re-read the messages in this thread carefully. Your criticism is against the syntax that is NOT VALID per this proposal.

That's entirely true. What I'm arguing there is what syntax would be if we allow nesting modules. And that is important for the naming scheme.
Also, you're making an argument that the problem could be solved by a future syntax I'm arguing is bad.

We cannot force users to put everything under "app", can we?

That's my point. We're discussing two options (are there any third one?):

We have a default module and module custom {}, the latter is top-level
We have an app module and module custom {}, which is app::custom (effectively forcing every users's module to appear in the app)

This is what people have been happily doing with Django and RoR, both of which have large ecosystems of modules

I'm not sure what do you mean about django? Are you talking about package names?
(I don't know much about RoR but Ruby module system is definitely one of the last we want to borrow from)

For example, the edgedb migration tool can adopt a convention of concatenating directory names to form module names, so schema/app/module/submodule.esdl becomes app_module_submodule:: or something like that.

So in your structure:

You start with schema/app.esdl
Then when you need another module you create it in a dir: schema/app/something.esdl
Then you might have a conflict with schema/app_something.esdl

I would argue that people will often fail on step 2 and just create a top-level namespace (it might happen in few months or few years in development, they already know edgedb and might not reread documentation again).
In my structure:

You start with schema/default.esdl (or a better name, that goes to app:: directly)
Then you add another module schema/something.esdl that goes to app::something

Looks simpler and cleaner to me.

future syntax I'm arguing is bad

We must be imagining different syntaxes.
In this proposal, we have:
module app {

  type User {}

}

This defines the object type app::User.
Once nested modules are allowed:
module default {
  type User {}

  module web {
    type Session {}
  }
}

This defines two object types: app::User and app::web::Session.  Why is this syntax bad?  This is exactly how namespaces work in Rust and C++.

Then you might have a conflict with schema/app_something.esdl

Why would you want both schema/app_something and schema/app/something?  Just pick one.  This is a non-issue.

future syntax I'm arguing is bad

We must be imagining different syntaxes.
Once nested modules are allowed:
module app {
  type User {}

  module web {
    type Session {}
  }
}

This defines two object types: app::User and app::web::Session. Why is this syntax bad?

This is good. And I was arguing that this syntax doesn't allow you adding a subnamespace to default:: namespace (without adding a special-cased-quirky syntax for that specific thing).

Then you might have a conflict with schema/app_something.esdl

Why would you want both schema/app_something and schema/app/something? Just pick one. This is a non-issue.

Well:

We must check and warn if both files present
Every other project may pick a different style
Even if i have schema/app.esdl and schema/app/another.esdl it doesn't forbid my colleague to put his code to schema/something.esdl

This is not a big issue per se. But this is just annoyance and subpar design comparing to the alternative.

This is good. And I was arguing that this syntax doesn't allow you adding a subnamespace to default:: namespace

The default module isn't special when it comes to schema definition, so:
module default {
   module subns {
   }
}

The default module isn't special when it comes to schema definition, so:

So I probably misunderstand something, that means you can't do:
type User {}

Which becomes default::User ?

that means you can't do:

Per this proposal, you can't.  SDL definitions are external to the configuration of the database session (including the implicit module alias), and must always state the module explicitly.

So I probably misunderstand something, that means you can't do:

Yes, it will be illegal under new proposal.  In alpha 2:
type User {}

will throw an error. In alpha 2 you will need to explicitly write
module default {
  type User {};
}

There's only one thing where the 'default' module is special: in queries, specifically w.r.t. name resolution:
SELECT User;

is semantically equivalent to
WITH MODULE default
SELECT User;

We'd like to keep this rule in place because it lowers the bar for people to start playing with EdgeQL.  This will be the only special behavior for 'default' module in alpha 2.
Now, I feel that we're wasting a lot of CPU cycles here. With this proposal we can implement nested modules at any time we wish. Rushing the implementation of nested modules right now does not make a lot of sense.
Probably the only thing left to discuss is the naming of the 'default' module. I see three options:

Keep the current: 'default'
Adopt 'app' -- Paul's suggestion. I personally don't like it, while it's better than 'default', not everything is an app.
Adopt 'main'. Makes sense for apps, for services, for quick scripts.

Ideas?

Yes, it will be illegal under new proposal.

Well, sorry. I've somehow skipped this :(

Probably the only thing left to discuss is the naming of the 'default' module

With this approach default is as good as main. app surely doesn't work.

The new SDL syntax has been implemented.


Fix flake8 issues

Addresses code issues found in #1465, principally whitespace after commas, unused imports, escape characters. I have skipped line length and lambda definition warnings together with the other settings in #1465. I'll highlight the one or two interesting changes with comments below. Happy to retarget against #1465 branch if we want.

I suggest we merge #1465 first, then let the updated action run on this PR branch, fix any remaining flake8 issues, then merge this PR.

I have now merged #1465.

Ah, I didn't see those errors in the flake8 version I was using - switched to a later one (3.8.4 vs 3.7.9) and can see them now. Will take a look.


Sorting on ABV seems to be... not great.

title.

Done. Just needed to add a data-order attribute to the td.


[bug] Incorrect match numbers?

Hey,
first of all -- great job!
I've noticed that  Portugal vs Spain is tagged as match number 3 and Morocco vs Iran is number 4.
Shouldn't it be the other way around? They played earlier...

No, fifa game number has nothing to do with the play time.
The play time is due to TV, the more exposed matches will play at later times.


[JENKINS-54615] Add null check in WorkflowNodeTraversal#getParents

@jan-molak Please correct me if I am wrong, but there appears to be a timing issue with the features.ShouldDisplayPipelineStage test. Although I would expect the test to have failed with a NPE without my merge request. Any ideas?


Bump dependencies to the latest versions

We have updated nodejs version from v16 to v20 in https://github.com/Azure/cli/pull/126. Other dependencies also need to bump due to this change.

Waiting for this merge!


Use packageManagerUrl from Onyxia region when available

This actually contains the changes pushed in https://github.com/InseeFrLab/helm-charts-interactive-services/pull/76, but that one should be merged first, to allow the proper rebuild of library-chart with its new version. I'll rebase if Github finds a conflict. As such, leaving this as draft for now.
The change itself is mostly centered on the values.schema.json files to make use of packageRepositoryInjection and set the repository.packageManagerUrl parameter accordingly. This parameter (or rather, the environment variable it sets) is unused for now, I'll make another PR on the https://github.com/InseeFrLab/images-datascience repo for that.

The checks fail due to library-chart 1.14.0 not being available for now - this is the purpose of #76 ; I'll trigger the checks again after that first PR is merged.


[FEATURE] Sound & more contrast

Notification sound
It would be great if it would be possible to configure a sound for when a new whisper is received

The module could include a default sound, but it should allow for the user to choose a different sound to use (from the file system)
It should be possible to enable/disable playing the sound

Notification better Contrast
I think it would be very good if there was an option to make the whispers to better contrast, (both on the notification and the chat window.
It could look something like the example below, and it could use the color of the player for better reference

Note: the Louder Whisper mobile has something similar you can use as a reference
https://foundryvtt.com/packages/louder-whispers
Thanks

Thank you for your feature request. For me this module is finished, so i don't intend to add new features like sounds. Though it is a good idea, so if someone else wants to tackle this as a PR, i'm happy to merge it in.
As for the higher contrast for whispers: Thats not a thing for this module, its depending on your system or theme and should be handled by that and is not in the scope by this module.
For future: Please split different feature requests into different issues.


[Staging & Production] [SHARE] Clicking 'More' and scrolling to top causes navbar to jump

Steps

Go to https://osf.io/share/?
Type in a search that returns a lot of results, can enter "*" to get all results
Scroll to the bottom and click on 'More'
Repeat step 3 a few times, without scrolling to top
Scroll to the top quickly (pay attention to the navbar)

Expected
That scrolling to the top with many results on the page would have no errors on the page
Actual
When scrolling up to the top quickly with many results on the page, the navbar jumps around.

I'm not sure if theres much that we can do about that.
@caneruguz and @brianjgeiger, thoughts?

There should be something we can do. That's an odd thing.

Interesting. This seems to be browser-specific, as Safari is fine with it. Although I'm having a hard time replicating with Chrome as well. I can get the navbar to pull away from the top of the window in Chrome, but it always shows the "background" from chrome rather than our web content underneath.

I tried to replicate it too and it seems like when a lot of content is on the page it does lag.
My best guess is that as the element size in the page increases (with the number of items) the scroll height increases so a fast scroll needs a very quick repainting which depending on the machine the browser might not be able to catch up with. This is just a guess though. The chart below does show that the scrolling at the end is causing a lot of repaint (the green part).

So I would say working on this would be a small optimization that would take time so maybe we should defer it.

We have other more pressing issues -- I am going to defer. Thanks all.

Verified with @fabianvf , this is fixed.