Fix AlignEventStream

Codecov Report

Merging #167 into master will increase coverage by 0.13%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master    #167      +/-   ##
=========================================
+ Coverage   93.06%   93.2%   +0.13%
=========================================
  Files          15      15
  Lines        1586    1618      +32
  Branches      274     282       +8
=========================================
+ Hits         1476    1508      +32
  Misses         72      72
  Partials       38      38

Impacted Files
Coverage Δ

shed/tests/test_simple.py
98.98% <100%> (+0.08%)
:arrow_up:

shed/simple.py
91.97% <100%> (+0.52%)
:arrow_up:

Continue to review full report at Codecov.

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


feat: build from local storage

What does this PR do?
The Bootc image builder added support to build from local storage via https://github.com/osbuild/bootc-image-builder/issues/90.
This updates to the current bootc image builder image, and adds the two new required options:

--local, should be temporary/default soon
volume mapping to /var/lib/containers/storage

Screenshot / video of UI
N/A
What issues does this PR fix or reference?
Fixes #178.
How to test this PR?
Test updated.

Rebased to pick up changes in main.


Option to trust self-signed certificate

SBProxy should have an option - flag, env var to trust self-signed certificates.

Service Broker Proxy now uses the same server configuration from service-manager. There, this is configurable.


Report web vitals in Document Load instrumentation

Is your feature request related to a problem? Please describe.
It's unrelated to a problem. This is an additional feature to add to the document load instrumentation.
Describe the solution you'd like
Web Vitals are a set of web performance metrics for analyzing user experience metrics rather than just navigation timing metrics. They are going to be used by Google in the near future for evaluating SEO, meaning that many developers are optimizing for these metrics now.
It would be useful to add these metrics into the document load plugin's existing span events.
Describe alternatives you've considered
It is possible for me to augment the plugin on the application side, but it feels beneficial for other OTel users to be in the library.
Additional context
Here is the library for calculating these metrics on the client.

I think this would be more appropriate as it's own plugin.
Mainly because some of the metrics make use of vendor(/chrome)-specific APIs, which require either polyfills or don't work at all.
Excerpt from the current README.md:

Browser support for each function is as follows:
getCLS(): Chromium,
getFCP(): Chromium, Safari Technology Preview
getFID(): Chromium, Firefox, Safari, Internet Explorer (with the polyfill)
getLCP(): Chromium
getTTFB(): Chromium, Firefox, Safari, Internet Explorer

I think this would be more appropriate as it's own plugin.
Mainly because some of the metrics make use of vendor(/chrome)-specific APIs, which require either polyfills or don't work at all.
Excerpt from the current README.md:

Browser support for each function is as follows:
getCLS(): Chromium,
getFCP(): Chromium, Safari Technology Preview
getFID(): Chromium, Firefox, Safari, Internet Explorer (with the polyfill)
getLCP(): Chromium
getTTFB(): Chromium, Firefox, Safari, Internet Explorer

I think this would be more appropriate as it's own plugin.
Mainly because some of the metrics make use of vendor(/chrome)-specific APIs, which require either polyfills or don't work at all.
Excerpt from the current README.md:

Browser support for each function is as follows:
getCLS(): Chromium,
getFCP(): Chromium, Safari Technology Preview
getFID(): Chromium, Firefox, Safari, Internet Explorer (with the polyfill)
getLCP(): Chromium
getTTFB(): Chromium, Firefox, Safari, Internet Explorer

I cannot agree more, this is very good example, thx.

I think this would be more appropriate as it's own plugin.
Mainly because some of the metrics make use of vendor(/chrome)-specific APIs, which require either polyfills or don't work at all.
Excerpt from the current README.md:

Browser support for each function is as follows:
getCLS(): Chromium,
getFCP(): Chromium, Safari Technology Preview
getFID(): Chromium, Firefox, Safari, Internet Explorer (with the polyfill)
getLCP(): Chromium
getTTFB(): Chromium, Firefox, Safari, Internet Explorer

I cannot agree more, this is very good example, thx.

Makes sense to me. I'll go ahead and close this issue. In the meantime, I will try to implement this in a local plugin definition, and if it proves useful I will look into proposing as an opentelemetry-js-contrib plugin.
Thanks both!


Mousewheel press scrolling issue on Chrome

I have this minimal setup here.
Steps to reproduce the issue(make sure you are scrolled to the top left of the document):

press on the mouse wheel to change the scrolling mode
try and scroll up (obviously won't work since there's nowhere to scroll)
try and scroll down (won't work)
The same is true for left-right scrolling. This won't happen if you first scroll in a direction that can be scrolled.

Observed this behavior on the latest stable build of Chrome.

'scrolling mode' is a new thing to me. Which OS implements it and how does it work?

@marijnh Didn't know how to better describe it, when you press down on the mousewheel, the cursor changes and you can scroll a page by moving the mouse.
It would correspond to value '1' from here

Ah, I see. Sounds a lot like the middle-button trackpoint scrolling that I use, but with that I can't reproduce the issue. Have you tried debugging this by seeing whether wheel events are still being fired and how CodeMirror is responding to them.

With normal scrolling, 'scroll' and 'mousewheel' events are fired when using the mousewheel. When pressing on the mousewheel and moving the mouse to scroll, only 'scroll' events are fired, which should be normal expected behavior I guess. However, if no scroll is detected on the first mouse movement, Chrome seems to prevent further 'scroll' events from firing for some reason. I'm still searching for further info on this.

The issue is definitely Chrome related and not CodeMirror related fiddle.
The same behavior happens, it has to do with how Chrome handles overflow: scroll. It's just a guess at this point, but maybe it has something to do with chrome://flags/#pull-to-refresh

I see, thanks for investigating! If you have time (and haven't already), please file an issue on https://bugs.chromium.org/p/chromium/issues/list . I'm going to close this.

If anyone somehow ends up here, check this, first comment, second point.


Expected behavior of YOLOXModeSwitchHook?

I'm using a custom fork of MMDetection around v2.2x.
I find there is an arg called num_last_epochs in YOLOX configs.
https://github.com/open-mmlab/mmdetection/blob/3b72b12fe9b14de906d1363982b9fba05e7d47c1/configs/yolox/yolox_s_8x8_300e_coco.py#L137
I expect it to mean the exact number of epochs that use L1 loss and no-mosaic training (in this case 15). However, as shown in the logs, the actual epochs are 16 (15 + 1, [285, 300]). This is rather confusing, e.g., if I set num_last_epochs=0, it will still be executed for 1 epoch.
I don't know if this behavior is expected. As far as I know, the mmcv _epoch is updated after the execution of hooks, this +1 should not have happened.

This issue is discussed in https://github.com/open-mmlab/mmdetection/pull/7322

@shinya7y Thanks! I didn't find that before.
I'll close this issue and make further discussions in that PR


Replace CupertinoPageRoute with MaterialPageRoute in router

Fixes #14

Pull Request Test Coverage Report for Build 240837050

-15 of 18 (16.67%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at ?%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

lib/utils/router.dart
3
18
16.67%

Totals

Change from base Build 230162288:
0%

Covered Lines:

Relevant Lines:
0

💛  - Coveralls


working-directory input not working

When I try to run the action, it is always running in /github/home and this is inaccessible.
I have attempted to move my profiles.yml file to /github/home/.dbt but I do not have permissions to create that directory and it does not exist.
I have attempted to change the working directory as an input but each time it runs the action runs in the /github/home directory looking for .dbt/ which again does not exist and cannot be created due to permissions.
I also checked the ${{ github.workspace }} which is supposed to be the default, but for my step setup dbt this is different to where the action is running. For my custom step it is /home/runner/work/dbt-bq-elt/dbt-bq-elt and where the action tries to run is /github/home.
Here is my configuration for the action. Note I am attempting to create a profiles.yml file in the setup dbt section in order for SQLFluff to correctly connect to our BigQuery warehouse:
name: sqlfluff with reviewdog
on:
  pull_request:
jobs:
  test-check:
    name: runner / sqlfluff (github-check)
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: 'setup dbt'
        shell: bash
        run: |
          echo "${{ secrets.gcloud_service_key }}" > "${{ github.workspace }}/dbt-service-account.json"
          sed s/template-project-id/${{ secrets.GOOGLE_PROJECT_ID }}/g profiles.github.yaml > profiles.github1.yaml
          sed -i s,template-json-directory,${{ github.workspace }},g profiles.github1.yaml > profiles.github2.yaml
          mkdir -p "~/.dbt"
          mkdir "${{ github.workspace }}/.dbt"
          mv profiles.github2.yaml "~/.dbt/profiles.yml"
      - uses: yu-iskw/action-sqlfluff@v2
        id: lint-sql
        with:
          github_token: ${{ secrets.github_token }}
          reporter: github-pr-review
          sqlfluff_version: "0.9.1"
          working-directory: /home/runner
          config: "${{ github.workspace }}/.sqlfluff"
          paths: '${{ github.workspace }}/models'
          fail_on_error: true
      - name: 'Show outputs (Optional)'
        shell: bash
        run: |
          echo '${{ steps.lint-sql.outputs.sqlfluff-results }}' | jq -r '.'
          echo '${{ steps.lint-sql.outputs.sqlfluff-results-rdjson }}' | jq -r '.'

@CraigWilson-ZOE Thank you for the feedback. Can you elaborate on why you need the setup dbt step?
First, the actions doesn't require setting up dbt a head. Can you try to execute my action independently? Second, If you just want to pass a path to profiles in your GitHub Action, it would be good to use the dbt's --profiles-dir option.

If you still have the issue, please feel free to reopen the issue.


Encode Scenario 4 : Missing Parameters

Using the example command:
ultrahdr_app -m 0 -i cosmat_1920x1080_420_8bit.jpg -g cosmat_1920x1080_420_8bit.jpg -f metadata.cfg
results in:
did not receive valid image width for encoding. width :  0
It looks like the example should be modified to include width (-w) and height (-h) parameters as in the other encode scenarios.

Hi @pmonck,
Thank you for raising this issue! The width/height should be read from in input JPEG images instead of reading from the configuration. However, this indeed a bug in the app, and it should be fixed by https://github.com/google/libultrahdr/pull/159
Thank you!

Close for now. Please re-open if there is further issue. Thank you!

This issue seems to have reverted in the latest commit.

looks like these changes were never merged in main. They were accidentally merged to a dev branch and the issue got closed.

Thanks for looking into this. How should the issue be resolved?


News212: German translation format fix

Caused a missing bullet which is unlinkable in future references (like https://github.com/bitcoinops/bitcoinops.github.io/pull/843/files#diff-a621ae1e11f09c21fcec55111f696ebbe0627357553f2c4fd21a0f15b3e7e39aR134)

Thanks @Xekyo !


how to fetch traffic data

How to fetch traffic data, after knowing the Sensor ID

You can use the prtg_historic_data class:
from datetime import datetime,timedelta
from prtg import prtg_historic_data

host = '<IP_ADDRESS>'
port = '443'
user = 'prtgadmin'
passhash = '0000000'
protocol = 'https'
sensorId = '1234'

start = datetime.now()
end = start - timedelta(days=30)

phd = prtg_historic_data(host,port,user,passhash,protocol)
sensorData = phd.get_historic_data(sensorId,start,end)

Thanks


Dummy PR for identifying points of non-differentiability in Atoms

Tagging @rileyjmurray, @phschiele for help!


Introduce hir::Expr

Currently, name resolution and type inference is based on the concrete syntax trees (and LocalSyntaxPtrs). This is suboptimal for three reasons:

syntax trees change after each change to the text of the file, causing recomputation of name res and type inference
syntax trees are a heavy-weight immutable data structure, with a high memory overhead. We should miminize the scope where syntax trees are used
syntax trees represent (and will probably always represent) a pre-expansion source code, so macro expansion would have to be handled explicitly.

One solution to this problem is to lower SyntaxNodes into a hir::Expr, defined as follows:
pub type Expr = Id<ExprData>;
#[derive(Eq, PartialEq)] // for salsa
pub struct ExprTable { // ExprTable for a specific item, most commonly function
    exprs: Arena<ExprData>,
}

#[derive(Eq, PartialEq)]
enum ExprData {
    /// This is produced if syntax tree does not have a required expression piece
    Missing,
    Path(hir::Path),
    Binary { lhs: Expr, rhs: Expr, op: BinOp }
}

This representation is position-independent and salsa friendly. To be able to map to concrete syntas though, we'll need the following pair of queries:
// This one is syntax-dependent, we'll need to GC it
fn compute_def_expr_table(def_id: DefId) -> (ExprTable, FxHashMap<LocalSyntaxPtr, Expr>, FxHashMap<Expr, LocalSyntaxPtr>) {
}

// This is a salsa-friendly projection
fn def_expr_table(def_id: DefId) -> ExprTable {
    compute_def_expr_table(def_id).0
}

Here's some more random notes about this:

there's a few things we will probably want to desugar when going from AST to HIR:

field shorthand in struct literals
there's no need for ParenExpr in HIR
rustc desugars for and while let loops into loop when lowering to its HIR, I'm not sure if we want to do the same
similar for if let -> match
self params should probably be represented explicitly (i.e. &self should result in the same HIR as self: &Self etc.)

I think we'll need hir::Pat for patterns at the same time (since they'll appear in match expressions etc.)
ast::TypeRefs should be turned into hir::TypeRefs, of course

I'll have a go at this now.


Add support for using the same email address in multiple Zulip organizations

Zulip now supports putting different realms on different subdomains via the settings.REALMS_HAVE_SUBDOMAINS setting.
It would be awesome to now make it possible to actually reuse the same email address with multiple accounts.
This will likely be a huge refactoring.  Fortunately, we already encapsulate basically every email-related lookup using get_user_profile_by_email, so we just need to replace them with something that accepts a realm argument; e.g. get_user(realm, email).  There are about 450 references in tests and 125 not in tests.  For the tests part, I think working on this would be a good time to create a better extraction for getting the<EMAIL_ADDRESS>user, for example.
(zulip-py3-venv) tabbott@zaset:~/zulip$ git grep get_user_profile_by_email | wc
    576    2303   54907
(zulip-py3-venv) tabbott@zaset:~/zulip$ git grep get_user_profile_by_email | grep test | wc
    450    1769   42665

May be a good PyCon project :)

After a lot of work by a number of people at the PyCon sprint and elsewhere, this is now much closer! There are 48 references to get_user_profile_by_email left, in 18 files:
$ git grep get_user_profile_by_email | wc -l
48

$ git grep -l get_user_profile_by_email
docs/mypy.md
docs/prod-maintain-secure-upgrade.md
tools/test-api
zerver/decorator.py
zerver/forms.py
zerver/lib/actions.py
zerver/lib/export.py
zerver/lib/test_classes.py
zerver/models.py
zerver/tests/test_auth_backends.py
zerver/views/messages.py
zerver/views/registration.py
zerver/views/users.py
zilencer/management/commands/populate_db.py
zilencer/management/commands/print_initial_password.py
zilencer/management/commands/profile_request.py
zilencer/management/commands/sync_api_key.py
zproject/backends.py

@gnprice do you want to take replacing the docs/mypy.md example?  Probably switching to get_user would be reasonable, but it's probably worth thinking a little bit about that page.
About half of the remaining references will be easy to change and we have a plan for.  The last 15-20 or so, basically the registration/login process ones, is where things will start to get interesting.
Also, at some point we need to audit the UserProfile.objects.filter and UserProfile.objects.get calls; a lot of those should probably be using the standard helper methods.

@hackerkid FYI :-) as I think you've been working on this recently, with #5808 and other PRs. Would you mention this issue in your PRs so that GitHub makes links between them?

@gnprice Sure :)

If I understand correctly, this is going to be a major headache if multiple orgs are using Zulip during Google Code-in.

Correct.  This project is my top priority right now; we're actually very close to being done.

I can be incentivized to complete this if there is a bounty for this.

This was completed last fall; we just forgot to close the original issue.  Thanks to @hackerkid and everyone else who helped with this migration :)


Web element component not working in Vue

Check that this is really a bug

[ ] I confirm

Reproduction link
https://stackblitz.com/edit/vitejs-vite-yve9m8?file=src%2FApp.vue
Bug description
When using swiper-container and swiper-slide components in Vue.js with the provided code, web elements are not behaving as expected. Additionally, CSS often fails to load correctly, causing layout and style issues. The issue occurs intermittently and occasionally triggers console errors related to Swiper's rendering.
I want know if i am missing something in configuration.
NOTE
I was using node@16 in my project then i switched to v20 and it started to break like css file path is correct but can't import it onto TS or SCSS file.

Expected Behavior
The swiper-container should render with proper CSS styles and spacing between slides.
Swiper's built-in navigation and pagination should function without errors.
Event listeners for swiperprogress and swiperslidechange should trigger appropriately.
Actual Behavior
CSS styles for the Swiper component do not load consistently.
Sometimes console errors are thrown, and the Swiper component does not initialize properly.
Slides render incorrectly, or the Swiper is not fully functional.
Swiper version
11.1.12
Platform/Target and Browser Versions
MacOS / Chrome
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

Not sure where it comes from as i don't see such error in console and in your demo. Probably something related to Vuejs/Vite miss configation


How to remove the :port from the dev server socket URL to work with reverse proxied connections?

Describe the bug
I raised an issue with connection restarting, but it was closed shortly after it was raised with a related link which doesnt resolve what I think are two separate issues relating to the use of proxied connections.

The page doesnt need to reload if the socket connection fails as it can always be manually reloaded if for any reason the dev socket cant be reached.
the inclusion of the port in the socket URL appears mandatory and isnt useful for reverse proxied applications. Its not entirely clear from the documentation now to remove the port spec to allow a reverse proxy to do the routing from the route url. I have tried changing the port, the host and the path, but how do I just remove the port?

There may be a solution in there: to add config to remove the port, or overrwite the dev server socket URL entire (not just the path spec) to achieve the same.
my nginx configuration takes care of the routing so the client doesnt need to force specification of a port:
server {
    listen 80;
    server_name myviteserver.com;
    location / {
        proxy_pass http://<IP_ADDRESS>:3400;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Thanks
Reproduction
https://reactvite.syntapse.co.uk/
System Info
System:
    OS: Linux 4.19 Alpine Linux
    CPU: (1) x64 Intel Core Processor (Haswell, no TSX)
    Memory: 105.07 MB / 3.76 GB
    Container: Yes
    Shell: 1.33.1 - /bin/ash
  Binaries:
    Node: 16.13.1 - /usr/local/bin/node
    Yarn: 1.22.15 - /usr/local/bin/yarn
    npm: 8.1.2 - /usr/local/bin/npm
  npmPackages:
    @vitejs/plugin-react: ^1.3.0 => 1.3.1
    vite: ^2.9.5 => 2.9.5

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

If you omit the port, it means it will use the default port.
For example, ws://example.com means the same as ws://example.com:80 and wss://example.com means the same as wss://example.com:443.

I want to remove the port from the socket URL specification to allow my reverse proxy to handle port forwarding? Is that possible with the existing configuration settings?

Vite uses a code like below to use Websocket for HMR.
new WebSocket('ws://example.com:3000')

If you set server.hmr.port to 80 it will be like new WebSocket('ws://example.com:80'). new WebSocket('ws://example.com:80') means the same as new WebSocket('ws://example.com').
What do you mean by "remove the port from the socket URL specification"?

Hi thanks for your feedback and attention.
My reverse proxy server is listening on port 80. I know this connection works because I can access the initial page load using a standard nginx port forward.
server {
    listen 80;
    server_name myviteserver.com;
    location / {
        proxy_pass http://<IP_ADDRESS>:3400;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Assuming I can access my app at port 80 I have set vite config accordingly:
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [react()],
  server: {
    port: 3400,
    hmr: {
      port: 80
    }
  }
})

This results in the following error in the developer view of the loaded page.
client.ts:22 WebSocket connection to 'wss://reactvite.syntapse.co.uk:80/' failed:

To answer your question I think I need to make a port request to
wss://reactvite.syntapse.co.uk
not
wss://reactvite.syntapse.co.uk:80 (or any other port) so that nginx can do its reverse proxying.
I can do this if I can either remove the port spec, or override the URL entirely.

I have not read your last comment closely but how about setting it to 443 instead of 80 since it is trying to use wss?

I need  - expect - the reverse proxy to take care of routing anything else kind of defies the whole point of reverse proxying the connection in the first place:  I dont want to expose ports to the client.
Shall I assume for this current iteration its not possible to remove the :port from the socket URL? Is that something that could be fixed in a future iteration if the reverse proxied use case is strong enough?

Here is another typical reverse proxied setup: Separate ports for the dev server and HMR socket with a path. I dont think vite can support this presently because its forcing the 3401 port into the path spec for a server listening on 80. Its exposing the internals to the client.
server {
    listen 80;
    server_name reactvite.syntapse.co.uk;
    location / {
        proxy_pass http://<IP_ADDRESS>:3400;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
    location /socket {
        proxy_pass http://<IP_ADDRESS>:3401;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

and the vite config for this:
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [react()],
  server: {
    port: 3400,
    hmr: {
      port: 3401,
      path: "socket"
    }
  }
})

I also tried setting the host but this still inserts the port. I tried adding a slash terminator e.g. host : "myhost.com/" to tell vite to terminate the URL but this results in "myhost.com/:port".

solved. sapphi-red thank you for your assistance.
i needed to set the clientPort and the port separately. this offers all the flexibility needed to support any reverse proxied setup.
export default defineConfig({
plugins: [react()],
server: {
port: 3400,
hmr: {
port: 3401,
clientPort: 443,
path: "socket"
}
}
})

Glad to hear you were able to solve this.
BTW I feel it strange with your nginx config.
IIUC you are using vite like below.
browser (https://reactvite.syntapse.co.uk) -> nginx (:443) -> vite (:3400)
browser (wss://reactvite.syntapse.co.uk/socket) -> nginx (:443) -> vite (:3401)

But your nginx config does not have any listen 443 ssl.
I do not think it will be able to access with https without it.
Was it jusst omitted from the comment?

Thanks again for your feedback.  It looks a bit strange because Ive got two layers of proxying the outer one managing docker containers (and certificates) and the inner one managing node applications which are effectively running as http/ws. I have only specified the inner reverse proxy in these examples.
I manage my containers with https://hub.docker.com/r/jwilder/nginx-proxy which simplifies my inner nginx proxy management.


Double-clicking in Source Control commit message box may open a file in the changes list

Issue Type: Bug
Reproduction

Open a Git repository in VS Code so that the Source Control window/tab is active.
Change at least one file and save it so that it appears in the Source Control changes list.
Single-click the file in that list so it opens and displays the before/after like normal.
Close the file, observe that the file is still selected/active in the Source Control tab.
Start entering a commit message in the box at the top of the Source Control tab.
Double-click a word you typed in that box (as if you wanted to highlight the whole word to delete it).

Expected Behavior
The word is selected in the input box like normal when double-clicking a word in any input box, and nothing else happens.
Actual Behavior
The word is selected, but the file that was clicked in step 3 also opens as if you had double-clicked it.

I just tested and I can no longer reproduce in 1.53.0-insiders.

Going to call this one fixed now.

Going to call this one fixed now.


[TextServer] Fix long selection performance.

Fixes #60107
Nested loop is not necessary since selection ranges are calculated sequentially, and merge can be done in place. And it seems to be incorrectly rebased at some point, adding a useless loop.
Selection, Ctrl+A, or cursor movement on million chars long text in the LineEdit should be instant, pasting it and doing any edit takes about two seconds (which is expected). With text that long, carets/selection are shifted (I'll take a look, but it's probably just limitation of Vector2 precision limitation).

Thanks!


Posts can't be added or removed by https://my.eplay.com/broadcaster/edit/337169331994025984

🦄 Select your Profile

[X] Streamer
[ ] User

⚙ Device

[ ] Phone
[X] Computer

💾 System
WINDOWS
🖥 Browser
CHROME
📍 Where is the Bug?
📺 CHANNEL
🔗 Which page is it?
https://my.eplay.com/channel/post/statistics
ℹ Description
Ecoticamaya can't edit her posts, add them, or remove them.
Tried going offline, disabling the Block Country option, and clearing the cache and cookies, but nothing worked.

🧨 How to reproduce
Tried going offline, disabling the Block Country option, and clearing the cache and cookies, but nothing worked.

⚡ Expected Behavior
No response
😇 Anything else you could add?
it seems the error is related to missing performer param

I removed the performer (tagged user) from the DB, it seems to have fixed it


Update RNDeviceInfo.java

removed deprecated createJSModule

Description
Fixed issue #

Added yourNewMethodName() that allows ...
Compatibility

OS
Implemented

iOS
✅❌

Android
✅❌

Windows
✅❌

Checklist

[ ] I have tested this on a device/simulator for each compatible OS
[ ] I added the documentation in README.md.
[ ] I mentionned this change in CHANGELOG.md.

Please fill in the PR template, subject correctly and explain your motivations.


Changing the app name should also change the 'app_name' string

When changing the app name, also change it in the app's build.yaml file (in the STRINGS property), and automatically commit & push Ensure we don't commit or push any other pending changes when the app name hasn't changed
ONLY update this value when the 'title' property of an app changes, not when the playstore or appstore-specific names change.

Done and put online


Script Doesnt Work on Parent Background-images

Hi - I cant get your script to work. II'm trying to run the below HTML doc, but no classes are added to the ".target" element based on the background image of the body element. Tested in FF, Safari, & Chrome.

There is no issue - I mistakenly thought the this script would detect background-image properties by default but it's actually a specific configuration (described in the github readme):
BackgroundCheck.init({
  targets: '.target',
  images: '.thumbnail'
});

It would be great to see this clarified on your project page - I figure this would be a very very common assumption. It was frustrating to blow a couple hours to figure it out.
And...
Thanks for writing this plugin!
Mike


Add support latest EAP build (2023.2 eap)

The title says all... Thanks for developing this plugin!

Sorry for the late answer...
I need to have a look if there are special requirements for the EAP Builds, as I don't have any special implementation.
My Plugin is dependent on the standard YAML Plugin, so you need to have this enabled.
Do you have any kind of error in the EAP?
My current focus and priority is working access private repositories (coming soon) and Syntax Highlighting.

@YunaBraska thanks for looking into it. No specific error. It doesn't list the plugin in the EAP build. Seems like  all we have to do is, bump up this platform version here - https://github.com/YunaBraska/github-workflow-plugin/blob/main/gradle.properties#LL15C1-L15C1

I dont think anything special is required here.
diff --git a/gradle.properties b/gradle.properties
index d0746ec..10fe6ac 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -8,11 +8,11 @@ pluginVersion = 1.0.1

 # Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html
 pluginSinceBuild = 222
-pluginUntilBuild = 231.*
+pluginUntilBuild = 232.*

 # IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension
 platformType = IC
-platformVersion = 2022.2
+platformVersion = 232-EAP-SNAPSHOT

 # Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html
 # Example: platformPlugins = com.intellij.java, com.jetbrains.php:203.4449.22

After gradle :buildPlugin I added that zipfile into my Rider iDE.
Looks good so far
Github-Workflow-Plugin-1.0.1.zip

Thx @SimonSchwendele, i will look into it in the next version, if I can automate that...

Sorry, it took a while as I needed to refactor a few things, but now every further version should work as I removed the version limit. To ensure that every still works, I will test from time to time the new versions and watch for deprecation notices.
Feel free to report more bugs when you see more 👍

Sorry, it took a while as I needed to refactor a few things, but now every further version should work as I removed the version limit. To ensure that every still works, I will test from time to time the new versions and watch for deprecation notices. Feel free to report more bugs when you see more 👍

Thanks a lot for maintaining this.
 I feel your pain as I had the same :D.
Version 2 comes now even with visual validations.

After the latest plugin update (using IntelliJ IDEA 2023.2) , i am getting the following error

java.lang.Throwable: Assertion failed: Network must not be accessed in EDT or inside read action, because this may take considerable amount of time, and write actions will be blocked during that time so user won't be able to perform tasks in the IDE
	at com.intellij.openapi.diagnostic.Logger.assertTrue(Logger.java:465)
	at com.intellij.util.io.HttpRequests.process(HttpRequests.java:497)
	at com.intellij.util.io.HttpRequests$RequestBuilderImpl.connect(HttpRequests.java:335)
	at org.jetbrains.plugins.github.api.GithubApiRequestExecutor$Base.execute(GithubApiRequestExecutor.kt:92)
	at org.jetbrains.plugins.github.api.GithubApiRequestExecutor$WithTokenAuth.execute(GithubApiRequestExecutor.kt:65)
	at org.jetbrains.plugins.github.api.GithubApiRequestExecutor.execute(GithubApiRequestExecutor.kt:46)
	at com.github.yunabraska.githubworkflow.completion.GitHubWorkflowUtils.downloadFromGitHub(GitHubWorkflowUtils.java:229)
	at com.github.yunabraska.githubworkflow.completion.GitHubWorkflowUtils.lambda$downloadFileFromGitHub$9(GitHubWorkflowUtils.java:219)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.Spliterators$IteratorSpliterator.tryAdvance(Spliterators.java:1856)
	at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129)
	at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
	at com.github.yunabraska.githubworkflow.completion.GitHubWorkflowUtils.downloadFileFromGitHub(GitHubWorkflowUtils.java:223)
	at com.github.yunabraska.githubworkflow.completion.GitHubWorkflowUtils.lambda$downloadContent$11(GitHubWorkflowUtils.java:259)
	at java.base/java.util.Optional.map(Optional.java:260)
	at com.github.yunabraska.githubworkflow.completion.GitHubWorkflowUtils.downloadContent(GitHubWorkflowUtils.java:259)
	at com.github.yunabraska.githubworkflow.completion.GitHubWorkflowUtils.downloadAction(GitHubWorkflowUtils.java:206)
	at com.github.yunabraska.githubworkflow.model.GitHubAction.setActionParameters(GitHubAction.java:142)
	at com.github.yunabraska.githubworkflow.model.GitHubAction.<init>(GitHubAction.java:134)
	at com.github.yunabraska.githubworkflow.model.GitHubAction.getGitHubAction(GitHubAction.java:48)
	at com.github.yunabraska.githubworkflow.model.WorkflowContext.lambda$init$23(WorkflowContext.java:179)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
	at java.base/java.util.stream.Streams$StreamBuilderImpl.forEachRemaining(Streams.java:411)
	at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:734)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:310)
	at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:310)
	at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:310)
	at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:310)
	at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:310)
	at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at com.github.yunabraska.githubworkflow.model.WorkflowContext.lambda$init$24(WorkflowContext.java:151)
	at java.base/java.util.Optional.ifPresent(Optional.java:178)
	at com.github.yunabraska.githubworkflow.model.WorkflowContext.init(WorkflowContext.java:151)
	at java.base/java.util.Optional.ifPresent(Optional.java:178)
	at com.github.yunabraska.githubworkflow.listeners.ApplicationListeners.lambda$asyncInitWorkflowFile$2(ApplicationListeners.java:58)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:895)
	at com.github.yunabraska.githubworkflow.listeners.ApplicationListeners.asyncInitWorkflowFile(ApplicationListeners.java:52)
	at com.github.yunabraska.githubworkflow.listeners.ApplicationListeners.execute(ApplicationListeners.java:44)
	at com.intellij.ide.startup.impl.StartupManagerImplKt$launchActivity$1$1.invokeSuspend(StartupManagerImpl.kt:534)
	at com.intellij.ide.startup.impl.StartupManagerImplKt$launchActivity$1$1.invoke(StartupManagerImpl.kt)
	at com.intellij.ide.startup.impl.StartupManagerImplKt$launchActivity$1$1.invoke(StartupManagerImpl.kt)
	at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78)
	at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:167)
	at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
	at com.intellij.ide.startup.impl.StartupManagerImplKt$launchActivity$1.invokeSuspend(StartupManagerImpl.kt:532)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)

@sureshg
Thanks for reporting the bug, that's perfect feedback to see how things work out in the real environments :P
Can you please open a new Issue, so that also others can see that this bug exists?
I will have a look into it.
There was a change in the Listener APIs, so i probably just need to find the right Listener with Network access.

@YunaBraska  it's already available - https://github.com/YunaBraska/github-workflow-plugin/issues/6


"Could not read the drive '\.\NUL'" when using Litespeed to backup to NUL

Description of the issue
When you use Litespeed with dbo.DatabaseBackup to backup up to NUL, the generated syntax is incorrect.
SQL Server version and edition
Only tested on 2005 as I do not have Litespeed on 2008+
Version of the script
2019-06-14 00:05:34
What command are you executing?
-- FAILS
EXECUTE dbo.DatabaseBackup
@Databases = 'USER_DATABASES',
@Directory = 'nul',
@BackupType = 'FULL',
@BackupSoftware = 'LITESPEED'
-- FAILS
EXECUTE dbo.DatabaseBackup
@Databases = 'USER_DATABASES',
@Directory = 'nul',
@BackupType = 'DIFF',
@BackupSoftware = 'LITESPEED'
-- FAILS
EXECUTE dbo.DatabaseBackup
@Databases = 'USER_DATABASES',
@Directory = 'nul',
@BackupType = 'LOG',
@BackupSoftware = 'LITESPEED'
What output are you getting?

Msg 60601, Level 16, State 1, Line 0
Could not read the drive '\\.\NUL\': Ensure that target file exists and is available.
Msg 50000, Level 16, State 1, Line 1
Error performing LiteSpeed backup.

Could you attach the output - file? You can also send it to me in a mail.

EXECUTE dbo.DatabaseBackup
@databases = 'master,msdb',
@Directory = 'nul',
@BackupType = 'FULL',
@BackupSoftware = 'LITESPEED'
Date and time: 2020-02-24 09:48:08
Server:
Version: 9.00.5324.00
Edition: Developer Edition
Platform: Windows
Procedure: .[dbo].[DatabaseBackup]
Parameters: @Databases = 'master,msdb', @Directory = 'nul', @BackupType = 'FULL', @Verify = 'N', @CleanupTime = NULL, @CleanupMode = 'AFTER_BACKUP', @Compress = NULL, @CopyOnly = 'N', @ChangeBackupType = 'N', @BackupSoftware = 'LITESPEED', @CheckSum = 'N', @BlockSize = NULL, @BufferCount = NULL, @MaxTransferSize = NULL, @NumberOfFiles = NULL, @CompressionLevel = NULL, @Description = NULL, @Threads = NULL, @Throttle = NULL, @Encrypt = 'N', @EncryptionAlgorithm = NULL, @ServerCertificate = NULL, @ServerAsymmetricKey = NULL, @EncryptionKey = NULL, @ReadWriteFileGroups = 'N', @OverrideBackupPreference = 'N', @NoRecovery = 'N', @URL = NULL, @Credential = NULL, @MirrorDirectory = NULL, @MirrorCleanupTime = NULL, @MirrorCleanupMode = 'AFTER_BACKUP', @MirrorURL = NULL, @AvailabilityGroups = NULL, @Updateability = 'ALL', @AdaptiveCompression = NULL, @ModificationLevel = NULL, @LogSizeSinceLastLogBackup = NULL, @TimeSinceLastLogBackup = NULL, @DataDomainBoostHost = NULL, @DataDomainBoostUser = NULL, @DataDomainBoostDevicePath = NULL, @DataDomainBoostLockboxPath = NULL, @DirectoryStructure = '{ServerName}${InstanceName}{DirectorySeparator}{DatabaseName}{DirectorySeparator}{BackupType}{Partial}{CopyOnly}', @AvailabilityGroupDirectoryStructure = '{ClusterName}${AvailabilityGroupName}{DirectorySeparator}{DatabaseName}{DirectorySeparator}{BackupType}{Partial}{CopyOnly}', @FileName = '{ServerName}${InstanceName}{DatabaseName}{BackupType}{Partial}{CopyOnly}{Year}{Month}{Day}{Hour}{Minute}{Second}{FileNumber}.{FileExtension}', @AvailabilityGroupFileName = '{ClusterName}${AvailabilityGroupName}{DatabaseName}{BackupType}{Partial}{CopyOnly}{Year}{Month}{Day}{Hour}{Minute}{Second}{FileNumber}.{FileExtension}', @FileExtensionFull = NULL, @FileExtensionDiff = NULL, @FileExtensionLog = NULL, @Init = 'N', @DatabaseOrder = NULL, @DatabasesInParallel = 'N', @LogToTable = 'N', @Execute = 'Y'
Version: 2019-06-14 00:05:34
Source: https://ola.hallengren.com
Date and time: 2020-02-24 09:48:08
Database: [master]
State: ONLINE
Standby: No
Updateability: READ_WRITE
User access: MULTI_USER
Is accessible: Yes
Recovery model: SIMPLE
Encrypted: N/A
Differential base LSN:<PHONE_NUMBER>312000086
Last log backup LSN: N/A
Date and time: 2020-02-24 09:48:08
Command: DECLARE @ReturnCode int EXECUTE @ReturnCode = [master].dbo.xp_backup_database @database = N'master', @filename = N'NUL', @with = 'NO_CHECKSUM' IF @ReturnCode <> 0 RAISERROR('Error performing LiteSpeed backup.', 16, 1)
LiteSpeed(R) for SQL Server Version <IP_ADDRESS>1
Copyright 2010 Quest Software, Inc.
Msg 60601, Level 16, State 1, Line 0
Could not read the drive '\.\NUL': Ensure that target file exists and is available.
Msg 50000, Level 16, State 1, Line 1
Error performing LiteSpeed backup.
Outcome: Failed
Duration: 00:00:01
Date and time: 2020-02-24 09:48:09
Date and time: 2020-02-24 09:48:09
Database: [msdb]
State: ONLINE
Standby: No
Updateability: READ_WRITE
User access: MULTI_USER
Is accessible: Yes
Recovery model: SIMPLE
Encrypted: N/A
Differential base LSN:<PHONE_NUMBER>0538400031
Last log backup LSN: N/A
Date and time: 2020-02-24 09:48:09
Command: DECLARE @ReturnCode int EXECUTE @ReturnCode = [master].dbo.xp_backup_database @database = N'msdb', @filename = N'NUL', @with = 'NO_CHECKSUM' IF @ReturnCode <> 0 RAISERROR('Error performing LiteSpeed backup.', 16, 1)
LiteSpeed(R) for SQL Server Version <IP_ADDRESS>1
Copyright 2010 Quest Software, Inc.
Msg 60601, Level 16, State 1, Line 0
Could not read the drive '\.\NUL': Ensure that target file exists and is available.
Msg 50000, Level 16, State 1, Line 1
Error performing LiteSpeed backup.
Outcome: Failed
Duration: 00:00:01
Date and time: 2020-02-24 09:48:10
Date and time: 2020-02-24 09:48:10

@johntrollope, thank you. Do you know what the correct syntax is to perform a backup to NUL in LiteSpeed?

Took a bit of Googling as it is not obvious:
exec dbo.xp_backup_database
@database = 'msdb',
@filename = 'd:\msdb_not_really_backed_up.sls',
@nowrite = 1
-- To prove a file is not really created:
exec dbo.xp_cmdshell 'dir d:\msdb_not_really_backed_up.sls'
go
LiteSpeed(R) for SQL Server Version <IP_ADDRESS>1
Copyright 2010 Quest Software, Inc.
Processed 2328 pages for database 'msdb', file 'MSDBData' on file 1.
Processed 8 pages for database 'msdb', file 'MSDBLog' on file 1.
BACKUP DATABASE successfully processed 2336 pages in 0.085 seconds (225.087 MB/sec).
Backup added as file number: 1
Native Size: 21.31 MB
Backup Size: 2.80 MB
CPU Seconds: 0.28

output
Volume in drive D is ***
Volume Serial Number is ***
Directory of d:
File Not Found

@johntrollope, is the parameter @filename required, even when you specify @nowrite = 1?


migrator: Add an API diff kind for specially handled cases.

This item is to associate an usr with a special case Id, however, it's
up to the migrator to interpret the special case Id and apply proper
transformations on related nodes.

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test


Operationalize task to update ingest status

We have stubs for handling success/failure, this task is to make these stubs a real thing by updating a scene's ingest status via the API

Closed by #1171


errors when I try two separate data.hy files

Hi,
When I try to change the script, and add an option to read train and test files from two different filenames, like:
def create_dataset(dataset_1,dataset_2,id_1,id_2,is_train=True):
ids_train = all_ids_train(id_1)
ids_test = all_ids_train(id_2)
dataset_train = Dataset(ids_train, dataset_1, name='train', is_train=False)
dataset_test  = Dataset(ids_test, dataset_2, name='test', is_train=False)
return dataset_train, dataset_test

I got the error:
tensorflow.python.framework.errors_impl.OutOfRangeError: RandomShuffleQueue '_0_shuffle_batch/random_shuffle_queue' is closed and has insufficient elements (requested 16, current size 4)
I tested with single file and split the data.hy solution, it is good, my problem is the single data.hy file is too big to generate.
Any ideas?
Thanks,
Chunlei

Please pull the new code. The issue should be resolved now.


HG_Handler_process() never returns unless a request arrives

Reported by carns on 1 Jan 1970 00:22 UTC
To reproduce, do the following in a Mercury server:
hg_ret = HG_Handler_process(1, HG_STATUS_IGNORE);
fprintf(stderr, "HG_Handler_process() completed.\n");

... but do not issue any RPC operations to the server.  The expected behavior is that HG_Handler_process() will honor the timeout value of 1 and return even though no requests have been received, but it appears to hang indefinitely instead.
Mercury is configured to use the BMI transport in this case.
This problem is present in git revision 167235d514d544dc1f49d1f4ca7d15d8747a36d1.  It worked as expected a few weeks ago but I'm not sure what revision that was.

Comment by jsoumagne on 1 Jan 1970 00:22 UTC
There was a wrong timeout conversion introduced by some recent modifications. This is now fixed in commit 1d38cc8179ec77f34af8f8ff5b8b2324bc9b117b.


Documentation for LensExt and Widget is missing from druid docs

The pages for LensExt and Widget both cannot be found in the 8.2 druid docs.

Excellent find. Not sure how I missed this myself, Widget is kind of fundamental. 😆 I looked into it and found some others like WidgetId also missing. Gonna have a PR up in a minute.


where possible use generators + reduce copies on loops

Changes:

in loops iterate without copies where possible
checks for key presence in dict with bare in instead of copy to list of keys and check presence of key in list
where possible convert copying to memory to lazy iteration on expected large dataset
for yaml use string buffering instead of list accumulation with string concat

INFO: did not run tests, working on obtaining meraki API key

[ ] test before merging


Clarified azure simple walkthrough documentation

Provided some clarification to the azure simple walkthrough based on CSE syncweek.  Particularly around the ssh keys #753
FYI @timfpark

Updated based on your feedback with a squashed commit.


gcsfuse 0.11.2

This release comes with a new build tool and with vendored dependencies,
so the extensive list of dependencies is no longer needed.

@dunn: To punish you for being so helpful and responsive in other pull requests recently, can I ask you to look at this one? :-) It seems like this repository isn't watched for pull requests as closely as the main one; just want to make sure it doesn't get lost.

Thanks for the comments, everything addressed.

Looks good! Merged in 036060cc3e72f10f520ef19497eaf211b98f0b0b.

@dunn: Thanks!


Fix django async/loop

async fix in aux_func for Django
Move loop to be global

hi there - I am not able to find django samples in this repo or the sample python repo (https://github.com/microsoft/BotBuilder-Samples/tree/master/samples)
Have they been moved elsewhere?
Any guidance on how to use async method, django and bot framework would be great.

Hello @viperfx , given that the framework heavily relies on asyncio syntax we no longer support django. We recommend you look into sync frmeworks like aiohttp or tornado.

Hey @axelsrz thanks for the reply. Given that django is one of the most popular frameworks in python and it's very unlikely developers are going to run two different frameworks and libraries side by side for applications, it really would benefit the adoption of SDK framework to support what is currently the state of python ecosystem. The python3 adoption is good, but async I would say is still very early. Lot of database and ORM adapters do not support async right now, and still being actively worked on. All these pieces need to come together to make an application to serve end users.
Django has recently added support for Async - https://docs.djangoproject.com/en/3.0/topics/async/
But as you can see, there is a phased approach for adding full async support.
I would really encourage another look and adding some samples around how a non-async codebase in django could use bot framework, e.g. pre django 3.0, and if that is not possible, then adding a sample for django 3.0 onnwards with bot framework.
We have an existing solution in Teams that uses our internal SDK with REST APIs, but we are interested in using the bot framework too with our existing code base.


Add the style utils inside the application.

@nidovic @ngakui  i this stask is not need. Really i don't see the importance of this task i think we should remove it.
please tell me what do you think


Ugly brackets in the menu

VSCode Version: 1.1.1
OS Version: El Captian (10.11.5)

How can I remove those ugly brackets in the menu? are they shortcut hints? No use to me at all.

here's another catch:

Don't save and save with the same hint : (S) ?

same to #6184 re duplicate HK of 'S'

@Darren the accelerator of "Undo" under "Edit" looks weird, it's supposed to be same as ENU version, can you attach a ENU s/s?

@dbaeumer The accelerator looks combination of 'Ctrl' key and 'Z', 'Ctrl' is translated as is in English for Fareast languages, not sure why such appearance on running build.

@johnliu2016 The character in parenthesis are for the acceleration key. In language with latin characters this nicely aligns with the text (e.g In German the File menu is called Datei and the acceleration key is d denoted in the translation with &&Datei). However in Chinese we can't use an Chinese character as the acceleration key (would require a different input method and I don't know if this would be feasible at all). So the translators but the accelerator key into parenthesis at the end of the Chinese text as a latin character.
Actually I have to admit that I don't know what the standard is here. @johnliu2016 can you check another product (for example MS Word) and see what they do when running in a Chinese locale.

@chrisdias, @egamma: this might be something we need to reconsider as well. I agree that the latin character in parenthesis looks wired.

@bpasero is there another way to define an acceleration key than putting && into the text. Can this be done via API?

@dbaeumer putting a Latin character surrounded by parenthesis at the string end is the convention of mnemonics localization for Fareast languages (CHS, CHT, JPN and KOR). @Darren usage this mnemonics keys (also known as hotkeys) is pressing key combination (e.g. File menu, 'Alt' + F) to invoke the menu through keyboard. @dbaeumer What seems strange to me is the appearance of accelerator of submenu 'Undo' under menu 'Edit', usually it's like "Ctrl + Z", we localize the short form of the CtrlKey to Fareast languages as is in English.

@johnliu2016 the character you see is the Symbol for Command on the Mac.

@johnliu2016
These hotkeys do not work on OSX,  I have tried 'Alt' + F, 'Ctrl'+F and 'CMD'+F, none works for me.
That's the part that confuses me much, looks ugly is another thing, other applications like Safari, Atom do not have such hotkeys hints(ie, hotkeys in brackets instead of on the right).

FWIW, OS X Human Interface Guidelines  for menu bars,
https://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/OSXHIGuidelines/MenuBarMenus.html
Since vscode is cross-platform, I think it is important to bring native user experience to users on different platforms.

Thanks @Darren. Mistook the OS scenario. @dbaeumer, my previous comment was based on Windows OS (sorry lack of OSX environment to test other product), if same loc work being shared targeting various platforms, I'd agree on separate consideration to fit this case.

@bpasero it looks like the Mac doesn't have mnemonic support for Menus (at least Andre isn't aware of any). To make this look nice we either need to strip the last 3 characters "(x)" from a menu label under OS X when running on a fareast language or we need two different keys with different translations.
Moving to you to consider the best solution.

@johnliu2016 can you clarify what pattern I should look for to remove these mnemonics on Mac? Are you always just adding 3 characters at the end of the label in the form of (<letter>)?

@bpasero for the 4 Fareast languages, the pattern is like "()", with the  denoted with "&&".

I am using vscode 1.2 now, it looks so pretty!
thank you guys all!


Add nce loss example for word2vec and lstm

add readme
nce
add lstm example

https://github.com/dmlc/mxnet/issues/2704

@xlvector Do you have time to add the latest version? We can rebase and merge this example.

I will add it this weekend. Thanks!

@sxjscience Seems last test is random failed because I only change README in last commit.

@xlvector Fine. Let's rebate and I'll merge it.

@sxjscience I have tested it under CPU. Since I only use python, I think GPU will also works.


Urgently need to update SPFx tools to newer NodeJS vesion

According to this article, SPFx requires NodeJS 10.0. This is an old version that will reach End-of-Life at the end of this month (April, 2021) according to the Node site: https://nodejs.org/en/about/releases/.  When it reaches End-of-Life some libraries used with SPFx, like SASS, will stop supporting it.
The tutorials for SPFs need to updated to use a more recent version of NodeJS ASAP.

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

ID: 5bee09a8-022e-1b5a-4aab-d6e7c6216808
Version Independent ID: 49edce1e-f2be-e989-917f-c6b389363e2f
Content: Set up your SharePoint Framework development environment
Content Source: docs/spfx/set-up-your-development-environment.md
Product: sharepoint
Technology: sharepoint-framework
GitHub Login: @VesaJuvonen
Microsoft Alias: vesaj

Actually SPFX 1.12 has supported Node12.x, however, as Version 1.12 release is currently considered as deprecated and has been unpublished due the unexpected regressions.
So currently, still suggested to use SPFX v1.11 instead.
You can wait for the new version release of SPFX, it will support Node.js 12.x

As @Jerry0527 said, Microsoft is aware. SPFx v1.12 did address this but had to be pulled. They've publically said that v1.12.1 will be released in April and it will include support for Node.js v12 & v14.


Added metrics needed for multi-node etcd and backup-restore.

How to categorize this PR?
/area monitoring
/kind enhancement
What this PR does / why we need it:
This PR adds support for new Prometheus metrics required for multi-node etcd and backup-restore in order to debug/fine-tune multi-node etcd.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:

Please see the doc: https://github.com/gardener/etcd-druid/pull/414
This PR requires new release of backup-restore as we have exposed some new metrics in backup-restore. Please refer here.
I will enhance the etcd prometheus alert.

Release note:
Adds prometheus metrics required  for multi-node etcd.

This PR requires the new release of backup-restore.
/do-not-merge

This PR requires the new release of backup-restore.

I will convert the PR to draft.

Should this PR be merged into https://github.com/gardener/gardener/pull/6630?

Should this PR be merged into https://github.com/gardener/gardener/pull/6630?

either ways is fine

/milestone v1.55
/assign @timuthy
as discussed 😄


Error connet to DevTools Protocol

I have this issue when lunching command:
Connecting to the Chrome DevTools Protocol...
(node:24712) ExperimentalWarning: The Fetch API is an experimental feature. This feature could change at any time
(Use node --trace-warnings ... to show where the warning was created)
Could not connect. This usually means that your browser was already running (but without having the CDP port set). If that's the case just close it and run this program again, it will then launch it for you with the correct CDP port configured.
Config file:
"cdpPort": 38818
Chrome version: 131.0.6778.205
Chrome start with grok page but than nothing happening. I try to close chrome but nothing change

Your Node version seems a bit old since it complains about the Fetch API being experimental, but I don't think that's the issue though.
Which operating system are you on? Did you try to check the "task manager" to see if Chrome is already running? If it is then try to force quit it and run the archiver again to see if it now can connect.
I have a newer version of the archiver that I'm about to release by the way, maybe I'll do it later today or tomorrow, maybe I have fixed a bug there which will help (since I've done multiple changes).

Operating system: Windows 11
Update node to version 22.12.0
On task manager there is not chrome process
Same error

Thanks, I think I figured it out. Planning on releasing patch tomorrow.


Finish instructions for using the Editor

Currently, this wiki page is a stub: https://github.com/CafIncubator/Midden/wiki/Using-the-Midden-Editor (updated to here: https://github.com/CafIncubator/Midden/wiki/Using-the-Midden-Dataset-Editor)
These instructions should be completed in order to support creation of .midden files.
This will also aid in creating the context mentioned in #77

Added content to "Overview" section, added "Workflow" section, added missing fields to the "Metadata fields" section. Not perfect, but close enough to close, I say!


  So that we can avoid others having the same problem, how did you end up with 0.1.0a3, which is many releases behind at this point?

Oh, good catch!
I just used conda install -c pyviz panel. Maybe there are some conflicting packages?

I had the same problem when I tried to install to a colleague. I tried to install it on the base environment of a new conda. I never found how to solve it since I use only pip in my own computers

I think there are probably two problems here, then.  First is that alpha releases somehow made it onto the main pyviz channel:

Second is that somehow your environment is not allowing the installation of later versions of panel, perhaps because you have some packages pinned.  We can fix the first problem by removing those bogus alpha packages so that they are never selected.  The second problem is likely not up to us to address, but to do with other packages that conflict with panel's requirement.

@philippjfr, is there any reason to keep the main label on the a2 and a3 packages?

No I'll remove those tonight.

maybe this is also interesting:
conda install -c pyviz panel==0.5.1                             dario@hadar
Collecting package metadata: done
Solving environment: done

## Package Plan ##

  environment location: /home/dario/anaconda3

  added / updated specs:
    - panel==0.5.1

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    bokeh-1.1.0                |           py37_0         6.3 MB
    holoviews-1.12.1           |             py_0         3.2 MB  pyviz
    markdown-3.1               |           py37_0         113 KB
    panel-0.5.1                |             py_0         279 KB  pyviz
    testpath-0.3.1             |           py37_0          90 KB
    ------------------------------------------------------------
                                           Total:        10.0 MB

The following NEW packages will be INSTALLED:

  markdown           pkgs/main/linux-64::markdown-3.1-py37_0

The following packages will be REMOVED:

  anaconda-2019.03-py37_0

The following packages will be UPDATED:

  bokeh                                        1.0.4-py37_0 --> 1.1.0-py37_0
  holoviews                             1.11.0-pyh39e3cac_0 --> 1.12.1-py_0
  panel                                        0.1.0a3-py_0 --> 0.5.1-py_0

The following packages will be DOWNGRADED:

  testpath                                     0.4.2-py37_0 --> 0.3.1-py37_0

Proceed ([y]/n)?

That seems like a reasonable installation plan to me, though I don't know what "anaconda-2019.03-py37_0" achieves; maybe it was pinning a bokeh version.
I'm concerned that once we remove our alpha packages conda will try to install panel-0.0.1a3 instead (the next newest release), so we may also need to remove that one.  It only had one download ever anyway, so I don't think it will be missed.

That package was also conflicting with spacy. Maybe there is some issue with the current anaconda release.
Installing panel 0.5.1 fixed the original problem, though.
I really love the whole pyviz endeavor, btw! Thank you, guys! :)

The anaconda package is a metapackage which specifies exact versions of a number of commonly used data science libraries which are tested for compatibility.  Each anaconda version specifies a set of library versions which were available at the time of the anaconda release .  Since these version are fixed in the anaconda package it is expected that upgrading one of these libraries will require the removal of the anaconda package.  In this particular case, the anaconda 2019.03 package requires bokeh 1.0.4 so upgrading this package requires removing anaconda.  This is fine, all the other libraries are still available.

@jjhelmus, thanks for the explanation!  In this case, it sounds like having the anaconda package installed makes conda prefer an ancient version of panel (nine releases behind the current version), because that ancient version failed to specify what bokeh version it requires, and thus could be installed without requiring changing the bokeh version and thus forcing removal of anaconda.
We'll fix that at our end by removing the older panel packages, and maybe that's the only fix needed.
Still, it seems like very unintuitive behavior for an explicit user action of conda install -c pyviz panel.  If I as a user explicitly request a package, I would typically expect to get the latest release without having to think much about it, or at least a recent release. Maybe that's not possible to achieve without violating some other conda behavior, but perhaps the anaconda package and some other metapackages could somehow be marked as having a very low priority to remain installed?
I'd want our pyviz metapackage to behave the same way -- install a consistent set of packages when it's first installed, but if someone explicitly installs a later package that forces upgrades, quickly decide to remove the pyviz metapackage while leaving the rest in place, so that you do what the user asked.  But I can easily imagine other metapackages that would want to behave differently, rigidly ensuring a set of matched packages and never getting removed automatically, so there may be no simple way around this behavior.
Maybe there could at least be a big warning when falling back to such an outdated release, along with an explanation of why that was forced?  I know that's a lot of logic and reasoning to ask for, though...

Still, it seems like very unintuitive behavior for an explicit user action of conda install -c pyviz panel. If I as a user explicitly request a package, I would typically expect to get the latest release without having to think much about it, or at least a recent release.

This is the behavior of conda, the version of packages specified on the command line are maximized given the current channel priority and satisfiability conditions prior to other solver optimization.  I am not sure how the older version of panel was installed into the environment @fedario described.  When I create an environment with anaconda 2019.03 and then install panel from the pyviz channel I get the latest version, 0.5.1:
~$ conda create -n test anaconda=2019.03
Collecting package metadata: done
Solving environment: done

## Package Plan ##

  environment location: /home/jhelmus/anaconda3/envs/test

  added / updated specs:
    - anaconda=2019.03
...
~$ conda activate test
(test) ~$ conda install -c pyviz panel
Collecting package metadata: done
Solving environment: done

## Package Plan ##

  environment location: /home/jhelmus/anaconda3/envs/test

  added / updated specs:
    - panel

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    bokeh-1.1.0                |           py37_0         6.3 MB  defaults
    markdown-3.1               |           py37_0         113 KB  defaults
    panel-0.5.1                |             py_0         279 KB  pyviz
    param-1.9.0                |             py_0          75 KB  pyviz
    pyct-0.4.6                 |             py_0           3 KB  pyviz
    pyct-core-0.4.6            |             py_0          12 KB  pyviz
    pyviz_comms-0.7.2          |             py_0          10 KB  pyviz
    testpath-0.3.1             |           py37_0          90 KB  defaults
    ------------------------------------------------------------
                                           Total:         6.9 MB

The following NEW packages will be INSTALLED:

  markdown           pkgs/main/linux-64::markdown-3.1-py37_0
  panel              pyviz/noarch::panel-0.5.1-py_0
  param              pyviz/noarch::param-1.9.0-py_0
  pyct               pyviz/noarch::pyct-0.4.6-py_0
  pyct-core          pyviz/noarch::pyct-core-0.4.6-py_0
  pyviz_comms        pyviz/noarch::pyviz_comms-0.7.2-py_0

The following packages will be REMOVED:

  anaconda-2019.03-py37_0

The following packages will be UPDATED:

  bokeh                                        1.0.4-py37_0 --> 1.1.0-py37_0

The following packages will be DOWNGRADED:

  testpath                                     0.4.2-py37_0 --> 0.3.1-py37_0

testpath is downgraded as panel 0.5.1 restricts the package to <0.4. Is there something unexpected in this behavior?
I did find that conda install -c pyviz pyviz requires a downgrade to Python 3.6.  My guess is that there is a requirement that is missing or in conflict that prevent Python 3.7 from being used.  I'll investigate this further.

We usually pin the pyviz package very precisely to ensure that everyone has very similar packages when we run tutorials. We will update the pyviz package to latest versions very soon and unpin 3.6, so I don't think you need to investigate further.

We'll take care of pyviz, but this issue is really about panel.
@jjhelmus, it looks like @philippjfr removed the bogus main label from the alpha packages panel-0.1.0a3 and panel-0.1.0a2 last night as I requested.  From your results today, it looks like that change did fix this specific issue, as I had expected it would; users now get the latest panel because there's no distracting older version of panel without a conflicting pin of bokeh. That's great, and this specific issue is now gone for us.
Still, that's just a local fix for panel, and it seems like the same problem will occur for any package that has ancient versions not pinning something in Anaconda Distribution, and current versions that do pin in a way that conflicts with the installed Anaconda Distribution.

Still, that's just a local fix for panel, and it seems like the same problem will occur for any package that has ancient versions not pinning something in Anaconda Distribution, and current versions that do pin in a way that conflicts with the installed Anaconda Distribution.

Although not specific to the anaconda package, conda will prefer a lower package version if that version it compatible with the packages already installed in the environment and the newer version requires changes to the existing packages.  In these types of cases it can be difficult to determine the behavior a user would prefer, some users want conda to make the fewest changes to the environment necessary to install the new package, others want newer versions at the expense of changing more packages in the environment.  Conda provide flags which can be used to control some of this behavior. In particular --update-deps will update the dependencies of the package(s) specified on the command line which should result in installation of the latest version in (nearly?) all cases.

@jjhelmus, thanks for the background.  I guess I'm wishing that packages installed with the anaconda-2019.03 metapackage not be considered precious compared to the package the user explicitly requested from the command line, i.e. not to consider such "came for free" packages to be needing to be preserved by default, compared to ones the user previously explicitly requested or were dependencies of some real package they user explicitly requested (not just something that came with the base distribution).  Sure, a user can explicitly add --update-deps, but it's hard to see how they will realize they need to do that; conda will just happily install an ancient version and they'll run into problems as found here.  But that's an extra level of complexity to add to conda just to try to get it to behave more reasonably in cases like this, and surely would cause some other unreasonable behavior, so it seems unlikely to be feasible.  I guess we'll just try to make sure that the packages we use don't have any ancient, dependency-less versions hanging around for the unwary.


In [[text]] placeholder can you

Thank you so much for taking into account my suggesion on text place holder .
Can you please remove illegal character from the first tweet before parsing it as a title .
Characters like

Thanks for catching that! I used a method that Obsidian provides for cleaning up filenames, but it looks like it doesn't catch everything. I'll go ahead and implement another.

Version 1.1.1 has just been published which will alleviate this issue. Thanks for reaching out!

Thank you so much for fixing this


Lambda layer change not detected (only package.json)

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
No response
Amplify CLI Version
4.52.0-alpha.0
What operating system are you using?
ubuntu
Amplify Categories
function
Amplify Commands
push
Describe the bug
Lambda layer change is not detected for node.js, only the hash of package.json is considered.
Expected behavior
I'm sharing code among lambda functions; it should update when I make a change.
Reproduction steps

Write lambda layer
put a .js file in the layer
amplify push; the first time it will create the layer and correctly include the files, which can be imported by lambda functions through /opt/nodejs/
change the .js file and push again; it won't detect a change.

GraphQL schema(s)

# Put schemas below this line

Log output

# Put your logs below this line

Additional information
See hashLayerVersionContents function (amplify-cli/packages/amplify-category-function/src/provider-utils/awscloudformation/utils/packageLayer.ts/)

Thanks, I'll do that, but it would be sufficient to just exclude node_modules and include other files. The opt directory seems to be undocumented.

The /opt folder is mentioned during the add function flow by the CLI, but I agree we should have better documentation around it. Thanks for pointing this out @frank-unovica!


Migrations do not allow auth.users triggers

Bug report
Describe the bug
Adding a trigger using migration is not working. The SQL code for the trigger is not added to the migration for some reasons.
To Reproduce

Run the following SQL query:

CREATE FUNCTION handle_new_user()
RETURNS trigger
LANGUAGE plpgsql
SECURITY definer
AS $$
BEGIN
  RETURN new;
END;
$$;

CREATE trigger on_auth_user_created
  AFTER INSERT ON auth.users
  for each ROW EXECUTE PROCEDURE handle_new_user();

supabase db commit add_trigger
Look at the migration file, the trigger is not there.

Expected behavior
All runned SQL queries should appear in the migration file
Screenshots
If applicable, add screenshots to help explain your problem.
System information

OS: macOS
supabase-cli: 0.15.10

This is related to https://github.com/supabase/cli/issues/96#issuecomment-1000255696. Basically migrations can't handle auth.users triggers until we (Supabase) rethink db permissions.

This is related to #96 (comment). Basically migrations can't handle auth.users triggers until we (Supabase) rethink db permissions.

@soedirgo  So i need to add them manually?

Yeah, I think the workaround for now is to put it in supabase/seed.sql.

@soedirgo That mean that the seed.sql is ran when pushing on a remote database?

Nope, it doesn't get pushed, so for now you'd have to manually keep it in sync.

Sounds good thanks

I'll keep this open if you don't mind so others are aware this is being worked on.
Similar issues:

https://github.com/supabase/cli/issues/61
https://github.com/supabase/cli/issues/96

This is now supported.

@soedirgo I was just noticing that my auth triggers are not included in the migrations between my remote and local databases, just arrived here but still couldn't make it work, am I doing something wrong? thanks in advance!

Hey @alemontesdev, I think this is just a limitation of the generated migrations - there's no easy way to include auth.users triggers without also including schema changes on the auth.users table itself (which is a no-no, these are managed internally).
But you should be able to include the triggers in your migration, and supabase db push should work.

Aftersupabase db PULL  triggers from auth.users are still missing for me (supabase 1.110.1).

@ebouther the command should be supabase db pull --schema auth. See the last paragraph of https://supabase.com/docs/guides/cli/local-development#use-auth-locally


Enable no-floating-promises for azurecore

Nothing really of note fixed here, just a few tests that weren't awaiting properly.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 39 (5.13%)  changed or added relevant lines in 14 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.0005%) to 42.087%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

extensions/azurecore/src/azureResource/services/cacheService.ts
0
1
0.0%

extensions/azurecore/src/azureResource/services/subscriptionFilterService.ts
0
1
0.0%

extensions/azurecore/src/azureResource/services/subscriptionService.ts
0
1
0.0%

extensions/azurecore/src/azureResource/tree/flatTreeProvider.ts
0
1
0.0%

extensions/azurecore/src/azureResource/tree/accountTreeNode.ts
1
3
33.33%

extensions/azurecore/src/azureResource/tree/connectionDialogTreeProvider.ts
0
2
0.0%

extensions/azurecore/src/extension.ts
0
2
0.0%

extensions/azurecore/src/account-provider/auths/azureAuth.ts
0
3
0.0%

extensions/azurecore/src/account-provider/azureAccountProvider.ts
0
3
0.0%

extensions/azurecore/src/account-provider/azureAccountProviderService.ts
0
3
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.0005%

Covered Lines:
26468

Relevant Lines:
56994

💛  - Coveralls


Registration Agency: CR-RPJ

Hi Aidstream,
Please can the Registration Agency CR-RPJ be added to Aidstream?
This is for the Registro de Personas Jurídicas (Costa Rica). As discussed here: https://github.com/org-id/register/issues/235.
Thanks,
Jahnvi

@jahnvidave Registration Agency CR-RPJ has been added


bug of commandline "--remote-tab-silent +/pat"

commandline gvim.exe --remote-tab-silent +/1 c:\1.txt
show error: E486:Pattern not found:1|cal foreground()|if &im|star|en|redr|f
gvim.exe --remote-tab-silent +/1/ c:\1.txt worked, but it's not perfect.
This is caused by this line:
https://github.com/vim/vim/blob/5703310e640c4b142a16a3ea4f45317565ae8c32/src/clientserver.c#L662
Originally posted by @k-takata in https://github.com/vim/vim-win32-installer/issues/240#issuecomment-1025378436

This seems to fix the issue:
diff --git a/src/clientserver.c b/src/clientserver.c
index 793570abd..2ea57b347 100644
--- a/src/clientserver.c
+++ b/src/clientserver.c
@@ -652,14 +652,12 @@ build_drop_cmd(
     if (inicmd != NULL)
     {
 	// Can't use <CR> after "inicmd", because an "startinsert" would cause
-	// the following commands to be inserted as text.  Use a "|",
-	// hopefully "inicmd" does allow this...
+	// the following commands to be inserted as text.
 	ga_concat(&ga, inicmd);
-	ga_concat(&ga, (char_u *)"|");
     }
     // Bring the window to the foreground, goto Insert mode when 'im' set and
     // clear command line.
-    ga_concat(&ga, (char_u *)"cal foreground()|if &im|star|en|redr|f<CR>");
+    ga_concat(&ga, (char_u *)"<C-R>=execute([foreground(), 'if &insertmode | startinsert | endif', 'redraw', 'autocmd CmdlineLeave * ++once file'])->slice(0, 0)<CR>");
     ga_append(&ga, NUL);
     return ga.ga_data;
 }

Although, a better fix would be to handle the case where inicmd is startinsert separately, so that we can use <CR> instead of |.


[tests] Fix pylint errors in tests/unit

Related #643

does what it says
several doc string/sentence fixes when seen

recheck

recheck


'sort' method sorts one column only

The 'sort' method changes the order of one column only (the one defined by the argument 'column'), thus creating a mismatch between a sample fields. I would expect it to change the order of the samples as a whole, based on the 'column' order.

Hi ! ds.sort() does sort the full dataset, not just one column:
from datasets import *

ds = Dataset.from_dict({"foo": [3, 2, 1], "bar": ["c", "b", "a"]})
print(d.sort("foo").to_pandas()
#    foo bar
# 0    1   a
# 1    2   b
# 2    3   c

What made you think it was not the case ? Did you experience a situation where it was only sorting one column ?

Hi! thank you for your quick reply!
I wanted to sort the cnn_dailymail dataset by the length of the labels (num of characters). I added a new column to the dataset (ds.add_column) with the lengths and then sorted by this new column. Only the new length column was sorted, the reset left in their original order.

That's unexpected, can you share the code you used to get this ?


Cairo security

Hello, can we contribute by providing some security best practice ? In practice it will be another section of the book talking about security only. All i can see now is only general recommendations...

Hello @enitrat , i'am thinking about a soliidty by example like section with mainly security recommendations instead of only unsecure tutorials.
What do you think?

Unlike Solidity, Cairo as a language is a lot safer and there is no risk of introducing a vulnerability bu misusing the language: all vulnerabilities would be introduced by a flawed logic. I don't think it's a proper fit for our content

https://starknet-by-example.voyager.online/starknet-by-example.html perhaps it would be a better fit there

@enitrat thanks , I will move it to starknet by example GitHub. Thanks .
You can mark this as completed now


Memory leak through event listeners

After removing torrents it stay (relative objects) in memory.
To fix this we need to unsubscribe objects from events on destroying. Reemit module should provide a way to unsubscribe too.

This is super old, closing.


Register an index with dbindexer needed for admin history to work.

When clicking the "History" button in the Django contrib admin an exception is raised asking to add an index definition to models.LogEntry (due to filtering on a TextField). Assuming one uses dbindexer and autoload this will add the index on the appengine level.
I don't know why the LogEntry.object_id is a TextField (all I've got are integers), but probably there are some reasons for that -- hopefully length limitation (my current understanding is that it adds a CharField with max_length=500) introduced by dbindexer does not break something somewhere.
This only works for newly created data, so to actually see existing entires you'll need to dump and reload.

There is a potential flaw here -- the indexing wouldn't work if one would create a model instance with a key longer than 500 characters when cast to a string.
Appengine backend limits keys to fields with db_type of "int" or "text" (thus not "longtext"), this in particular means that a "TextField" cannot be used as a model's primary key. Still there might be something that has the db_type of "text", yet can overflow the 500 characters limit.
Hard to be sure, but it looks like Google's datastore also limits key lengths to 500 characters (this is not documented, but at least in one place seems to be enforced -- at Key.from_path() at google.appengine.api.datastore_types.py,  by calling ValidateString on a element potential name, the validation defaults to _MAX_STRING_LENGTH = 500). If true, it would mean that the backend shouldn't let the user use anything that can be longer than 500 characters when encoded as unicode as a key.
Other than that I've tested with a few nonstandard primary key fields (floats, dates, IP addresses) and all get a proper history.

You must be insane to use PKs > 500 chars. I don't think we need to care about that.
But I don't know if automatically registering indexes is the right thing to do. Maybe someone with App Engine experience could help reviewing this patch?

Oh you're right, seems like the right thing to do then to me

this looks pretty straightforward. +1 for merging


fix: 下钻数据没有按照用户数据展示

👀 PR includes

✨ Feature

[ ] New feature

🎨 Enhance

[ ] Code style optimization
[ ] Refactoring
[ ] Change the UI
[ ] Improve the performance
[ ] Type optimization

🐛 Bugfix

[X] Solve the issue and close #0
1. fix: clearDrillDown 无法全量清空的问题。 - 用户传入 clearDrillDown = {} 无法全量清空下钻
2. fix: 树状结构下多层级排序失效的问题
🔧 Chore

[ ] Test case

[ ] Docs / demos update

[ ] CI / workflow

[ ] Release version

[ ] Other ()

📝 Description
🖼 Screenshot

Before
After

❌
✅

🔗 Related issue link

🔍 Self Check before Merge

[ ] Add or update relevant Docs.
[ ] Add or update relevant Demos.
[ ] Add or update relevant TypeScript definitions.

:tada: This PR is included in version @antv/s2-v1.18.0-alpha.4 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version @antv/s2-react-v1.16.0-alpha.4 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version @antv/s2-v1.18.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version @antv/s2-v1.18.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version @antv/s2-react-v1.16.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Turn off Codecov annotations

Description
Those annotations create enormous clutter in diff views on GitHub, making PR reviews complicated. Since we are currently not headed toward 100% coverage, they provide little benefit.
Codecov stats aggregation still runs, this is specifically about the inline dialogs.

See also: https://github.com/codecov/codecov-action/issues/135
Tasks

[ ] Tested on Linux
[ ] Tested on Windows
[ ] Tested on macOS
[ ] Tested on iOS
[ ] Tested on Android

How to test this PR?
To truly test this, we might need to have some actual code changes 🤔
Since this changes only the config, we can't see the effect inside this PR.

You can hide annotations on a file basis if it's too distracting.

I personally would keep them enabled. It gives a good hint for files we do have tests and also a constant reminder to enhance our tests.

You can hide annotations on a file basis if it's too distracting.

Thanks, that's a nice trick -- but it's a pity that it needs to be done for each file.

I personally would keep them enabled. It gives a good hint for files we do have tests and also a constant reminder to enhance our tests.

But do we plan to concretely act on those annotations?
Or should we maybe check out aggregated coverage statistics and see which files have low coverage? That might be more expedient than on a per-line level.

I don't get why they didn't add an UI option, but you can just press a on a PR and all annotations vanish 😄
https://twitter.com/natfriedman/status/1366417484698578953

But do we plan to concretely act on those annotations?

If the code isn't an implementation detail with low-level dependency (i.e. socket/file/etc) then, I think we should act on them (at one point), because it would mean you added a new code path that's not covered by a test.
The aggregated view you can get and it's indeed quite useful.

I don't get why they didn't add an UI option, but you can just press a on a PR and all annotations vanish 😄
(Bonus tip: You can press i and all comments get hidden)

Amazing, thanks a lot! True GitHub wizard 🧙
This is probably a workaround I could live with, if others deem the Codeconv annotations truly useful. For me they were mostly in the way, but maybe other contributors see this differently.


Octree Factory implementation

CAVEAT: this branch builds currently on the PR #219, less modifications will appear as soon #219 is merged into branch.
UPDATE: master with #219 modifications is merged
This is the factory implementation and test in the sdl viewer

@nnmm fyi

LGTM

@wally-the-cartographer merge

:eyes: @pifon2a is wally asleep again?

@wally-the-cartographer merge

Merge requested by authorized user feuerste. Merge queue now has a length of 1.


Why does scaling matrices in openglframework use half-extent / radius?

Hi,
I'm not exactly following the intuition behind using half-extent and radius for scaling the primitive shapes like box and sphere, in the openglframework (I understand the usage of half-extent in the physics system itself).
Assuming the primitive shapes have normalized dimensions of (1,1,1) on each axis, why not just multiple by the length of each side ?
Thanks

For instance for the box, yes, that's right, if the normalized length is 1, we would need to use the length to scale the shape.
However, if it is the normalized half-length that is 1, then we need to use the half-length to scale the shape. If you open the testbed/meshes/cube.obj file, you can see that this is indeed the case. The half-length of the cube is 1 (and its length is 2).
Both solutions are valid, it's just a matter of choice.

Thank you very much for pointing out this out. I have missed the fact that asset files are exported in model space, which are centered around the origin, therefore the vertex coordinates are based on the half-extent.


Reset AutoRespawn quotes

Not sure why Max set it to "You wake up in an unfamiliar place..." since that's the random-spawn message and this isn't that.

Because it was the original quote displayed when you respawned in Civcraft 2.0

Neat, I didn't know we could add more. I'd like to keep the "You wake up in an unfamiliar place" though, and cut out the ones that don't make sense for a first time spawn though

cut out the ones that don't make sense for a first time spawn though

That's the thing though, this is an update to the AutoRespawn config, not the RandomSpawn config. AutoRespawn does nothing but forcibly respawn people after X amount of time being dead. The messages are just fun extras to indicate to the player that they've been respawned. Keep in mind that the reason why this PR is titled "Reset AutoRespawn quotes" is because this PR is resetting the config back to the default config. I was always a little perplexed that Maxopoly enabled AutoRespawn with solely the RandomSpawn quote, which means you get the same message dying while afk and respawning in your house, as dying in PVP and getting random-spawned somewhere.

Is there any way for this to reference the method of death?  One big gripe players have is they will come back to the game and find they've been respawned and have no idea why or how it happened. I know that's out of the scope of the respawn message

Is there any way for this to reference the method of death? One big gripe players have is they will come back to the game and find they've been respawned and have no idea why or how it happened. I know that's out of the scope of the respawn message

Hmmm, it's bizarre... there's no easy way to gleam this information. It's not on PlayerDeathEvent or its parent EntityDeathEvent, nor is it on PlayerRespawnEvent or PlayerPostRespawnEvent. You could, perhaps, do some logic on the death message for PlayerDeathEvent but that's jaaaanky. Those closest to a solution is Entity#getLastDamageCause() immediately after a player has died and then caching the result somehow. I'm not sure if it'll work in all cases though... like does the /kill command work properly? Would it be recorded as "damage dealt" or.. I dunno, probably worth some testing.

...but even then, you'd only get the "last hit" reason. Say you were pvp-ing but technically died to fall damage. Would it be more accurate to say they lost in pvp battle or succumb to environment damage?

One big gripe players have is they will come back to the game and find they've been respawned and have no idea why or how it happened.

I could change the messages to something like "You have been automatically respawned."

I think in this case this is fine a fine PR, and we can plan some follow on work to address players not knowing what killed them. The contents of this PR do seem to address the intent of it and I don't see  any issues with it


Would the AGAGD documentation be better placed on an external service?

Summary
There are a few documents within /docs file which provide a general startup guide. Additionally, we have two documentation pages https://agagd.usgo.org/information/ and https://agagd.usgo.org/qualifications/ which may be better served externally and may be easier to manage in markdown.
Question

Would the AGAGD documentation be better placed on an external service like https://readthedocs.org?

Describe the feature you'd like to see on the AGAGD.
Documentation pages formatted in markdown and potentially deploy to another service instead of directly within the AGAGD application.  There is also the ability to move the documentation to a url like "docs.agagd.usgo.org" for example.
@vash3g @duckpunch thoughts?

may be easier to manage in markdown.

Hm.  This is a good point, but how often do they change?  If they change often, Markdown seems like it would improve life.  If not, 🤷 .

Would the AGAGD documentation be better placed on an external service like https://readthedocs.org?

For the info and qualification pages, it seems appropriate where it's at since our audience might be people who are essentially trying to update what they see on AGAGD.  As an aside, we could also add some content about when a TD can expect to see ratings updated.
All that said, I don't feel very strongly about keeping them in the app, so if you have a vision for moving it, I'm happy to roll with it.
For the repo/dev docs in /docs, that seems reasonable to keep in the repo.  If we're looking to make it look nicer, then yeah, something like readthedocs could work.  Alternatively, we could also use GitHub Pages.

All that said, I don't feel very strongly about keeping them in the app, so if you have a vision for moving it, I'm happy to roll with it.
I don't really have a vision for moving things anywhere at the moment. I am just curious.

For the repo/dev docs in /docs, that seems reasonable to keep in the repo. If we're looking to make it look nicer, then yeah, something like readthedocs could work. Alternatively, we could also use GitHub Pages.

Good idea with Github Pages; I forgot about this. Changing our documentation may depend on how much movement there is on documentation issues like: #160 #161, if we get other documentation issues or need a cleaner place for our docs.

Closing. Question answered.


32 implementation of cli interface

The command execution requires the package installation which can be obtained with the following command inside the cloned repository directory:
pip install -e .
The -e flag allows the developer to change the code and observe the changes without reinstalling the package.
. is the cloned repository directory where pip will search for the pyproject.toml file.
You can test the CLI with:
swapanything tests/unit_test/data/faker_availabilities.csv output.csv --headers --index-col --subject-col "Nome e Cognome" --slot-col "Availabilities"
It should print the selected matches in the file output.csv. Remember to delete or to exclude the file output.csv when committing to the branch or change its path to another position.

Hello @LFK01
Could you add pytest tests following this guide? https://click.palletsprojects.com/en/8.1.x/testing/
You can check for reference the existing tests in tests/unit_test/swapanything_test

Hi @ggbaro ,
I implemented the tests, let me know if everything adds up.


Adding Twitter profile link in header

the title itself is self explanatory.

File - /app/header.php

Thanks! Closed by #53

@alexmorley  do add the labels