Defaulting back to GNOME desktop when coming back from sleep mode (cause of the type of the game?)

I noticed that some games behave the same when entering sleep mode.
In that respect playing Teenage Mutant Ninja Turtles (Shredder's Revenge) has brought me this problem once more!
The problem happens when you are in the middle of a game then pause it, let the (in my case) console hit sleep mode and come back to resume.
In this particular bug I am opening it caused a full GNOME session with ChimeraOS background being presented on screen, loosing our most precious gaming sesh :(
Here are the journalctl entries generated during that happening. I sadly have no more timestamps to share as that's as far as the journalctl entries date back to.

Since I get this problem much less often than any other (and that my log retention is very poor) I am taking the liberty to add yet another
journalctl entry containing the GNOME "crash"
In order to replay this log one needs to understand that I pulled out the power chord at around Nov 13 11:14.
Therefore everything dating from "Nov 13 11:14:52" and up is what happened after I powered on my screen, resumed the VCS from sleep mode and saw the GNOME desktop again.
So hopefully everything prior gives cleared indications as to what happen for this to happen.

I have discovered today that when I boot my console with no screen plugged in and I then plug my screen after it's booted that I am greeted by GNOME desktop.

I have the regret to tell you that after this problem appeared to have been fixed that it is now back.

That is unfortunate, what version are you running and what is your hardware?

When posting this, I was using the latest of everything on my (infamous) Atari VCS device.
However now I do see a Steam OS update, so this problem was reported before applying this:

Furthermore it's possible that you might enjoy looking at those better hence their inclusion:

Final point is that the game giving those errors is ran in 1280x1024.

PS: Everything is pointing to stable and no dev options are active.


Crash with Underground Biomes

Describe the bug
The Game crashes on start up due to soil registration with ubc
To Reproduce
Install latest dynamic trees version and latest UBC version
curse page: https://www.curseforge.com/minecraft/mc-mods/underground-biomes

This was fixed in this commit and will be included in the next version.


Ready: Make Riak PB a submodule

Basically takes the Python stuff out of basho/riak_pb and puts it here.

:+1: 7885c90

:+1: 9c098dd

@borshop merge


task139

Ⅰ. Describe what this PR does
This pr is to add License information.
Ⅱ. Does this pull request fix one issue?

fixes #139 to close Issue #15.
Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
使用命令  git log --diff-filter=A --pretty=format:"%ai" -- pkg/utils/runtimes_test.go 发现首次commit日期与copyright日期不同，修改copyright日期
Ⅴ. Special notes for reviews

you should add -s when you use command "git commit"


Run updatecli from infra.ci

Remove GitHub action and run updatecli from infra.ci

The github-action was failing and spamming my mailbox, I'll fix this pipeline later on


Any plan to update?

Hello
Do you have any plan to update the project and add support bootstrap 4 and font awesome 5?

I have the same question. I cannot get bootstrap 4.1.1 and bootgrid work together.


fix: added blockage of unnecessary event passthrough on datarow

Describe your changes
Added blockage of unnecessary event passthrough on datarow on tap
Screenshots [Optional]
Issue ticket number and link
Closes #396
Checklist before requesting a review

[x] I have performed a self-review of my code
[ ] I have added tests
[ ] I have added a changeset pnpm changeset add
[x] I have added example usage in the kitchen sink app

@evshi I tried many other ways to stop event prapogation, also tried by the adding parent div wrapper around the collapsible. but none of them works. except this one.
Need your idea or suggestion on this one


treewide: adopt orphaned packages

Description of changes
I skimmed through the list of recently orphaned packages, and addded myself as
maintainer to those I'm interested in and feel I can comfortably keep up with.

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

Also would be better to reword to treewide: .... Thanks.

Done :)


Fix crash bug with duplicate inputs within a transaction (TheBlueMatt…

…, sdaftuar)
#14249 696b936 Fix crash bug with duplicate inputs within a transaction (TheBlueMatt, sdaftuar)

Thank you!


Rename Params to Config & fix test code to new ff

Description

Upgrade to the latest algebra: https://github.com/arkworks-rs/algebra/pull/393

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (master)
[x] Linked to Github issue with discussion and accepted design OR have an explanation in the PR that describes this work.
[ ] Wrote unit tests
[x] Updated relevant documentation in the code
[ ] Added a relevant changelog entry to the Pending section in CHANGELOG.md
[x] Re-reviewed Files changed in the Github PR explorer

This looks good to me; @weikengchen should we merge this into your branch?

Let me take a look. I told Sun to disregard my PR and do the necessary changes all in this one.

Sounds good. Should I merge these into your branch, @weikengchen , or into main?

Put otherwise, @sunhuachuang, if we point this branch to the appropriate branch on curves, do things compile and pass tests?

I think let us merge it to fix-ff and see if it works.
Sun is in China and will be up in a few hours.


static ipv4 addresses not working when using overlay network and swarm mode (v1.13+)

Dear all,
my docker swarm mode cluster keeps ignoring "ipv4_address:" definitions set in version-3 compose files. I try to get a consul cluster running on my swarm mode cluster. Consul needs to advertise an ip address, and you also need to define an ip address for the "consul workers" to join ("-retry-join="). With docker ignoring the fixed ipv4 addresses I set in the compose definition, you end up with consul containers advertising ip addresses they do not own. This will never lead to a working consul cluster.
Steps to reproduce the issue:

Docker Swarm running in Swarm Mode, 3 manager-worker nodes and 2 worker-only nodes
Deploy the following v3-yml-file:

version: "3"

services:

  px-consul-dsm01:
    image: consul:0.7.5
    command: [agent, -server, -bootstrap-expect=3, -advertise=<IP_ADDRESS>, -client=<IP_ADDRESS>]
    networks:
      px-consul-net:
        ipv4_address: <IP_ADDRESS>
    volumes:
      - consul-px-tst:/consul/data

  px-consul-dsm02:
    image: consul:0.7.5
    command: [agent, -server, -bootstrap-expect=3, -advertise=<IP_ADDRESS>, -client=<IP_ADDRESS>]
    networks:
      px-consul-net:
        ipv4_address: <IP_ADDRESS>
    volumes:
      - consul-px-tst:/consul/data

  px-consul-dsm03:
    image: consul:0.7.5
    command: [agent, -server, -bootstrap-expect=3, -advertise=<IP_ADDRESS>, -client=<IP_ADDRESS>]
    networks:
      px-consul-net:
        ipv4_address: <IP_ADDRESS>
    volumes:
      - consul-px-tst:/consul/data

networks:
  px-consul-net:
    driver: overlay
    ipam:
      driver: default
      config:
        - subnet: <IP_ADDRESS>/26

volumes:
  consul-px-tst:

Describe the results you received:

The network px-consul-net is being created as expected, it comes up with the defined address range.

The 3 consul containers are created and start up as well.

Unfortunately they come up with random ipv4 addresses from the range defined in the compose file. - Not with the addresses I set in the "services" section.

As the result, I get f.e. one consul container with the IP <IP_ADDRESS>, but advertising the ip <IP_ADDRESS>; a second consul container with the IP <IP_ADDRESS>, advertising the IP <IP_ADDRESS> (accidentally the right one) and a 3rd consul container with the IP <IP_ADDRESS>, advertising the IP <IP_ADDRESS>. This will never work.

Any -retry-join=<root agent ip> statement in the service definition file will never work.

Describe the results you expected:
I expected each of the 3 consul containers coming up with the ipv4 address I set in the service definition file, for example:
networks:
      px-consul-net:
        ipv4_address: <IP_ADDRESS>

Additional information you deem important (e.g. issue happens only occasionally):
Happens each and every time I tried. Upgrading from docker engine v1.13.1 to the latest available did not help. I also installed all patches for the host system (apt-get update and apt-get upgrade followed by a system reboot). Did not help. Behaviour did not change.
Output of docker version:
Docker version 17.03.0-ce, build 60ccb22

I already tried this with docker engine 1.13.1. - Behaviour regarding the randomness of the ipv4_address: statement was the same.
Output of docker info:
Containers: 1
 Running: 1
 Paused: 0
 Stopped: 0
Images: 1
Server Version: 17.03.0-ce
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 7
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
Swarm: active
 NodeID: hyk1yifcdibctr5pnytdg8hb7
 Is Manager: true
 ClusterID: k2dzk1kjcby74hrs2vshbtq2u
 Managers: 3
 Nodes: 5
 Orchestration:
  Task History Retention Limit: 5
 Raft:
  Snapshot Interval: 10000
  Number of Old Snapshots to Retain: 0
  Heartbeat Tick: 1
  Election Tick: 3
 Dispatcher:
  Heartbeat Period: 5 seconds
 CA Configuration:
  Expiry Duration: 3 months
 Node Address: <IP_ADDRESS>
 Manager Addresses:
  <IP_ADDRESS>:2377
  <IP_ADDRESS>:2377
  <IP_ADDRESS>:2377
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 977c511eda0925a723debdc94d09459af49d082a
runc version: a01dafd48bc1c7cc12bdb01206f9fea7dd6feb70
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-66-generic
Operating System: Ubuntu 16.04.2 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 13.69 GiB
Name: t-azeurn-dsm01
ID: SOIK:RX3Q:AILR:KD4C:SFK2:X75S:27R3:W3VG:UV5D:MC6A:AP4W:3K62
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Username: ajunglsy
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Experimental: false
Insecure Registries:
 <IP_ADDRESS>/8
Live Restore Enabled: false

Additional environment details (AWS, VirtualBox, physical, etc.):
All nodes of this swarm are Azure VMs, size DS3_v2, running Ubuntu Linux 16.04.2 LTS:
Output of uname -a:
Linux t-azeurn-dsm01 4.4.0-66-generic #87-Ubuntu SMP Fri Mar 3 15:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

Output of lsb_release -a:
root@t-azeurn-dsm01:~/containerconfigs/consul-px# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.2 LTS
Release:        16.04
Codename:       xenial

Please investigate. This is really annoying. Thank you very much!
console_output_consul.txt
docker-stack-deploy.txt

I think configuration will be works great, what you see in consul logs? May be something wrong with firewalls?

@a-jung IMHO you must to check -advertise= and try to use -advertise-wan=

Static IP addresses for services are not yet supported, see https://github.com/docker/docker/issues/25303 (and https://github.com/docker/docker/issues/24170, https://github.com/docker/docker/issues/29816)

Let me close this issue, because this is already tracked through the ones I linked, but feel free to add your use case there


TypeError: forward() missing 1 required positional argument: 'lengths'

When I tried to use the pretrained interfaces for speech enhancement, I met with the error "TypeError: forward() missing 1 required positional argument: 'lengths". The error still happened when I changed the enhancement model : "source = "speechbrain/mtl-mimic-voicebank"
from genericpath import exists
import os,time,re
from sys import path
import scipy.io as sio
import numpy as np

import torch
import torchaudio
from speechbrain.pretrained import SpectralMaskEnhancement
from yaml import load
from torch import unsqueeze,squeeze

enhancer = SpectralMaskEnhancement.from_hparams(
    source = "speechbrain/metricgan-plus-voicebank",
    savedir = "/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/MetricGAN/tmp",
)
noisy, fs = torchaudio.load("/mnt/DataCenter/user1/mm/PubDataset/Voicebank/clean_trainset_28spk_wav_16k/p287_076.wav")
# Channel dimension is interpreted as batch dimension here
enhanced = enhancer.enhance_batch(noisy)
torchaudio.save('/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/spectral_mask/pretrainedModels/denoise.wav',enhanced,fs)

发生异常: TypeError
forward() missing 1 required positional argument: 'lengths'
  File "/mnt/DataCenter/user1/mm/speechbrain/speechbrain/pretrained/interfaces.py", line 1932, in enhance_batch
    mask = self.modules.enhance_model(noisy_features)
  File "/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/MetricGAN/test_speechEnhancement.py", line 20, in <module>
    enhanced = enhancer.enhance_batch(noisy)

Hi,
as you can see from the example here:
https://huggingface.co/speechbrain/metricgan-plus-voicebank
you need to pass the relative length vector in input:
enhanced = enhance_model.enhance_batch(noisy, lengths=torch.tensor([1.])
On Tue, 28 Sept 2021 at 03:10, Achaos @.***> wrote:

When I tried to use the pretrained interfaces for speech enhancement, I
met with the error "TypeError: forward() missing 1 required positional
argument: 'lengths". The error still happened when I changed the
enhancement model : "source = "speechbrain/mtl-mimic-voicebank"
from genericpath import exists
import os,time,re
from sys import path
import scipy.io as sio
import numpy as np
import torch
import torchaudio
from speechbrain.pretrained import SpectralMaskEnhancement
from yaml import load
from torch import unsqueeze,squeeze
enhancer = SpectralMaskEnhancement.from_hparams(
source = "speechbrain/metricgan-plus-voicebank",

savedir = "/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/MetricGAN/tmp",

)
noisy, fs = torchaudio.load("/mnt/DataCenter/user1/mm/PubDataset/Voicebank/clean_trainset_28spk_wav_16k/p287_076.wav")
Channel dimension is interpreted as batch dimension here
enhanced = enhancer.enhance_batch(noisy)
torchaudio.save('/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/spectral_mask/pretrainedModels/denoise.wav',enhanced,fs)
发生异常: TypeError
forward() missing 1 required positional argument: 'lengths'
File "/mnt/DataCenter/user1/mm/speechbrain/speechbrain/pretrained/interfaces.py", line 1932, in enhance_batch
mask = self.modules.enhance_model(noisy_features)

File "/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/MetricGAN/test_speechEnhancement.py", line 20, in
enhanced = enhancer.enhance_batch(noisy)

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/speechbrain/speechbrain/issues/1015, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEA2ZVRUUO6JX7FTZQ5UPG3UEFS6DANCNFSM5E4VSXRQ
.

Hi, as you can see from the example here: https://huggingface.co/speechbrain/metricgan-plus-voicebank you need to pass the relative length vector in input: enhanced = enhance_model.enhance_batch(noisy, lengths=torch.tensor([1.])
…
On Tue, 28 Sept 2021 at 03:10, Achaos @.***> wrote: When I tried to use the pretrained interfaces for speech enhancement, I met with the error "TypeError: forward() missing 1 required positional argument: 'lengths". The error still happened when I changed the enhancement model : "source = "speechbrain/mtl-mimic-voicebank" from genericpath import exists import os,time,re from sys import path import scipy.io as sio import numpy as np import torch import torchaudio from speechbrain.pretrained import SpectralMaskEnhancement from yaml import load from torch import unsqueeze,squeeze enhancer = SpectralMaskEnhancement.from_hparams( source = "speechbrain/metricgan-plus-voicebank", savedir = "/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/MetricGAN/tmp", ) noisy, fs = torchaudio.load("/mnt/DataCenter/user1/mm/PubDataset/Voicebank/clean_trainset_28spk_wav_16k/p287_076.wav") # Channel dimension is interpreted as batch dimension here enhanced = enhancer.enhance_batch(noisy) torchaudio.save('/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/spectral_mask/pretrainedModels/denoise.wav',enhanced,fs) 发生异常: TypeError forward() missing 1 required positional argument: 'lengths' File "/mnt/DataCenter/user1/mm/speechbrain/speechbrain/pretrained/interfaces.py", line 1932, in enhance_batch mask = self.modules.enhance_model(noisy_features) File "/mnt/DataCenter/user1/mm/speechbrain/recipes/Voicebank/enhance/MetricGAN/test_speechEnhancement.py", line 20, in  enhanced = enhancer.enhance_batch(noisy) — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#1015>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEA2ZVRUUO6JX7FTZQ5UPG3UEFS6DANCNFSM5E4VSXRQ .

OK thanks. It works now.


VO seems to be trying to read the "show text" image text in settings

It says "it" after reading the button

I think it is reading the image "Tt" and thinks that it says "It"


decrease current location interval

Is there any option to decrease the update interval of users current position?
the current interval has an unsmooth view and updates way to late.

I use the leaflet locate API (http://leafletjs.com/reference-1.0.0.html#map-locate), which in turn uses your browser's API. I don't think there is any way to get more frequent updates.

there is!
just add this:       enableHighAccuracy: true
boosted locating time, accuracy and updating time of current position!

Awesome!


when will release have helm3 support

As a developer:
I want to get fabrikate cli release that have helm 3 support
So that I can use fab to build helm 3 chart

Hi @smartpcr. We've added a note to the roadmap about Helm3.
@evanlouie can we carve out some time? I can provide help and resources


Broker does not accept url-encoded forward slash in instance_id

We expect all our service's instance_ids to have a forward slash among other non-standard characters e.g. a/81eb:59d6 The forward slash gets encoded to %2F but the broker still returns a 404 not found error when making a provision call. A normal string as the instance_id works perfectly fine.

This seems to be related to https://github.com/gorilla/mux/issues/132
One way to fix it would be to change the route matchers from:
router.HandleFunc("/v2/service_instances/{instance_id}", apiHandler.Provision).Methods("PUT")

to
router.HandleFunc("/v2/service_instances/{instance_id:.*}", apiHandler.Provision).Methods("PUT")

However looking toward the bottom of https://github.com/gorilla/mux/issues/132
it looks like https://github.com/gorilla/mux/pull/184 and https://github.com/gorilla/mux/pull/190 should have fixed it. There's a bit more investigation to be done here as there might be a better fix.
I don't think the requirement to have URL encoded characters in the instance_id is very common, and I've only come across a UUID/GUID being used. I'd be inclined to avoid URL encoded characters if you can as you'll be relying on a less tested code path. But sometimes these things are unavoidable.
@weimel is this something that you'd be interested in investigating further and submitting a PR?

Using router.UseEncodedPath() in this file https://github.com/pivotal-cf/brokerapi/blob/main/api.go#L40 would solve the problem. Adding it outside of the method did not work properly so right now we have resorted to our own implementations of these methods. Perhaps it would be useful to add an option to the New() and NewWithCustomAuth() to accept url encoding

Hi @weimel. I've created PR #178 as an idea of how to this option. Rather than adding new constructors it introduces the functional options pattern which allows for more flexibility. I'm waiting for feedback from the contributor team, and they might decide that this is a bad approach. But I'd also be interested to hear your feedback, and whether it solves your problem?

Yes, this implementation solves our issue. Thanks!

We published the fix for this in release 8.2.0


Fix click incompability

trackerctl setup user fails with TypeError: unhashable type: 'UserRole'. To resolve the click issues, make everything a string in
the click option and convert it to a Userrole when setting the role in
the model.

Merged via 00397a07708bc2e71267baba7bf06629e8022ae1


Resolves #46. Aggregation options.

Addresses #46 and #38.

@rhyolight - do you want to review? This is the aggregation feature.

Yes, standby...

Something is wrong, possibly on my end, I'll get back to you when I have time to work on it.

@jefffohl Works great!


proposal: x/mod: new repo for module mechanics

For the initial development of module support, we've kept everything in internal directories to make it easier to make changes as our understanding of what the pieces should look like becomes clearer. But now I think the basic pieces have become pretty clear, and we should think about exporting some packages to help other people who want to write tools working directly with module mechanics.
Note that I said "module mechanics". This is about supporting direct manipulation of modules themselves. It is not about supporting general development tools that need to do things like load packages in module mode. That use case, where modules are incidental rather than the focus, should remain in x/tools, specifically x/tools/go/packages. And the specific case of loading packages should still be done by invoking the go command, which will remain the single point of truth for those algorithms.
I propose to create a new repo golang.org/x/mod that will initially contain:

[x] golang.org/x/mod/module

defines type module.Version (struct {Path, Version string}) and !-encoding of paths and versions (from cmd/go/internal/module)

[x] golang.org/x/mod/modfile

go.mod file reader, editor (from cmd/go/internal/modfile)

[x] golang.org/x/mod/semver

semantic version parser (from cmd/go/internal/semver)

[x] golang.org/x/mod/sumdb

go checksum database client and server protocol (from golang.org/x/exp/sumdb/internal/sumweb)

[x] golang.org/x/mod/sumdb/storage

go checksum database storage layer (from golang.org/x/exp/sumdb/internal/tkv, database)

[x] golang.org/x/mod/sumdb/tlog

transparent log (from golang.org/x/exp/sumdb/internal/tlog)

[x] golang.org/x/mod/sumdb/note

signed note formats (from [golang.org/x/exp/sumdb/internal/note] (https://godoc.org/golang.org/x/exp/sumdb/internal/note))

[x] golang.org/x/mod/sumdb/dirhash

definition of h1: directory tree hash used in go.sum file (from cmd/go/internal/dirhash)

[ ] golang.org/x/mod/sumdb/googlecloud...

sub-module with basic google cloud server bindings (from golang.org/x/exp/sumdb/internal/googlecloud...)

[ ] golang.org/x/mod/proxy

go module proxy client and server protocol (like x/mod/sumdb; not written yet)

[ ] golang.org/x/mod/index

go module index client and server protocol (like x/mod/sumdb; not written yet)

[x] golang.org/x/mod/gosumcheck

command: go.sum checker (from golang.org/x/exp/sumdb/gosumcheck)

[ ] golang.org/x/mod/gomodproxy

command: trivial go module proxy for reference and trivial uses (not published yet; maybe also “go mod proxy”)

There's an open issue that this proposal addresses (about exposing some of this stuff) but once again I cannot find it.
/cc @bcmills @jayconrod @ianthehat @myitcv @rogpeppe

There's an open issue that this proposal addresses (about exposing some of this stuff) but once again I cannot find it.

That's #28101.

I propose to create a new repo golang.org/x/mod

Does this proposal include a plan for how the new module, modfile, semver, etc., packages will be kept in sync with the ones in cmd/go/internal/...?

I would assume that they'll be vendored in using go mod vendor.
That does imply that we'll have to have a clean (and perhaps smaller) API boundary between golang.org/x/mod and cmd/go/internal, but that's arguably a good thing anyway.

@dmitshur, yes they would be vendored into cmd/vendor using "go mod vendor".
All the ones I've chosen should already have clean API boundaries, and if not, we'd work on that.

I need quite a few of these in order to support mod files in editors. I have an experiment I have been working on that has them copied to an internal directory of x/tools, but it would be much nicer if I could go straight to using this repository instead.

Consider pseudo-version related logic as well
e.g. https://go.googlesource.com/go/+/refs/heads/master/src/cmd/go/internal/modfetch/pseudo.go

The list of packages above looks good. I expect this will be useful for developing gorelease and a lot of other tools.
I notice that none of internal/modload, internal/modfetch, internal/modfetch/coderepo, internal/mvs are in the list. I think that's the right decision for now -- these are all pretty tightly coupled with cmd/go. It might be worth moving these to x/mod after some refactoring though. I think the proxy and discovery projects have run into use cases where query and download functionality would be useful, and the Go command doesn't do quite what they need.

Sentiment here seems overwhelmingly in favor. Accepting proposal.

Obviously x/mod itself is "unreleased" but it will have effects in the main repo, so milestoned to Go 1.13.

@andybons, I created this repo. Can you take care of adding it to gopherbot, builders, etc.? Thanks.

Everything is set up for x/mod (mirroring, gerritbot, golang.org/x/mod, etc.)

I'm looking for a published library with the types / structures listed in the output of go mod help edit - namely Module, GoMod, Require, and Replace, ideally with the String() methods attached?  Would they be in the new library (x/mod)?

@dmitris Yes, that will be the golang.org/x/mod/modfile package. It hasn’t been added to x/mod just yet.

Do we know when that might happen? This would be very useful for some CI tooling.

Oops! I missed that this was added to the Go1.13 milestone back in May!

This is done.


allow downgrade

SLE_BCI repo is usually behind when containers are tested, so the "no-downgrade" trips. allow downgrades for now until situation is improved that the BCI repo is refreshed at the same time or before the containers are.

Are we then really testing anything useful at all?

Are we then really testing anything useful at all?

yes, we're testing that the containers do not contain anything that would be "conflicting" with what is in SLE_BCI. It might bring a lot but maybe someting

Let's please add a comment stating that this is needed only due to unresolved issues with the BCI repo sync issue.

Post-Merge approval. Thanks!


Use Julia as shell in workflow file

The "Add the General registry via Git" step won't run properly otherwise

bors merge

Thank you @pazner!


Added support for returning Unions and u0

I'm making a JS parser for Counter-Strike 2 demo files, and there are a lot of different protobufs and structs that might be returned, so for ease of DX I added support of Unions for defaultWrite.

Can you explain what exactly are you trying to parse? I think we could add support for .Union but it should only work for types with tag_type != null and it should work both ways.
Regarding u0 that sounds weird and I am not sure it should be provided by default.
Also, I think you have missed this section in the README
https://github.com/cztomsik/napigen?tab=readme-ov-file#hooks
You can simply define your own type overrides, both for reading and writing, and they can be different so it should be enough for your use-case.
For example here, I am only defining napigenWrite because I want to serialize something differently, but I could do the same for reading.
https://github.com/cztomsik/ggml-js/blob/main/src/main.zig#L42

Well, regarding hooks, you are completely right, I could have add it there, but seems like a quality-of-life thing, when dealing with custom data coming from files that with a small tweak more people could use it
In my case, when decoding a protobuf from a singular data-frame, it might result in a lot of different structs, or array of structs, and for me the best way to handle them is to get them into a union, and then just receive a value on the JS side.
I'm gonna mark here that I'm doing my project as a starting point in zig, as I never used any low level language, so that might not make sense, but thought that someone might use this Union support.
In u0 case, well, I dont have strong feeling about supporting this, might as well remove that, as this will be much more trivial to add than unions

Ok, can you change the PR to point into the dev branch? I will do few changes tomorrow and merge it.

Removed u8, comment and changed do dev branch

Hm, I just noticed you are not using the union tag anywhere in the result. This is a problem, suppose you have struct like this:
// Just a simple wrapper, indicating result from db.query() or something like that
// Notice that you have same payload type and the meaning comes from the tag enum
const DbResult = union(enum) {
  created: u32, // id of the created row
  updated: u32, // num of rows changed
  deleted: u32, // num of rows deleted
  error: SomeErrorType,
}

and now if you try to pass it to the JS-side (so your new defaultWrite() gets called), you will only get the payload at the JS side. You will loose the "kind" of the result. So you will have no way to tell if the payload is id or number of rows updated/deleted.
I think this is a reason why I did not include the Union impl in the first place, I wanted to have some thinking about it first. What we do, must be reversible, so what I'd suggest is probably encoding the value with "prefix" field for the tag:

Zig
JS

DbResult{ .created = 1 }
{ created: 1 }

DbResult{ .updated = 1 }
{ updated: 1 }

DbResult{ .deleted = 1 }
{ deleted: 1 }

...
...

Sounds good, I'll try to implement it

We should also support parsing, it will be trickier, so I can do it myself, but if you feel into it here's what's needed:

call try check(napi_get_property_names()) to get array of object's property names (this can fail for invalid data but that try check() should be enough I think
call self.getElement(prop_names, 0)
call self.readString() on that
do inline for over all variants
if (std.mem.eql(u8, f.name, prop_name))
return @unionInit(f.name, self.readStruct(f.type))`

Ill try during the weekend


DownloadBuildArtifactsV0: allowPartiallySucceededBuilds for multistage pipelines

I have an azure-pipelines.yml with
Pipeline 1: Build, Stg and Prod. Stg and Prod are set with manual check. This is working fine.
The build stage generates a nupkg which is published as artifact.
I have a azure-pipelines-nuget.yml with
Pipeline 2: DownloadBuildArtifact, Publish to Nuget.
This will download the artifact from P1, and then push to nuget.
This was working fine before P1 was converted to multistage.
The reason is because even the build is successful, the multistage is kept in status "In Progress" waiting for the manual check to be approved.
Therefore when DownloadBuildArtifactsV0 is ran, it retrieves that the latest successful build is #3039 when the latest where the build is successful is #3133 (although this build has its Stg and Prod stages still pending).
I would consider this as a bug for this task for multistage pipelines.
Notes:
Some more detail, this is two pipelines for the same repo, because nuget push should only be done when the developer knows the public interface of the components have changed. If only internal changes were applied, the nuget does not need to be published.

@katlimruiz this seems like enhancement but not as a bug. With multi stage pipeline do you want to consider moving pipeline 2 steps in pipeline 1 itself and kill pipeline 2?
Secondly why are you publishing as artifact first and then to nuget package? You can directly publish to nuget from pipeline 1 itself.

I had to do it because I need to decide whether that version is worth pushing to nuget feed. If the changes made are only internal workings, then no. If they change external interface, then yes.

However, I have found a solution that works out well in the end.
I decided to add a new stage called PushNuget, which was associated to an environment called NugetFeed that has a manual check, and then I configured the dependencies as this:
Build > Stg > Prod
         > NugetFeed

So in this setting, I am able to decide whether the PushNuget is executed or not, and not stop Stg and Prod stages.
I will close this issue.
Thanks


[Schema] Make GenericAvroRecord public

Motivation
If I construct an Avro record in my application and want to send it to Pulsar as a typed message, currently I can only rebuild it with Schema.generic and newRecordBuilder. To make the situation worse, when I want to construct an Avro record with record type in map's value, it's not possible through the SchemaBuilder way.
Pulsar's GenericAvroRecord is just a thin wrapper over Avro's GenericRecord, it will be much easier to use to just make GenericAvroRecord with its method/constructor public.
Modifications
Make GenericAvroRecord with its method/constructor public
Does this pull request potentially affect one of the following parts:

The public API: yes

run java8 tests

run java8 tests


feat(module-analyzer): Enable registering ViewEngineHooks by convention

Includes the ViewEngineHooksResource class. Replaces https://github.com/aurelia/templating/pull/371.

@davismj I'm really sorry....but can close this and submit a new PR? ;) We just did a major re-work in the build process and there are conflicts. If you can just drop the same code in and then fix the file list in paths, that should do it.


Remove deleted ids from cache file

when a cluster or user is deleted their respective IDs need to be removed from the id cache file

Still unable to figure out why the hell the ids aren't being deleted from the cache file

closing due to now self hosting ids


Release pre-gyp enhancement

Opening this issue for continuation of the discussion started at https://github.com/strongloop/fsevents/pull/59#issuecomment-137079452
It's time for a release. We need to choose whether to bump minor to 0.4.0 or to go to 1.0.0
/cc @bajtos @bnoordhuis

No strong opinion.  @bajtos?

I am strongly for 1.0.0.
Quoting from http://semver.org/:

How do I know when to release 1.0.0?

If your software is being used in production, it should probably already be 1.0.0. If you have a stable API on which users have come to depend, you should be 1.0.0. If you're worrying a lot about backwards compatibility, you should probably already be 1.0.0.

I believe we do have a stable API on which users have come to depend.

Alright, two neutrals and a strong :+1: for 1.0.0, so 1.0.0 it is.
Any other housekeeping (such as https://github.com/strongloop/fsevents/pull/59#issuecomment-138771133), or should we just go ahead and cut the release? (the latter, imo)

IMO, we should go ahead and cut the release as long as the other housekeeping preserves backwards compatibility of our API.

There's nothing in discussion currently that would lead to an API change (except maybe the @bnoordhuis rewrite potentially removing some utility methods).
I'm :+1: for going ahead. Downstream packages will have to make a deliberate version bump anyway before it reaches users. I have some long overdue debugging to do on chokidar before I'll be able to bump the version and cut a new release over there, but it's about time I got on top of that.

Ok sorry I take it back. We should quickly land #89 and #90 first.

Ok @bajtos, time to actually :shipit: now
I'm not an npm owner here so one of you will need to do it (or add me)

@es128 what's your npmjs handle?

Found you: https://www.npmjs.com/~es128

@es128 I have added you as an owner on npmjs, please make the release yourself :)

Thanks!

Looks like the tag based pre-gyp build worked like a charm (which was the only thing I still had some anxiety about). Thanks again very much for your efforts on this @indieisaconcept & @rmg.

Awesome! Glad it finally landed, thanks. Just installed via npm and worked great!


Update asr-mem-create-profile.png

Made changes to the platform
Fixes https://github.com/MicrosoftDocs/microsoft-365-docs/issues/11339

@JohanFreelancer9 Please copy review


Windows Terminal as default Console Host + Resume Issues

Windows Terminal version
1.19.3172.0 (Windows Store Preview)
Windows build number
10.0.19045.3570
Other Software
C:\Users\forbiddenera>ssh -V
OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2
C:\Users\forbiddenera>wsl -v
WSL version: <IP_ADDRESS> (pretty sure I originally installed w/Add/Remove Features but it now shows up as installed on Windows Store)
Kernel version: <IP_ADDRESS>-1
WSLg version: 1.0.59
MSRDC version: 1.2.4677
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.19045.3570
Steps to reproduce
I've experienced more than a few issues that seem to be related to using Windows Terminal as the default console host and especially relate to the resumption features.
Here, I'll detail the two main issues I seem to experience the most often:

Opening a command prompt often (but I think not always) opens a separate process and will resume a previous session, even if that session has already been resumed (and is even still open). This issue also happens in other cases, such as when any program opens/spawns a console window itself for whatever reason.
1.1 - Have a Windows Terminal session running; for me to reproduce just now, I had one window open with multiple (SSH, WSL2) tabs. This session and it's tabs, in my case, was restored from a previous session when first opening Windows Terminal. You will need to have a previous session to resume from to reproduce.
1.2 - Try to open a command prompt in some typical ways such as Start->Run->cmd.exe or Win+X->Command Prompt (Note: I am of course aware that Command Prompt (Admin) opens a separate Admin-owned process)
1.3 - The command prompt opens as expected but also creates a separate Windows Terminal process (which on it's own wouldn't be terrible if not ideal) and also opens a second window containing all the tabs from the resumed session.

This one may seem a little application specific but could affect many applications beyond the case where I ran into it. In my case, the application was the Furmark 2 beta but I can imagine this being a huge issue for anyone doing any sort of crypto mining as those are basically always console apps and are probably more likely to cause crashes/restarts than most apps AND are more likely to be left unattended.
2.1 - Run Furmark 2 (or probably any app that launches a console) and then have your system crash (in my case, I'm using a spare lower wattage PSU while my main one is RMA'd and Furmark triggered OCP while running causing the system to shutdown) or forcefully shutdown/reboot.
2.2 - System reboots, login and Windows Terminal restores it's session.
2.3 - Furmark 2 now starts running again, potentially causing a crash and endless boot loop unless the user intervenes.

I have Windows Terminal set to launch on startup and resume it's session and this is a lovely feature as my work entails having like 10+ terminals open all the time and having to re-open, re-connect and re-arrange all the windows and tabs anytime I reboot (or am forced to reboot) is a huge pain and having this feature (plus browsers and other apps nowadays) has actually made me a lot less reboot-averse; thus disabling it isn't really ideal.
The second issue I have also reported to the Furmark team so they can potentially work around it but that doesn't account for all other console software that could potentially crash causing a reboot.
The first issue, I've had instances where I've literally ended up with like 4-5 Windows Terminal instances all resuming with their 10+ tabs each, in fact it's triggered security warnings when it does it and suddenly I've got like 10 SSH terminals open to one host as it's determined well outside what ML deems normal usage.
Expected Behavior

A session shouldn't resume in when a second Windows Terminal process launches after it's been resumed already.
A session shouldn't resume at least a tab/app which caused a crash/reboot of Windows Terminal or the system in general. I'm not sure how well this could be implemented but I don't think many would object to Windows Terminal prompting and asking/warning if Windows Terminal had not been closed properly (due to Windows Terminal crashing, Windows crashing, power outage, random reboot, whatever) or even not resuming the session after a crash and/or perhaps not launching on login/system startup after a system crash.

Actual Behavior
I hit Win+X->Command Prompt and got a new Window with the command prompt and then also a second window which was duplicated the session I already had open in Windows Terminal:

I've also had occurrences since my post where when an app launches a console program and it does the resume where I get two new extra windows with the same tabs. And I just had an instance where I closed the console program (after closing the extra windows when said program first opened) and closing it caused even more windows to appear!

I need to go dedupe the set of

#16487
#16557
#16561

This is getting a tiny bit nuts...I just rebooted with two terminals Windows opened before reboot, one with a single tab, the other with like 4 tabs...
After I reboot, I get this:

Thats 31 shell tabs/instances! Should only be 5!

Okay after caching these threads all in, I'm gonna go dupe this to /dup #16487. Seems like in all these cases, a session restore during a Windows resume seems to leave the terminal in a state where it doesn't realize it needs to restore. As to why, I'm not sure yet. I'm guessing that if you do the "Identify Window" command, from the command palette, in each window, at least two have the same ID.
To help flesh-out the variables at play here: do you have the Terminal configured as the default terminal emulator in the Windows settings?

Okay after caching these threads all in, I'm gonna go dupe this to /dup #16487. Seems like in all these cases, a session restore during a Windows resume seems to leave the terminal in a state where it doesn't realize it needs to restore. As to why, I'm not sure yet. I'm guessing that if you do the "Identify Window" command, from the command palette, in each window, at least two have the same ID.
To help flesh-out the variables at play here: do you have the Terminal configured as the default terminal emulator in the Windows settings?

Yes, I do, thought I mentioned that above. And it doesn't only happen when resuming Windows; it happens sometimes when something causes a terminal to open, such as a program opening a terminal app.
Beyond answering your question though, I guess I'll track the issue in the other thread :)


Allow fetching image with relative url

Current, if document like:
<img src="/path/to/image.png" />

The image cannot load, so the error happens.
We should allow baseUrl for this scene.

I am currently running into the same issue. Would be great if this would be merged!

1.2 has been released!

Thank you!


Change POST | Perform DNF package cleanup task in post.yml to accurately reflect whether leaf packages have been removed or not.

Feature Request or Enhancement

Feature []
Enhancement [x]

Summary of Request
Currently this task always returns an "OK" output, regardless of any changes. This means that when leaf packages are removed the output is exactly the same as when no packages are removed, painting an incorrect image of events.
This is because of a 'changed_when' conditional added at the end of the task, see below for my proposed fix.
Suggested Code
Current content post.yml
- name: POST | Perform DNF package cleanup
  ansible.builtin.dnf:
      autoremove: true
  changed_when: false

Proposed post.yml
- name: POST | Perform DNF package cleanup
  ansible.builtin.dnf:
      autoremove: true

Simply removing this line will make this task accurately report whether or not leaf packages have been removed by showing "Changed" when they are and "OK" when no leaf packages have been removed.

hi @tux-repos
Thank you for highlighting this issue. This has now been removed and should be in devel in the next couple of days
Many thanks again
uk-bolly

hi @tux-repos
Thank you again for this feedback. This has now been merged into the main branch for a release. I will therefore close this issue. Please reopen if you feel this is still an issue.
Kindest regards
uk-bolly


Tls fixes

These patches fix issues found by a twister run on arm and riscv when THREAD_LOCAL_STORAGE is enabled by default. The bulk of them ensure that the cpu-specific TLS base pointer value and z_tls_current value are set correctly early in thread execution.

Thanks for looking into this.

These patches fix issues found by a twister run on arm and riscv when THREAD_LOCAL_STORAGE is enabled by default.

@keith-packard I assume you are referring to https://github.com/zephyrproject-rtos/zephyr/pull/44096#issuecomment-1097424451.
We currently have tests/kernel/threads/tls and tests/kernel/threads/tls_cpp tests that explicitly test the thread local storage feature -- it is very concerning that this rather serious bug was not caught in them ...

@d3zd3z Can you have a look? Thanks.

@andyross could you please take a look?

Note to myself and other Zephyr maintainers: we should update the TLS test so that the problem that this PR fixes is reproducible using it.

@keith-packard I assume you are referring to #44096 (comment).

Yes, that's the place where these patches come from.

We currently have tests/kernel/threads/tls and tests/kernel/threads/tls_cpp tests that explicitly test the thread local storage feature -- it is very concerning that this rather serious bug was not caught in them ...

On review today, I've discovered that I was completely mistaken about how user-mode threads work in Zephyr. I had (incorrectly) assumed that they would use a separate stack and leave the original stack for supervisor mode. In fact, switching to user mode retains the existing stack. What it does (and what confused me) is to re-initialize the TLS area back to the original values, which resets z_tls_current to 0. However, that value gets set back to the correct one in z_thread_entry.
So, most of the core zephyr patches in this PR appear to be unnecessary -- the TLS base address remains the same through the transition from supervisor to user mode, the TLS area gets reset and then z_tls_current gets re-written with the correct value.
What confused me was a couple of lingering issues which I do not have solutions for, and for which there are kludges in the PR.

Why is z_tls_current getting smashed by a stack overflow in another thread? (tests/kernel/fatal)
Why do asserts and spinlock validation cause random failures on RISC-V if z_tls_current gets written in z_thread_entry? (tests/log_core_additional).

Figuring out the root cause for those two issues seems pretty important here; the first seems like it might just require adjusting the stack limit values to trap before the stack actually overflows. Figuring out the second seems like a real challenge.
In any case, I'll push an updated version of this PR which includes the few core zephyr changes necessary along with half a dozen patches to tests and samples which fix issues with them.

Ok, I've trimmed the set of patches down considerably now that I understand how stacks work in the transition from supervisor to user modes. The fixes now consist of the following:

Use TPIDRURO on cortex-a
Get TP register set when starting threads on RISC-V
Add TLS bits to generated linker scripts in a couple of different ways
Fix a few tests in trivial ways so they run with THREAD_LOCAL_STORAGE enabled
Pad the TLS area in the stack overflow test so that z_tls_current doesn't get smashed. This needs a real fix.
Disable asserts and spinlock validation a logging test to keep RISC-V from crashing in mysterious ways. This also needs a real fix.

The last two issues need some additional review to understand what's going on. For the first, It may be that the stack bounds computation is off by a bit, and now that the TLS area sits above the stack, and z_tls_current is often the only member of that block, a slightly mis-computed stack bounds means we end up smashing this variable. The second is quite the mystery, but it may just be an issue with qemu emulation of risc-v in some fashion. I can't figure it out.

If 5 can be reproduced on QEMU, maybe add a watchpoint on z_tls_current to see where it is being overwritten?

I did that -- it gets overwritten by another thread overflowing the stack, which is how I discovered I could 'pad' the TLS area and prevent the problem. How precise is the arm stack overflow detection?

@andyross commented

Wait, really?   It's absolutely true that the normal behavior of Zephyr
without MPU/MMU on a few architectures (actually just xtensa now, I
think?) is to use the interrupted stack to save its own context.
But... you can't touch the faulting context on an MPU fault ever if
you want that MPU fault to be used to safely report errors.
I know x86 gets this right and switches stacks in hardware when MMU
handling is enabled.  I'm all but certain (or at least really
desperately hoping) ARM and RISC-V do too.

The MPU on RISC-V is sort of "disabled" when an exception is raised and
needs to be manually re-armed by the exception code if needed. So the
idea is to make the stack overflow trap area raise an exception if touched
yet large enough to hold the saved context and execute the fault reporting
code off of that area (without re-arming the MPU in that case obviously).

So the
idea is to make the stack overflow trap area raise an exception if touched
yet large enough to hold the saved context and execute the fault reporting
code off of that area (without re-arming the MPU in that case obviously).

And that's exactly what my patch for aarch32 does in this series now -- makes the stack guard larger than 32 bytes so that a MPU fault will be assured of having enough space to write the exception information. The ARM architecture doc is pretty clear that this kind of fault will execute on the current stack, not the interrupt stack, so we don't have much choice.

Why is z_tls_current getting smashed by a stack overflow in another thread? (tests/kernel/fatal)

Why do asserts and spinlock validation cause random failures on RISC-V if z_tls_current gets written in z_thread_entry? (tests/log_core_additional).

Just so we tie this up -- these two issues are fixed in the current series.

Refresh +1

Does this mean you'd like me to rebase and push to get it tested against current 'main'?

Does this mean you'd like me to rebase and push to get it tested against current 'main'?

No, it just means I'm repeating an earlier approval because our settings now scrub them all after a PR is repushed.  (Actually looking at this, I'm not sure this one ever had a +1 from me, so I was remembering an approval I never technically gave, heh)

Thanks much for all of your review; that's the bulk of the zephyr changes needed to support picolibc. Just one more code patch and some build system changes.


RuntimeError: affine matrix has wrong number of rows`

when run 'python3 train_ext.py', meet some issues, is my environment not correct?
can you help to provide your running environment? by running the 'pip3 list'.
`
Epoch 1/100
Traceback (most recent call last):
File "train_ext.py", line 62, in
train_1s()
File "train_ext.py", line 59, in train_1s
model.train_generator(tr_ms1, val_ms1, 1e-3, 100, 'all')
File "/2th-DSB2018/script_final/model_rcnn_weight.py", line 495, in train_generator
use_multiprocessing=False,
File "/usr/local/lib/python3.5/dist-packages/keras/legacy/interfaces.py", line 91, in wrapper
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/keras/engine/training.py", line 2145, in fit_generator
generator_output = next(output_generator)
File "/usr/local/lib/python3.5/dist-packages/keras/utils/data_utils.py", line 770, in get
six.reraise(value.class, value, value.traceback)
File "/usr/lib/python3/dist-packages/six.py", line 686, in reraise
raise value
File "/usr/local/lib/python3.5/dist-packages/keras/utils/data_utils.py", line 635, in _data_generator_task
generator_output = next(self._generator)
File "/medical_data/yunhai/2th-DSB2018/script_final/model_ms1.py", line 42, in generator_1s_v11
image, mask = next(gen)
File "train_ext.py", line 34, in train_generator
image, mask = next(gen)
File "/2th-DSB2018/script_final/generator.py", line 64, in data_generator_multi
zoom_range = config.ZOOM_RANGE)
File "/2th-DSB2018/script_final/preprocess.py", line 198, in affine_transform_batch
xt = scipy.ndimage.affine_transform(x, matrix, order=1, cval=-512)
File "/usr/local/lib/python3.5/dist-packages/scipy/ndimage/interpolation.py", line 449, in affine_transform
raise RuntimeError('affine matrix has wrong number of rows')
RuntimeError: affine matrix has wrong number of rows
`

<EMAIL_ADDRESS>希望大家共同进步


Dependency Check parser.py update

As outlined in https://owasp.slack.com/archives/C2P5BA8MN/p1653900502360699 uploading selected Dependency Check xml reports caused the program to fail. The error message was: UnboundLocalError: local variable 'vulnerability' referenced before assignment. The associated code block has been moved. Additional if else have been added to make the code more robust.

Hi @security101, thanks for this PR. You need to rebase your branch to the current dev revision to fix the problem with the helm linting.

@security101 Reminder to rebase the PR on the dev branch instead

@security101 your PR is good, could you add a unit test to it?

Dear Damien,:-) I would like to but never did so before means I have not the skill (yet) I believe it would take to long till I can provide it. If I can make an other contribution let me know and I will be please to do my best.Cheers,AndreasAm 08.10.2022 um 19:02 schrieb Damien Carol @.***>:
@security101 your PR is good, could you add a unit test to it?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

I also got this error. I'm not sure why, but since some days my dependency check result causes this error.
Please merge this PR.

Hi @security101
Please see #7124 for an example of what we are looking for with unit tests.

@security101 can you tell me what content in the dependency check report causes this error?
@Maffooch is there a guide how to run the tests? I have no experience with Django. I tried to run the tests but it with no luck. When I am able to run the test, then I can provide a test for this issue.

@AndreVirtimo Here's the docs for running tests during development: https://github.com/DefectDojo/django-DefectDojo/blob/master/readme-docs/DOCKER.md#run-the-tests-with-docker-compose

@mtesauro thank you for the link.
I'm still not able to run a unit test. I have tried this one:
python manage.py test unittests.tools.test_dependency_check_parser.TestDependencyCheckParser.test_parse_file_with_multiple_vulnerabilities_has_multiple_findings --keepdb
First I ran into this error:
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.
I have done a workaround with export DD_SECRET_KEY=foo
Now I got this error
django.db.utils.OperationalError: (2005, "Unknown MySQL server host 'mysql' (8)")
This doesn't feel like a unit test. I really want to help but I cannot find any documentation how to setup my dev environment.

@AndreVirtimo if you have a report that breaks without this patch, please commit it to this PR. I can write the test from there

@Maffooch thank you. Here is the report.
dependency-check-report.xml.zip

Thank you for this fix. I can confirm that our import problem is now solved.


Several crash reports titled NULL_POINTER_READ!TerminalApp::_ReloadSettings

migrated from 22323889

Dustin said I should close this. If it gets re-opened on us, we'll re-open this.


Idea for Haste.App

Haste.App is currently sort of fragile, in the sense that the server and client can get out of sync if the server does other IO. This makes it more difficult for Haste.App to be compatible with other frameworks.
Therefore, I have an idea. I may try to implement this at some point if we like the idea, but I just wanted to put it out there.
Currently, Remotable works sort of like an applicative. I think it is better to think of it as a category. A type Remotable a b is provided by a module, where both a and b are serializable, which the client and server both import (alternatively, the client and/or server can define the type, which is imported by the other. The point is that the client and server need to be using the same type, since otherwise bad things will happen.) The server serves Remotable a b by providing a function of type a -> IO b, and the client uses it by being of type Remotable a b -> Client (). The client also has function of type Remotable a b -> a -> Client b. Note that the server does not need to be top level, it just needs to make sure it isn't running multiple times at once. This makes integration into different web frameworks a lot easier. It also allows different clients to be used, whereas right now you can have only one client.
To make it easier, let's call Remotable a b, a ~> b instead. What if we want multiple arguments? One way to do this is (a,b) ~> c. Another way is a ~> (b ~> c). This allows currying. Namely, a client can send one argument, and then get a reusable function back, so it only has to send a once. b ~> c would have an id number, this is how its serializable. This means you can also have data types that have ~>s in them, which allows you to pass around remotables as easily as you pass around functions. If the server just wants to provide something without arguments, it can use () ~> a, which can be given a type synonym if we like.
The above by itself will make Haste.App a lot cooler. Here are some more radical, optional ideas.
It's possible to make it an actual category. Composing a ~> b and b ~> c means that you send a, and server does both actions and sends back c. b is never serialized. id is a little tricky, since its polymorphic, but that's okay. id is a no-op basically, it doesn't actually do anything. That means that you can have (x -> y) ~> (x -> y) even though (x -> y) can't be serialized. When id is composed with another function, that means that id was in fact used with a serializable type. The only way to make a ~> b is if a=b and it is id, or a and b are both serializable.
~> is also monoidal which respect to () and (,), as well as with respect to Void and Either. (It not cartesian because the diagrams don't commute do to IO. In particular, there are many things of type Int ~> (), since it executes an action on the client end. Similar issues crop up for the other cartesian category laws.) This requires more polymorphic no-op functions, for which we can use the same trick as id.

It seems that ~> is cocartesian though. This is useful because in a cocartesian category, you can compose a ~> Either b c, b ~> z, and c ~> z, to get a ~> z, without having to serialize b or c.


chore: icons upload for bubble UI

Please always provide the JIRA issue(s) your PR is for, as well as test URLs where your change can be observed (before and after):
Chore: upload icons
Test URLs:
Before: https://main--express-website--adobe.hlx.page/express/?lighthouse=on
After: https://icon-upload-04122023--express-website--webistry-development.hlx.page/express/?lighthouse=on

Icon naming convention might might be worth of a discussion.

We can merge this then. Just Icons the authors need for the bubble UI floating button authoring.


Integration hardening

This gets the most basic stuff working with "hindlebook". Author calls, public posts friend requests. The integration tests only sort of work because of how insane their api is. In many cases performing counter calls to ensure that we're not spoofing anything which makes testing really really hard.

:+1:


[#118019637] Bugfix for brief responses with zero nice-to-haves

Fixes this bug: https://www.pivotaltracker.com/story/show/118019637
Currently the CSV generation for downloading responses to briefs always tries to sort them in descending order of the number of nice-to-have requirements.
But if the brief has NO nice-to-haves the call to sort causes an error. (e.g., see excerpt from AWS logs below).
This adds a check that niceToHaveRequirements exists before attempting to sort.  If it doesn't then we just return them in the order they come back from the API.
{
    "name": "app",
    "levelname": "ERROR",
    "message": "Exception on /buyers/frameworks/digital-outcomes-and-specialists/requirements/user-research-participants/48/responses/download [GET]",
    "pathname": "/opt/python/run/venv/lib/python2.7/site-packages/flask/app.py",
    "lineno": 1423,
    "exc_info": "Traceback (most recent call last):\n  File \"/opt/python/run/venv/lib/python2.7/site-packages/flask/app.py\", line 1817, in wsgi_app\n    response = self.full_dispatch_request()\n  File \"/opt/python/run/venv/lib/python2.7/site-packages/flask/app.py\", line 1477, in full_dispatch_request\n    rv = self.handle_user_exception(e)\n  File \"/opt/python/run/venv/lib/python2.7/site-packages/flask/app.py\", line 1381, in handle_user_exception\n    reraise(exc_type, exc_value, tb)\n  File \"/opt/python/run/venv/lib/python2.7/site-packages/flask/app.py\", line 1475, in full_dispatch_request\n    rv = self.dispatch_request()\n  File \"/opt/python/run/venv/lib/python2.7/site-packages/flask/app.py\", line 1461, in dispatch_request\n    return self.view_functions[rule.endpoint](**req.view_args)\n  File \"/opt/python/current/app/app/buyers/views/buyers.py\", line 237, in download_brief_responses\n    sorted_brief_responses = get_sorted_responses_for_brief(brief_id, data_api_client)\n  File \"/opt/python/current/app/app/helpers/buyers_helpers.py\", line 83, in get_sorted_responses_for_brief\n    reverse=True\n  File \"/opt/python/current/app/app/helpers/buyers_helpers.py\", line 82, in <lambda>\n    key=lambda k: len([nice for nice in k['niceToHaveRequirements'] if nice is True]),\nKeyError: 'niceToHaveRequirements'",
    "requestId": "3b5cf019-59d5-42ba-8db4-1770abb5e083",
    "application": "buyer-frontend",
    "time": "2016-04-20T15:17:09",
    "logType": "application"
}

👍


jcr.RepositoryException at a node with special characters

I am using grabbit3.0.5 for cq5.6
while syching, At the node,
/content/dcomm-unitymedia-de/masterdata/products/3PLAY_COMFORT120/features/feature[2]
i am getting below error:
24.06.2016 16:00:40.895 ERROR [clientJobLauncherTaskExecutor-10] org.springframework.batch.core.step.AbstractStep Encountered an error executing step clientJcrNodes in job clientJob javax.jcr.RepositoryException: Invalid last path element for adding node feature[2] relative to node /content/abcd /masterdata/products/2PLAY_COMFORT120/features
at org.apache.jackrabbit.core.session.AddNodeOperation.perform(AddNodeOperation.java:72)
at org.apache.jackrabbit.core.session.AddNodeOperation.perform(AddNodeOperation.java:37)
at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216)
at org.apache.jackrabbit.core.ItemImpl.perform(ItemImpl.java:91)
at org.apache.jackrabbit.core.NodeImpl.addNodeWithUuid(NodeImpl.java:1814)
at org.apache.jackrabbit.core.NodeImpl.addNode(NodeImpl.java:1774)
at org.apache.jackrabbit.commons.JcrUtils.getOrCreateByPath(JcrUtils.java:1136)
at org.apache.jackrabbit.commons.JcrUtils.getOrCreateByPath(JcrUtils.java:1016)
at org.apache.jackrabbit.commons.JcrUtils.getOrCreateByPath(JcrUtils.java:909)
at com.twcable.grabbit.jcr.ProtoNodeDecorator.getOrCreateNode(ProtoNodeDecorator.groovy:85)
at com.twcable.grabbit.jcr.ProtoNodeDecorator.writeToJcr(ProtoNodeDecorator.groovy:65)
at com.twcable.grabbit.client.batch.steps.jcrnodes.JcrNodesWriter.writeToJcr(JcrNodesWriter.groovy:91)
at com.twcable.grabbit.client.batch.steps.jcrnodes.JcrNodesWriter.write(JcrNodesWriter.groovy:74)
at org.springframework.batch.core.step.item.SimpleChunkProcessor.writeItems(SimpleChunkProcessor.java:175)
at org.springframework.batch.core.step.item.SimpleChunkProcessor.doWrite(SimpleChunkProcessor.java:151)
at org.springframework.batch.core.step.item.SimpleChunkProcessor.write(SimpleChunkProcessor.java:274)
at org.springframework.batch.core.step.item.SimpleChunkProcessor.process(SimpleChunkProcessor.java:199)
at org.springframework.batch.core.step.item.ChunkOrientedTasklet.execute(ChunkOrientedTasklet.java:75)
at org.springframework.batch.core.step.tasklet.TaskletStep$ChunkTransactionCallback.doInTransaction(TaskletStep.java:395)
at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:130)
at org.springframework.batch.core.step.tasklet.TaskletStep$2.doInChunkContext(TaskletStep.java:267)
at org.springframework.batch.core.scope.context.StepContextRepeatCallback.doInIteration(StepContextRepeatCallback.java:77)
at org.springframework.batch.repeat.support.RepeatTemplate.getNextResult(RepeatTemplate.java:368)
at org.springframework.batch.repeat.support.RepeatTemplate.executeInternal(RepeatTemplate.java:215)
at org.springframework.batch.repeat.support.RepeatTemplate.iterate(RepeatTemplate.java:144)
at org.springframework.batch.core.step.tasklet.TaskletStep.doExecute(TaskletStep.java:253)
at org.springframework.batch.core.step.AbstractStep.execute(AbstractStep.java:195)
at org.springframework.batch.core.job.SimpleStepHandler.handleStep(SimpleStepHandler.java:141)
at org.springframework.batch.core.job.flow.JobFlowExecutor.executeStep(JobFlowExecutor.java:64)
at org.springframework.batch.core.job.flow.support.state.StepState.handle(StepState.java:60)
at org.springframework.batch.core.job.flow.support.SimpleFlow.resume(SimpleFlow.java:151)
at org.springframework.batch.core.job.flow.support.SimpleFlow.start(SimpleFlow.java:130)
at org.springframework.batch.core.job.flow.FlowJob.doExecute(FlowJob.java:135)
at org.springframework.batch.core.job.AbstractJob.execute(AbstractJob.java:301)
at org.springframework.batch.core.launch.support.SimpleJobLauncher$1.run(SimpleJobLauncher.java:134)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Is this because of the [] braces???
please let me know. and help me to resolve the issue

Nice catch. [ and ] are invalid JCR path characters.
I don't think we are escaping these characters properly on write.

ok I got it:)
is there any workaround?
Or
Do i have to exclude those paths??

Hey @akiranmutnuru , besides excluding those paths, I'm not sure there is a great workaround. We will need to get this fixed.
Thanks for finding it, and sorry you are having so much trouble

Hey @akiranmutnuru, how did this node get into the JCR? At first, I assumed 'feature[2]' was simply being displayed decoded; but it doesn't appear the CRX, or underlying NodeImpl pass-around the node in this decoded fashion.

i dont know how they got created. No Idea.
but i got to know that, this is NOT a valid node name

@akiranmutnuru would it be possible to get a content package with just that node? (Redacted if needed)?
JSR-284 doesn't allow these characters, but I still would like to make sure that there aren't "lost in translation" edge-cases that we aren't handling within Grabbit.

I am wondering if that node with a invalid node name got written on an older version of JCR / CQ (5.6 older version or 5.5 or something). I have seen similar cases in the past where older versions of CQ have not strictly adhered to the JCR specifications.

Closing in favor of #124


Auto complete for files in directory after tabbing exec command

I think the only easy way to do this is just to add files in the directory along with normal commands to the autocomplete.


Update default docsite theme

Description
Change default docsite theme to Next Dark. Requested by UX
Check List

[ ] New functionality includes testing.
[ ] New functionality has been documented.
[x] All tests pass

[x] yarn lint
[x] yarn test-unit

[ ] Update CHANGELOG.md
[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Maybe backport to 1.3 also?


Support rpc sig

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (2d4c42e) 45.36% compared to head (d543f12) 45.05%.
 Consider uploading reports for the commit c0def52 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #73      +/-   ##
==========================================
- Coverage   45.36%   45.05%   -0.32%
==========================================
  Files          45       45
  Lines        6538     6586      +48
==========================================
+ Hits         2966     2967       +1
- Misses       3132     3180      +48
+ Partials      440      439       -1

see 3 files with indirect coverage changes

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


Update Bower Version

Bower uses your git tags for versioning, and the only tag you have right now is v0.5.0. It would be nice to get the most current version in order to take advantage of recent bug fixes (Looking at Array.prototype.randomize())...

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/39336939-update-bower-version?utm_campaign=plugin&utm_content=tracker%2F297828&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F297828&utm_medium=issues&utm_source=github).

Hi,
thanks, I forgot to push the git tag. Shall be fixed now.

confirmed for me anyways, now seeing v0.6.0. 👍

Me too! Thanks!


HBASE-24853 The archiveLogFile should be called before decreasing tot…

…alLogSize in AbstractFSWAL.cleanOldLogs

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 29s
Docker mode activated.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
5m  9s
the patch passed

+1 :green_heart:
compile
1m 26s
the patch passed

+1 :green_heart:
javac
1m 26s
the patch passed

+1 :green_heart:
shadedjars
7m 49s
patch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 51s
hbase-server in the patch failed.

_ Other Tests _

+1 :green_heart:
unit
150m 18s
hbase-server in the patch passed.

185m 49s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2240/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2240

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux f274b6db6e1d 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / ea130249ae

Default Java
2020-01-14

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2240/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2240/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2240/1/testReport/

Max. process+thread count
3833 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2240/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.


Fix Test Failing Because of Space

The international formatting is adding a non-breaking space, which breaks a test. This will fix it by checking against the non-breaking space character code.
See https://stackoverflow.com/questions/54242039/intl-numberformat-space-character-does-not-match

This was the wrong way to fix this, the correct way is in #1781


server/runtimes: EVM tokens sorting param

Fixes: https://github.com/oasisprotocol/nexus/issues/815

I'm merging since we want to do a new release today. I can apply the potential changes requested in a future PR.


Doubt about public and build folders

Hi!
I'm facing a trouble in my app that I don't really know how to solve. It's about sending links to images from server side to client.
In my local app, the user can upload images and, obviously, want to see it later. So the app stores the image in /public/uploads and then send the client only the route without public (ie: uploads/react-image.png). It works fine.
But in my server, after building the app, the routes in public cant be accessed. Instead of that, only images in the build folder can be accessed. That's fine too, but I don't really know how to save images in my public folder that can be referenced in my build folder.
Example:

Create a folder upload inside public.
react-scripts build and now we have a build folder with uploads inside
Upload image to /public/uploads/react-image.png
Send the route without public to client: uploads/react-image.png

WHAT I DESIRE: image in public/uploads is copied dinamycally to build/uploads
WHAT I GET: image in public/uploads and nothing in build/uploads.
I'm not sure if I've explained myself.
Thank you for your time!

The public folder is a source artifact. It doesn't need to be deployed to your server and has no special meaning after you build the project. I think putting anything there at runtime is confusing (and doesn't help). Imagine you were building the project locally and only uploaded the build folder to the server. How would your desired case work? As you can see it doesn't really hold together.
I recommend you to use a second server for file uploading. It could upload to the same machine or to CDN, and return the URL to the application so it doesn't rely on a specific path. Locally you'd save to a local folder, and in production you'd save either to folder or to CDN. You can use environment variables (as described in User Guide) to choose the upload server host and port which would probably be different in development and production.
Hope this helps!

Is not a bit excessive to use a server only for file uploading? I mean, my app uses an internal API, so the server already exists. Is neccessary to have another server just for that? There isnt any other way?
I'm talking about a problem that many users that uses react may have passed: users avatar files and its return from the server....

I mean, my app uses an internal API, so the server already exists. Is neccessary to have another server just for that?

No, you can use that server just fine (this is exactly what I mean by a separate server). I just don't fully understand how this is related to the React part of the app.
CRA just gives you a build folder with static HTML/JS/CSS. If you have a separate server, set it up to upload stuff into uploads/ and make sure to serve that folder from your server (just like you serve build).

Of course It was the solution. Sorry by not telling anything here.
Thank you for your time.

Glad we could help!


Gzip encoding of tiles?

When requesting tiles with an Accept-Encoding: gzip header, I would expect Tegola to respond with gzipped tiles (and a Content-Encoding: gzip header) to reduce the amount of data transferred.
However, they don't appear to be gzipped:
$ curl -H "Accept-Encoding: gzip" -O http://localhost:8080/maps/borders/11/328/792.pbf
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  9785    0  9785    0     0  10526      0 --:--:-- --:--:-- --:--:-- 10521
$ file 792.pbf
792.pbf: data

Is the intent for Tegola to run behind a reverse proxy that handles gzipping?

@mojodna the pbf files are already zig zag encoded so I don't know how much of a win gzipping will add, but we can easily add support for handling the Accept-Encoding header appropriately. Have you tried gzipping a pbf tile from tegola by chance?

Well that's pretty significant. I will work on getting it implemented.

I wrote this up as a new issue, but found this issue already about it.
When MVTs were designed, gzipping was intended. This allows use of gzip's property that gzip(file 1 + file 2) = gzip(file 1) + gzip(file 2), and the ability to concatanate multiple layers with MVTs.
Mapbox's implementations of consumers and servers assumed that browsers would always request compressed data, server-side software would always process compressed data, and servers would always send compressed data. This assumption was so strong their servers sent compressed data to clients which explicitly said only identity compression was acceptable.
Tegola should

Compress data before saving it to the cache. The compression level should be adjustable.

Send the compressed data directly from cache to clients that send an Accept-Encoding accepting gzip, *, or no Accept-Encoding header. Content-Encoding: gzip should also be set.

For Accept-Encoding headers which have gzip;q=0 or *;q=0 without gzip appearing elsewhere or an Accept-Encoding header that is empty, either decompress on the fly to send an identity encoded response, with no Accept-Encoding; or return a 406 error. If on-demand decompression is allowed, there should be a way to disable this in configuration or an environment variable for those who don't want to support it.

I'm not sure what this means for setting the Vary header.

Looking at the tiles I'm generating, this would reduce the size from 36MB to 7.6MB of what I get with tegola cache seed --map bolder --min-zoom 0 --max-zoom 14 --bounds "-123.41,49.03,-122.47,49.83". It takes about 4m to generate the tiles, and under 1.2s to compress them with gzip -k -3 -S .3.gz -r. The on-disk savings are less significant because of minimum block sizes, but the data transferred to the


Codecov debug meet again

Now it just won't fail. Anyway, voices spoke to me in the night, and told me what's wrong, so I don't need it anymore.


package in rye workspace cannot depend on another workspace package for build-system requirements

Steps to Reproduce
pyproject.toml
[project]
name = "my-workspace"
version = "0.0.0"

[tool.rye]
virtual = true

[tool.rye.workspace]
members = [
    "src/my-setuptools-extension",
    "src/my-app",
]

src/my-setuptools-extension/pyproject.toml
[build-system]
requires = [
    "setuptools",
    "wheel",
]
build-backend = "setuptools.build_meta"

[project]
name = "my-setuptools-extension"
version = "0.0.0"

dependencies = [
    "setuptools",
]

[project.entry-points."distutils.commands"]
build_webassets = "my_setuptools_ext:BuildWebAssetsCommand"

src/my-app/pyproject.toml
[build-system]
requires = [
    "setuptools",
    "wheel",
    "my-setuptools-extension",
]
build-backend = "setuptools.build_meta"

[project]
name = "my-app"
version = "0.0.0"

src/my-app/setup.py
This step is optional and here for completeness.
import setuptools  # noqa: F401 isort:skip must import before distutils
from distutils.command.build import build as _BuildCommand
from setuptools import setup
from setuptools.command.develop import develop as _DevelopCommand
from setuptools.command.sdist import sdist as _SDistCommand

class SDistCommand(_SDistCommand):
    sub_commands = [('build_webassets', None)] + _SDistCommand.sub_commands

class BuildCommand(_BuildCommand):
    sub_commands = [('build_webassets', None)] + _DevelopCommand.sub_commands

class DevelopCommand(_DevelopCommand):
    def run(self):
        self.run_command('build_webassets')
        _DevelopCommand.run(self)

setup(
    cmdclass={
        'sdist': SDistCommand,
        'develop': DevelopCommand,
        'build': BuildCommand,
    }
)

Expected Result
The workspace should support build-system.requires such that it is built and made available for other packages in the workspace to use.
Actual Result
❯ rye sync
Initializing new virtualenv in /Users/luser/scratch/rye-test/.venv
Python version<EMAIL_ADDRESS>Generating production lockfile: /Users/luser/scratch/rye-test/requirements.lock
error: Failed to build editables
  Caused by: Failed to build editable: file:///Users/luser/scratch/rye-test/src/my-app
  Caused by: Failed to install requirements from build-system.requires (resolve)
  Caused by: No solution found when resolving: setuptools, wheel, my-setuptools-extension
  Caused by: Because my-setuptools-extension was not found in the package registry and you require my-setuptools-extension, we can conclude that the requirements are unsatisfiable.
error: could not write production lockfile for workspace

Caused by:
    failed to generate lockfile

Rye isn't solving this problem and assuming the requirements are in a remote registry.
Version Info
rye 0.27.0
commit: 0.27.0 (2024-02-26)
platform: macos (aarch64)
self-python<EMAIL_ADDRESS>symlink support: true
uv enabled: true

Additional info
In our current repo, we do this by running a specific build step plus find-links:
$ env/bin/pip wheel -w wheels src/my-setuptools-extension
$ env/bin/pip install --find-links wheels -e src/my-app

This may be a problem with uv https://github.com/astral-sh/uv/issues/1661.

@ischaojie rye 0.31.0 exhibits the same issue - I think this is very specific to build-requires - I don't have problems with just normal (dev-)dependencies between projects in the workspace.

This should be addressed upstream in the latest release of uv (0.1.27).

This should be addressed upstream in the latest release of uv (0.1.27).

@zanieb This issue is still there in the latest rye 0.33 which is using uv 0.1.37.

Yeah I don't think we support this. I don't know how we would know to find my-setuptools-extension locally.

Just to say it (ignoring the implementation details and philosophies of rye/uv) - it's in the configured workspace so it could be found. Since it's a build-system dependency instead of a runtime dependency I think conceptually it'd require an initial pass of the workspace to find package names + build dependencies prior to actually building each package, then properly sorting packages so they are built in the right order with respect to build dependencies.

Anecdotally here is how I do this without rye with make virtualenv:
virtualenv: export VIRTUAL_ENV := $(VENV)
virtualenv: $(VENV)/bin/python
	@$(MAKE) check-virtualenv
	$(UV) pip install -U pip
	$(VENV)/bin/pip wheel \
		-w "$(WHEELDIR)" \
		-r requirements/01-setup.in -c requirements/01-setup.txt
	$(UV) pip install \
		--color always \
		--find-links "$(WHEELDIR)" \
		--reinstall \
		-r requirements/02-src.in -c requirements/02-src.txt \
		-r requirements/03-dev.in -c requirements/03-dev.txt

We use pip-tools to lock a 01-setup, then build wheels of those into a wheelhouse. Then that wheelhouse is used via --find-links when building the packages that depend on those special build-time dependencies. This strategy also allows us to lock the versions of packages used at build time like setuptools.


Package with new resolved file fails to build on older versions of Swift

Please describe the bug
We have a package that supports 5.9 but is not showing support on SPI due to a build failure related to Package.resolved versioning.
Explain the steps needed to reproduce the bug
Here's an example build failure:

Package.resolved file is corrupted or malformed; fix or delete the file to continue: unknown 'PinsStorage' version '3' at '/Users/admin/builder/spi-builder-workspace/Package.resolved'.
GENERIC FAILURE 5.9 iOS

— https://swiftpackageindex.com/builds/8D491727-C694-4E8F-84E9-8A4CEAB091ED
What was the expected behaviour?
I'd expect builds to succeed, either by ignoring or deleting the resolved file.

Thanks for the report, @stephencelis ! The build you linked to has been garbage collected before I had a chance to look at it. What package is this happening with?

Out of curiosity: wouldn't this also affect builds in your CI? How are you dealing with it there?

I'm experiencing the very same issue on my swift package: https://swiftpackageindex.com/builds/7080A3DC-D844-487C-8253-C53B8632B1F3

Thanks for the report, @danielepantaleone . For future reference, the package is https://swiftpackageindex.com/danielepantaleone/BlueConnect

Yes, I know. I just linked the build log showing the error on Swift 5.9 🙂

(We delete builds when new package versions are discovered - I just wanted to make sure we record the package because when that happens your link will be a 404 :) )

Thanks for clarifying, I didn't know about that (still getting used to swift package index 😁)

I can reproduce the error but in trying to set up a test case I'm come across something puzzling. When I run swift package resolve on a project with Swift 6, it creates a version 2 Package.resolved file:
{
  "pins" : [
    {
      "identity" : "semanticversion",
      "kind" : "remoteSourceControl",
      "location" : "https://github.com/SwiftPackageIndex/SemanticVersion",
      "state" : {
        "revision" : "ea8eea9d89842a29af1b8e6c7677f1c86e72fa42",
        "version" : "0.4.0"
      }
    }
  ],
  "version" : 2
}

The Package.swift file has a tools-version 5.9 like yours. How did you managed to create a Package.resolved file with "version" : 3?

I believe it's due to the swift language version that I added in my swift package to enable Swift 6 language mode:
swiftLanguageVersions: [
    .v5,
    .version("6")
]

That doesn't change it when I add this. Moreover, if I check out version 1.1.0 in your package and do rm Package.resolved && swift package resolve, I get a version 2 Package.resolved.

Also, you'll notice in revision a58568d0bcb79929cad2e11a30f75b20a2ad1ee1 where version 3 first appears in your project, the Package.swift file doesn't have a language mode setting.
Also there, if I recreate Package.resolved I get a version 2 Package.resolved.
I'm simply unable to create any version 3 of that file 😅

I may have found the cause. While adding support to Swift 6 in my package I temporarily changed swift-tools-version to 6.0. Apparently, changing it back to 5.9 and enabling compatibility with Swift 6 using swiftLanguageVersions doesn't revert the Package.resolved back version 2 (unless deleted).
I pushed a branch on my swift package repository with this configuration:
https://github.com/danielepantaleone/BlueConnect/tree/swift-package-version-3
If you checkout this branch and run rm Package.resolved && swift package resolve you should be able to generate a version 3 of Package.resolved.

Ah, that's it - thanks!
So in principle, we can detect and fix this. However, I believe this is actually a configuration problem that will break builds in general, not just on SPI.
I'm curious about your thoughts @danielepantaleone and @stephencelis if you think this is something we should try and patch or if you consider this is an issue better fixed on the repository side.

I think you are right. I also believe this should be fixed in the swift package configuration. Nevertheless, it was kinda "hard/boring" tracing the issue, so maybe something more prominent can be printed in the SPI main page (even though it's not an SPI issue but it could help)?
I'm talking about something like the badge for swift 6 data safety errors:

Unfortunately, that kind of information would be hard to feed back to where I can be displayed. The build logs would remain the place where these kind of errors surface automatically.
Honestly, if the choice were only between lots of logic to parse out and display this error and just fixing it, I'd just fix it. That's way less complicated :)

Ok, after speaking to Stephen I now know how this can happen in the general case. An example repository is https://github.com/pointfreeco/swift-case-paths.
It has a<EMAIL_ADDRESS>file, which is tools version 6, obviously, but also a Package.swift file with tools version 5.9.
This will then generate a v3 resolved file when running with Swift 6 and it makes running package resolution fail when running with Swift 5.9 due to the existing Package.resolved file. (FWIW, Swift 5.10 doesn't have this problem.)
This is therefore not a package problem and I can now easily recreate this scenario for a regression test. We'll work around this in our build system.

Ok, we've deployed a fix for this and I've re-triggered the 5.9 builds for

swift-case-paths
swift-navigation
BlueConnect

I see some builds now passing and the reported error is gone. However, the builds aren't green for the same platforms as 5.10. That might be expected but I suspect it's not. Please have a look if there are further problems and open a new issue if so!
I'll close this one in the meantime :)


Updated to OBS 30.1.2 and Loupedeck will not connect to OBS consistently

I've been troubleshooting this all day and this is what I've found out so far:

OBS seems to be resetting the Websockets server password with each restart.
Loupedeck will sometimes connect, sometimes won't. Sometimes it will get disconnected for no reason. Once it disconnects, it cannot reconnect.
If it disable authentication in OBS Websocket server, Loupedeck can connect and is stable.
Everything was working fine before updating to OBS 30.1.2.
Even re-installing the Loupedeck plugin per the Loupedeck documentation didn't change anything.
Problem is 99% sure on the OBS side of things.

I don't know what they changed in their Websockets plugin, but it even affected my Streamerbot connectivity.

#50 hoping my pull request gets through. I fixed this issue.


No blockwise input

@rjzamora I'm screwing around here.  Things don't work. Probably I'm going down a path that you've already explored.  If so, please let me know what to expect :)

Whoops, wrong root of the PR.  Hopefully the last commit is useful

Ah, I see now, by sending the 0 index down we don't give the places where there were BlockwiseInputs enough information to give the right answer.
🤔

Probably I'm going down a path that you've already explored.

Probably - Especially a couple years ago with HLGs.  However, you may be able to make things work without SubgraphCallable (a path I didn't explore much yet).

This is set up more cleanly here: https://github.com/rjzamora/dask-match/pull/1/