text:
Error: You are not allowed to change password

Try change password, but show error You are not allowed to change your password. Please contact your system administrator.
{   "Logging": {     "IncludeScopes": false,     "LogLevel": {       "Default": "Debug",       "System": "Information",       "Microsoft": "Information"     }   },   "PasswordChangeOptions": {     "UseAutomaticContext": false,     "LdapHostname": "ADTI.TI.com.br",     "LdapPort": 389,     "LdapUsername": "administrator",     "LdapPassword": "XXXX",     "CheckRestrictedAdGroups": true,     "RestrictedADGroups": [       "Administrators",       "Domain Admins",       "Enterprise Admins"     ],     "CheckAllowedAdGroups": false,     "AllowedADGroups": [ ]   },   "AppSettings": {     "EnableHttpsRedirect": false,     "RecaptchaPrivateKey": "", // ReCAPTCHA private key: replace this!     "ClientSettings": {       "ValidationRegex": {         "EmailRegex": "^[a-zA-Z0-9.!#$%&’*+/=?^_{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$",
"UsernameRegex": "^[a-zA-Z0-9._-]{3,20}$"
},
"ShowPasswordMeter": false,
"Recaptcha": {
"IsEnabled": false,
"SiteKey": "6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI", // ReCAPTCHA public key: replace this!
"LanguageCode": "en"
},
"ApplicationTitle": "Self-Service Account Management Tools",
"ChangePasswordTitle": "Change Account Password",
"ChangePasswordForm": {
"HelpTitle": "Help and Support",
"HelpText": "If you are having trouble with this tool, please contact IT Support",
"UsernameLabel": "Username",
"UsernameHelpblock": "Your organization's email address",
"UsernameDefaultDomainHelperBlock": "Your organization's username",
"CurrentPasswordLabel": "Current Password",
"CurrentPasswordHelpblock": "Enter your current password",
"NewPasswordLabel": "New Password",
"NewPasswordHelpblock": "Enter a strong password. You can use this tool to help you create one; use the XKCD (random sep, pad digit), or NTLM, options.",
"NewPasswordVerifyLabel": "Re-enter New Password",
"NewPasswordVerifyHelpblock": "Enter your new password again",
"ChangePasswordButtonLabel": "Change Password"
},
"ErrorsPasswordForm": {
"FieldRequired": "This field is required",
"UsernamePattern": "Please enter a valid username",
"UsernameEmailPattern": "Please enter a valid email address",
"PasswordMatch": "Passwords do not match"
},
"DefaultDomain": "TI.com.br", // Set your default AD domain here, or non "@" logins will not work!
"Alerts": {
"SuccessAlertTitle": "You have changed your password successfully.",
"SuccessAlertBody": "Please note it may take a few hours for your new password to reach all domain controllers.",
"ErrorPasswordChangeNotAllowed": "You are not allowed to change your password. Please contact your system administrator.",
"ErrorInvalidCredentials": "You need to provide the correct current password.",
"ErrorInvalidDomain": "You have supplied an invalid domain to logon to.",
"ErrorInvalidUser": "We could not find your user account.",
"ErrorCaptcha": "Could not verify you are not a robot",
"ErrorFieldRequired": "Fulfil all the fields",
"ErrorFieldMismatch": "The passwords do not match"
}
}
}
}`

That error is because you need to allow users to change the password, it's an Active Directory configuration. Please verify your domain settings.

I get this same error on some users, but not all. Noone affected has "user cannot change passwd" set on their account.

I think I have narrowed this down to users that are domain admins are not allowed to change their passwords. Does that make sense?

Maybe you have domain policy blocking to change passwords to domain admins?

Ok, so it turns out the built in "CheckRestrictedAdGroups": true, has "Administrators" in it. That seems to be pattern/regex matching "AWS Delegated Administrators". Making my own group of denied users and changing the list to it.

repo: unosquare/passcore


text:
[Map] CTF-SpoondogBME

If click on author:
https://unrealarchive.org/authors/cory-spooner-_thespoondog_.html
Then map CTF-SpoondogBME not appear in list.

URL: https://unrealarchive.org/maps/unreal-tournament/capture-the-flag/S/ctf-spoondogbme_6bc6ac3a.html
Hash: 6bc6ac3a09e403338ba6dca63043dd646324e698
Current name: CTF-SpoondogBME

Fixed, his Author page should include more stuff now: https://unrealarchive.org/authors/cory-spooner-thespoondog.html

source: gharchive/issue

authors: SeriousBuggie shrimpza

repo: unreal-archive/unreal-archive-data

license: Unlicense

license_type: permissive

license_source: github-api


text:
Push Access

Could I be granted push access please? Im trying to upload files into the course subject area, i.e. Word docs with images etc however github is saying that I need "push access" to do so.

Hello @CheekeyMonkey I just added you as a collaborator, please let me know if you are still having issues.

@CheekeyMonkey I am going to revert this so we can return to the normal pull-request notification/review process. Please let me know if you need push access again in the future and I can adjust as needed.

Disregard I found another solution we can experiment with that should require review of my pushes as well.

authors: CheekeyMonkey unshakenme

repo: unshakenme/OSPAT

license: MIT


text:
Minor changes for k8s service endpoints and kafka lag check lego

Description

Make endpoints as a required parameter
Update fetch_leg function call

Testing
Error:

Fail:

Pass:

Checklist:

[ ] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] Any dependent changes have been merged and published.

Documentation
Make sure that you have documented corresponding changes in this repository.

I have updated all test cases @jayasimha-raghavan-unskript

source: gharchive/pull-request

repo: unskript/Awesome-CloudOps-Automation


text:
I couldn't figure out how to nicely convert a streamable reqwest::Response into a Readable

this is likely because I am bad at rust but I struggled to get this working (though in theory it shouldn't be too difficult?)
I was hoping to be able to do something like:
let resp = reqwest::get(u).await?;

for token in html5gum::Tokenizer::new(&resp) { ... }

or even with bytes_stream
let resp = reqwest::get(u).await?.bytes_stream();

for token in html5gum::Tokenizer::new(&resp) { ... }

fell back on
let resp = reqwest::get(u).await?.text().await?;

for token in html5gum::Tokenizer::new(&resp) { ... }

but I'm pretty sure that's not going to stream the response and it's going to convert it back and forth from Bytes -> String -> Vec -> String unnecessarily

yup that's a known problem. html5gum ideally would accept:

async streams (or whatever other async support there is, see #3)
iterators of characters, bytes, string chunks, whatever

then additionally, html5gum should ideally return String tokens (not Bytes), if the input was already guaranteed valid utf-8. however, that's a lot of trait magic i have to do.
i think it's likely that, if #47 #21 ever lands, i'll revamp the I/O setup significantly. a lot of the inflexibility i introduced in html5gum was based around performance improvements i can make if the entire input stream is available as a contiguous block of bytes in memory
i don't think buffering up all input in memory is strictly worse for performance. most html documents should fit into your I/O buffer, and in my experience you save quite a bit of branching when passing a string into the tokenizer vs passing in a File object (even with a massive I/O buffer size)
i was curious what you were working on. seems like it's some sort of improvement to pip? I think pip already does not use a fully spec-compliant HTML5 parser. And since you're parsing literally only one webpage from a single party, I suspect your range of possible HTML "dialects" you have to deal with will be very limited, so a custom parser or quick-xml might work fine (and probably quicker too)

thanks for the advice !

authors: asottile untitaker


text:
Fix: Java JAR contains native library twice

This PR fixes https://github.com/unum-cloud/usearch/issues/314 by excluding the shared/ directory.
Tested with
javac -cp /usr/share/java/junit4.jar:../../build/libs/usearch-2.13.0.jar IndexTest.java
java -cp .:/usr/share/java/junit4.jar org.junit.runner.JUnitCore IndexTest

Note that a cleaner fix for this issue would probably be to not copy the dlls and load them from usearch/shared/
In the build.gradle we copy usearch/shared/* to ../ then in the code we load from /usearch.  Instead we can remove the copying and load from /usearch/shared/
          NativeUtils.loadLibraryFromJar("/usearch/libusearch.dylib");
        } else {
          NativeUtils.loadLibraryFromJar("/usearch/libusearch.so");

The latter sounds like a good plan. I can wait for that patch, if you want to follow up on this branch 🤗

Proper fix and verified the jar as in the OP.

authors: MarkReedZ ashvardanian

repo: unum-cloud/usearch


text:
SMAC environment problem

I'm trying to run MAPPO or IPPO with sc2 environment but I couldn't figured out how to specify the maps.
I already us pymarl and run the algorithms with this code:
python3 src/main.py --config=qmix --env-config=sc2 with env_args.map_name=2s3z
I want to run epymarl with MAPPO or IPPO algorithms with the same map 2s3z from sc2. could any one help me with that?
I'm using this code:
python3.7 src/main.py --config=mappo --env-config=sc2 with env_args.time_limit=25 env_args.key="SMAC:2s3z"
I get this error:
sacred.utils.ConfigAddedError: Added new config entry that is not used anywhere
Conflicting configuration values:
env_args.key=SMAC:2s3z

There are two issues with the command that you are using. First, in SMAC you do not have to specify the timelimit because this is set by the map. Second you do not have to add the "SMAC" keyword before the map_name.
The correct command is:
python3.7 src/main.py --config=mappo --env-config=sc2 with env_args.map_name="2s3z"

which is the same as the command you have to use in PyMARL.

@papoudakis I already try this command and I try it again.
python3.7 src/main.py --config=mappo --env-config=sc2 with env_args.map_name="2s3z"
I got this error:
[DEBUG 15:56:57] pymarl Stopping Heartbeat
[ERROR 15:56:57] pymarl Failed after 0:00:00!
Traceback (most recent calls WITHOUT Sacred internals):
File "src/main.py", line 36, in my_main
run(_run, config, _log)
File "/media/abdulghani/APPS/AI Safety/MultiAgents RL/Algorithms/epymarl/src/run.py", line 49, in run
logger.setup_tb(tb_exp_direc)
File "/media/abdulghani/APPS/AI Safety/MultiAgents RL/Algorithms/epymarl/src/utils/logging.py", line 18, in setup_tb
configure(directory_name)
File "/home/abdulghani/.local/lib/python3.7/site-packages/tensorboard_logger/tensorboard_logger.py", line 296, in configure
_default_logger = Logger(logdir, flush_secs=flush_secs)
File "/home/abdulghani/.local/lib/python3.7/site-packages/tensorboard_logger/tensorboard_logger.py", line 46, in init
os.makedirs(self.logdir)
File "/usr/local/lib/python3.7/os.py", line 223, in makedirs
mkdir(name, mode)
OSError: [Errno 22] Invalid argument: '/media/abdulghani/APPS/AI Safety/MultiAgents RL/Algorithms/epymarl/results/tb_logs/mappo_seed950075212_2s3z_2023-03-20 15:56:57.983744'

@semitable did I have to copy the content to the home folder
i am using
Ubuntu: 20.04
python: 3.7.13
Tensorboard: 2.11.2

this is a list for all packages that I have installed
absl-py==1.4.0
atomicwrites==1.4.1
attrs==22.2.0
cachetools==5.3.0
certifi==2022.12.7
chardet==3.0.4
charset-normalizer==3.1.0
cloudpickle==2.2.1
colorama==0.4.6
cycler==0.11.0
deepdiff==6.3.0
docopt==0.6.2
entrypoints==0.4
enum34==1.1.10
fonttools==4.38.0
future==0.18.3
gitdb==4.0.10
GitPython==3.1.31
google-auth==2.16.2
google-auth-oauthlib==0.4.6
grpcio==1.51.3
gym==0.21.0
idna==2.7
imageio==2.26.0
importlib-metadata==4.13.0
jsonpickle==1.5.2
kiwisolver==1.4.4
lbforaging==1.1.1
Markdown==3.4.1
MarkupSafe==2.1.2
matplotlib==3.5.3
mock==5.0.1
more-itertools==9.1.0
-e git+https://github.com/semitable/multiagent-particle-envs.git@2cef12f72a9192a819ef289646526801c39fb909#egg=mpe
mpyq==0.2.5
munch==2.5.0
networkx==2.6.3
numpy==1.21.6
numpy-stl==3.0.1
oauthlib==3.2.2
ordered-set==4.1.0
packaging==23.0
pbr==4.3.0
Pillow==9.4.0
pluggy==0.7.1
portpicker==1.2.0
probscale==0.2.5
protobuf==3.19.5
py==1.6.0
py-cpuinfo==9.0.0
pyasn1==0.4.8
pyasn1-modules==0.2.8
pygame==2.3.0
pyglet==2.0.5
pyparsing==2.2.2
PySC2==3.0.0
pytest==4.3.1
python-dateutil==2.7.3
python-utils==3.5.2
PyYAML==5.3.1
requests==2.21.0
requests-oauthlib==1.3.1
rsa==4.9
rware==1.0.3
s2clientprotocol==4.10.1.75800.0
s2protocol==5.0.11.89720.0
sacred==0.8.2
scipy==1.7.3
six==1.11.0
sk-video==1.1.10
SMAC @ git+https://github.com/oxwhirl/smac.git@8a092e4bd0c6f5d3cf929523c67e1bca861463aa
smmap==5.0.0
snakeviz==2.1.1
tensorboard==2.11.2
tensorboard-data-server==0.6.1
tensorboard-logger==0.1.0
tensorboard-plugin-wit==1.8.1
torch==1.13.1+cu117
torchaudio==0.13.1+cu117
torchvision==0.14.1+cu117
tornado==5.1.1
typing_extensions==4.5.0
urllib3==1.23
websocket-client==0.53.0
Werkzeug==2.2.3
whichcraft==0.5.2
wrapt==1.10.11
zipp==3.15.0

Looks like you have changed the default configs. Could you try disabling tensorboard and running again?
I am not sure where you changed that value (maybe config/default.yaml?). But the default value is false afaik

@semitable I already have a copy of the original configs I will replace them all and run it again with turn off the tensorboard.

@semitable yes you were wright, I disable the tensorboard and its work. But I have a research and plotting the changes of each algorithm is important for me. How can I run the tensorboard or plot the curves, is there any other tools for that?

python src/main.py --config=qmix --env-config=gymma with env_args.time_limit=500 env_args.key="rware:rware-tiny-2ag-v1"
When I execute the command, I get an error like this，can someone help me with this
[DEBUG 10:55:52] git.cmd Popen(['git', 'version'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'version'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'diff', '--cached', '--abbrev=40', '--full-index', '--raw'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'diff', '--abbrev=40', '--full-index', '--raw'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'cat-file', '--batch-check'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=)
[DEBUG 10:55:52] git.cmd Popen(['git', 'diff', '--cached', '--abbrev=40', '--full-index', '--raw'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'diff', '--abbrev=40', '--full-index', '--raw'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'cat-file', '--batch-check'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=)
[DEBUG 10:55:52] git.cmd Popen(['git', 'diff', '--cached', '--abbrev=40', '--full-index', '--raw'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'diff', '--abbrev=40', '--full-index', '--raw'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=None)
[DEBUG 10:55:52] git.cmd Popen(['git', 'cat-file', '--batch-check'], cwd=C:\Users\asus\epymarl, universal_newlines=False, shell=None, istream=)
src/main.py:58: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working
if isinstance(v, collections.Mapping):
[INFO 10:55:53] root Saving to FileStorageObserver in results/sacred.
[DEBUG 10:55:54] pymarl Using capture mode "fd"
[INFO 10:55:54] pymarl Running command 'my_main'
--- Logging error ---
[INFO 10:55:54] pymarl Started run with ID "1"
--- Logging error ---
[DEBUG 10:55:54] pymarl Starting Heartbeat
--- Logging error ---
[DEBUG 10:55:54] my_main Started
--- Logging error ---
[WARNING 10:55:54] my_main CUDA flag use_cuda was switched OFF automatically because no CUDA devices are available!
--- Logging error ---
[INFO 10:55:54] my_main Experiment Parameters:
--- Logging error ---
[INFO 10:55:54] my_main
{   'action_selector': 'epsilon_greedy',
'add_value_last_step': True,
'agent': 'rnn',
'agent_output_type': 'q',
'batch_size': 32,
'batch_size_run': 1,
'buffer_cpu_only': True,
'buffer_size': 5000,
'checkpoint_path': '',
'double_q': True,
'env': 'gymma',
'env_args': {   'key': 'rware-tiny-2ag-v1',
'pretrained_wrapper': None,
'seed': 356102410,
'time_limit': 500},
'epsilon_anneal_time': 50000,
'epsilon_finish': 0.05,
'epsilon_start': 1.0,
'evaluate': False,
'evaluation_epsilon': 0.0,
'gamma': 0.99,
'grad_norm_clip': 10,
'hidden_dim': 64,
'hypergroup': None,
'hypernet_embed': 64,
'hypernet_layers': 2,
'label': 'default_label',
'learner': 'q_learner',
'learner_log_interval': 10000,
'load_step': 0,
'local_results_path': 'results',
'log_interval': 50000,
'lr': 0.0005,
'mac': 'basic_mac',
'mixer': 'qmix',
'mixing_embed_dim': 32,
'name': 'qmix',
'obs_agent_id': True,
'obs_individual_obs': False,
'obs_last_action': False,
'optim_alpha': 0.99,
'optim_eps': 1e-05,
'render': False,
'repeat_id': 1,
'runner': 'episode',
'runner_log_interval': 10000,
'save_model': False,
'save_model_interval': 50000,
'save_replay': False,
'seed': 356102410,
'standardise_returns': False,
'standardise_rewards': True,
't_max': 2050000,
'target_update_interval_or_tau': 200,
'test_greedy': True,
'test_interval': 50000,
'test_nepisode': 100,
'use_cuda': False,
'use_rnn': False,
'use_tensorboard': False}
--- Logging error ---
D:\Anaconda3-4.3.1\envs\parking\lib\site-packages\sacred\stdout_capturing.py:184: UserWarning: tee_stdout.wait timeout. Forcibly terminating.
warnings.warn("tee_stdout.wait timeout. Forcibly terminating.")
[DEBUG 10:55:56] pymarl Stopping Heartbeat
[ERROR 10:55:56] pymarl Failed after 0:00:02!
Traceback (most recent calls WITHOUT Sacred internals):
File "D:\Anaconda3-4.3.1\envs\parking\lib\site-packages\gym\envs\registration.py", line 158, in spec
return self.env_specs[id]
KeyError: 'rware-tiny-2ag-v1'
During handling of the above exception, another exception occurred:
Traceback (most recent calls WITHOUT Sacred internals):
File "src/main.py", line 36, in my_main
run(run, config, log)
File "C:\Users\asus\epymarl\src\run.py", line 55, in run
run_sequential(args=args, logger=logger)
File "C:\Users\asus\epymarl\src\run.py", line 87, in run_sequential
runner = r_REGISTRY[args.runner](args=args, logger=logger)
File "C:\Users\asus\epymarl\src\runners\episode_runner.py", line 15, in init
self.env = env_REGISTRYself.args.env
File "C:\Users\asus\epymarl\src\envs_init.py", line 14, in env_fn
return env(**kwargs)
File "C:\Users\asus\epymarl\src\envs_init.py", line 82, in init
self.original_env = gym.make(f"{key}", **kwargs)
File "D:\Anaconda3-4.3.1\envs\parking\lib\site-packages\gym\envs\registration.py", line 235, in make
return registry.make(id, **kwargs)
File "D:\Anaconda3-4.3.1\envs\parking\lib\site-packages\gym\envs\registration.py", line 128, in make
spec = self.spec(path)
File "D:\Anaconda3-4.3.1\envs\parking\lib\site-packages\gym\envs\registration.py", line 203, in spec
raise error.UnregisteredEnv("No registered env with id: {}".format(id))
gym.error.UnregisteredEnv: No registered env with id: rware-tiny-2ag-v1

repo: uoe-agents/epymarl


text:
Running parallel pipelines with different parameters some are skipped

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
I have a pipeline that receives a parameter to choose what to update. This pipeline affects several files and is dynamic; it does not always process the same files. We detected that, at some point, this pipeline stopped working as expected. When we execute multiple pipelines in parallel with different parameters, only one creates the PR. The rest show a message like this one.
WARNING: GitHub pull request creation skipped as branch "updatecli_main_2e4738258883e65e74efa81cba52f74fdcf5e5c76cee53c658e2587e6175f113" diverged from "main"

Expected Behavior
All the parallel pipeline execution with different parameters should create all the PRs needed.
Steps To Reproduce

Create a pipeline like the following

---
# yaml-language-server: $schema=https://www.updatecli.io/schema/latest/config.json
# {{ $updateChannel := requiredEnv "UPDATE_CHANNEL" }}
name: Update update channels {{ $updateChannel }}
scms:
  githubConfig:
    kind: "github"
    spec:
      user: '{{ requiredEnv "GIT_USER" }}'
      email: '{{ requiredEnv "GIT_EMAIL" }}'
      owner: '{{ requiredEnv "GITHUB_OWNER" }}'
      repository: '{{ requiredEnv "GITHUB_REPO" }}'
      token: '{{ requiredEnv "GITHUB_TOKEN" }}'
      username: '{{ requiredEnv "GIT_USER" }}'
      branch: "main"
      force: true
actions:
  createpr:
    kind: github/pullrequest
    scmid: githubConfig
    spec:
      mergemethod: squash
      title: '[updatecli] Update channels {{ $updateChannel }}'
      description: 'Update channels new versions.'
      labels:
        - "update-channels"
        - "{{ $updateChannel }}"
sources:
  version:
    name: 'Check {{ $updateChannel }} channel'
    kind: shell
    spec:
      command: sleep 30; echo "3.${RANDOM}"
      environments:
        - name: RANDOM
targets:
  update-channel:
    name: "Updating {{ $updateChannel }} version"
    sourceid: version
    scmid: githubConfig
    kind: file
    spec:
      file: ".python-version"
      forcecreate: true

Create a PR change changing the .python-version file to anything
Run the following Script and merge the previous PR when the first pipeline execution pass

for i in one two three;
do
    GIT_USER="my-user" \
    GIT_EMAIL="my-user@example.com" \
    GITHUB_OWNER="my-user" \
    GITHUB_REPO="my-repo" \
    GITHUB_TOKEN="$(gh auth token)" \
    UPDATE_CHANNEL="$i" \
    RANDOM="${RANDOM}" \
    updatecli apply --config .ci/update-versions/test.yml;
done

Environment
- OS: Ubuntu 22.04
- updatecli: v0.78.0

Anything else?
I think is related to the changes at https://github.com/updatecli/updatecli/issues/2039

Mmmh interesting bug, that area of code is not easy to test.
Can you confirm that:

you are not running Updatecli in experimental mode
Each Updatecli execution within the loop, create a different working branch
Working branches are correctly created but it failed open a pullrequest

you are not running Updatecli in experimental mode

nop

Each Updatecli execution within the loop, create a different working branch

it happens running in the same shell like the example or running in different workflows and runners.

Working branches are correctly created but it failed open a pullrequest

the only message is the one related to the diverge
WARNING: GitHub pull request creation skipped as branch "updatecli_main_2e4738258883e65e74efa81cba52f74fdcf5e5c76cee53c658e2587e6175f113" diverged from "main"

Is there a way to disable the diverge checking and create the PR always? that's fixes the issue for me.

Is there a way to disable the diverge checking and create the PR always? that's fixes the issue for me.

Yes if you set force to false, it won't try to update the base branch
like
scms:
  githubConfig:
    kind: "github"
    spec:
      user: '{{ requiredEnv "GIT_USER" }}'
      email: '{{ requiredEnv "GIT_EMAIL" }}'
      owner: '{{ requiredEnv "GITHUB_OWNER" }}'
      repository: '{{ requiredEnv "GITHUB_REPO" }}'
      token: '{{ requiredEnv "GITHUB_TOKEN" }}'
      username: '{{ requiredEnv "GIT_USER" }}'
      branch: "main"
      force: false

it happens running in the same shell like the example or running in different workflows and runners.

Base on your manifest, each updatecli execution within your shell loop should open a different pullrequest from a different branch like updatecli_main_xxx
If I understand correctly those pipelines only contain one target per pullrequest

No luck here; I have added --clean=true --debug=true and tried with force: false and force: true without force. I found a bunch of branches without PR every morning. It happens when I make many updates that would be merged at the same time I make more updates. It is an IasC update where I have to update a bunch of deploys that uses different configuration files for each, but they all are updated to the same new version, I need to make every change in an isolate PR to control the rollback/retry only on that component.
I will start to downgrade updatecli to find the version that changes the behaviour.

The downgrade to 0.75.0 resolves all my issues

First  and foremost, thank you for the reporting this issue and sharing your investigation.
In v0.75.0, I introduced that ability to automatically rebase working branches that diverged from their base branch. While I am convinced it was needed and a major step forward, it also introduced side effects which have been a pain to identify and fix 😐 which I also suspect resulting in the current issue

The downgrade to 0.75.0 resolves all my issues

Good to know, I have a few deadlines for June that I need to finish before going back on Updatecli

I think 0.74.0 would probably be a better version to rollback

I will try to create a test scenario in a public repo to share with you our use case and test what is going on.

This is funny https://github.com/kuisathaverat/updatecli-issues/actions/runs/9496072771/job/26169674820 it updates a PR that updates the same file but it is older that the latest PR available.

Steps to replicate:

run the workflow one time https://github.com/kuisathaverat/updatecli-issues/blob/main/issue-2211/test.yml
it generated 2 PR
run the workflow again
When the workflow is at update-channel target of the update channel 01 merge the PR of the file 01
This causes the error

I think the issue has been introduced in
https://github.com/updatecli/updatecli/pull/2076/files#diff-b8631d54d4fedad3eb55124af03c184f46111ad1eae79ee90cafce98fdee41adR493
With additional thinking, I think I must open a pullrequest even if the "working branch" diverged because otherwise we'll always be at risk of not opening pullrequests if another pullrequest is merged while Updatecli is executed

authors: kuisathaverat olblak

repo: updatecli/updatecli


text:
image_types_ota.bbclass: Improve cmdline handling

Enhance the handling of special characters in the cmdline such as semicolons, which bash cannot handle correctly during build time.

We pass a cmdline parameter "slub_debug=FZP,zs_handle,zspage;FZPU"

Since the argument has no blank spaces you can pass it using a single string without the double-quotes. Have you tried this and what error do you get?
The special chars in the kernel command line are --, . and =.
https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html

This is not an issue with bash itself, since this would be a valid scenario for bash, it is actually an issue inside bitbake's shell parser:
Added the following at conf/local.conf:
OSTREE_KERNEL_ARGS:append = " slub_debug=FZP,zs_handle,zspage;FZPU test=foo"
Then bitbake fails during parsing:
    >    return yacc.parse(lexer=lexer, debug=debug), remaining

  File "/home/rsalveti/build/qualcomm/bitbake/lib/ply/yacc.py", line 267, in LRParser.parse(input=None, lexer=<bb.pysh.pyshlex.PLYLexer object at 0x743addc3acb0>, debug=False, tracking=0, tokenfunc=None):
             else:
    >            return self.parseopt_notrack(input,lexer,debug,tracking,tokenfunc)

  File "/home/rsalveti/build/qualcomm/bitbake/lib/ply/yacc.py", line 1049, in LRParser.parseopt_notrack(input=None, lexer=<bb.pysh.pyshlex.PLYLexer object at 0x743addc3acb0>, debug=False, tracking=0, tokenfunc=None):
                                 errtoken.lexer = lexer
    >                        tok = self.errorfunc(errtoken)
                             del errok, token, restart   # Delete special functions
  File "/home/rsalveti/build/qualcomm/bitbake/lib/bb/pysh/pyshyacc.py", line 650, in p_error(p=LexToken(TOKEN,'FZPU',0,0)):
             w('Unexpected EOF')
    >    raise sherrors.ShellSyntaxError(''.join(msg))

bb.pysh.sherrors.ShellSyntaxError: LexToken(TOKEN,'FZPU',0,0)
followed by:
  LexToken(TOKEN,'test=foo',0,0)
  LexToken(COMMA,';',0,0)
  LexToken(Do,'do',0,0)
  LexToken(NEWLINE,'\n',0,0)
  LexToken(TOKEN,'kargs_list="${kargs_list} --karg-append=$arg"',0,0)

ERROR: Parsing halted due to errors, see error messages above

Just the following is enough to avoid the parsing error when tested locally:
-       for arg in ${OSTREE_KERNEL_ARGS}; do
+       for arg in "${OSTREE_KERNEL_ARGS}"; do

@quic-raghuvar can you check if that fixes your issue?

After checking with a full build locally, adding quotes won't really fix the issue as we do indeed require every argument to be specified via karg-append, so we need to iterate over every command line argument, and ; will indeed cause parsing errors.
Can you please just extend the commit message pointing the command line argument used which caused the issue for you? Please describe better the issue and how your change is fixing the problem.

Yes. Using "${OSTREE_KERNEL_ARGS}" in place of ${OSTREE_KERNEL_ARGS} will not recognize each argument individually. It will take all of them as a single string. Also, it is a bash issue. I was able to reproduce the behavior even with a bash script that was ran locally.
I will update the commit message.

I have updated the commit message

Can the same change be propagated to kirkstone branch?

https://github.com/uptane/meta-updater/pull/121/commits/e50b8b0fc4f279bee5ba6a5cbb73aff536cf1416 is the PR on kirkstone

repo: uptane/meta-updater


text:
The password provided is not sufficiently secure. Please try again.

Hello,
I was testing the password reset by email.
I tested quite a few possibilities with the instructions provided by Snapp.
First try:
$%vO8r0S9GV84Kr&8gVEVEK#73$MIzu&BpF*7xk1
Second try:
#by%U$!8w6$w8ApmF2i&
And the last try:
cPy%7F^0KKc*rRCe$4n%%aZ@53qG07M&Kxe3OEkibeAJAb
Can you confirm this is a bug or am I the bug? :)

To be completely honest, I should output the symbols included in the regex, as there appears to be a conflict with missing symbols in the 'allowed' set. In your case, the first and second passwords contain #, and the third contains ^, neither of which are permitted by the current regex.
i'm trying to formulate a better regex.

Very weird, I have the same issue with all other tests. Without #, ^.
I realize that none of the passwords work.

i think i found a better regex on regex101, it seems to comply with your password and basically the same requirements:
^(?=.\d)(?=.[A-Z])(?=.[a-z])(?=.[^\w\d])([^\s]){8,}$
https://regex101.com/
let me build 0.8.6.3 😆

At your ease :+1:  Thanks!

yeah, no i mean that it requires 20 minutes, i just launched, and then if you will to try it i would really appreciate.
Also thank you for the massive debugging you took on your shoulder, this kind of feedback helps a lot to improve the app :)

Thank you for your interest in my application: looking forward to hearing your feedback!
i'll also take a look at the blog while waiting the build to complete. 💯

Version 0.8.6.3 should be live, and in the meantime, I discovered through your blog that my Proxmox had about 7 unused kernels left on the drive.

Let's go to try the new update :fire:
I discovered through your blog that my Proxmox had about 7 unused kernels
What an invasion! ;)

It was high time for a thorough cleaning. I'm kind of an enthusiast and consider this a hobby, don't judge me. 😆

I am no one to judge you, I am in a bad position. GORGEOUS! I can put whatever password I want.
I am finishing my article as complete as possible to detail all your work. The article will be released at midnight tonight.
Great, that was the last detail that gave me trouble explaining the password reset by email.
1009 words at the moment. I will now complete the tutorial. Thank you for your responsiveness! Moreover, it is specified in the article that it was nice to exchange with an attentive dev.

Thank you so much for your kind words! I'm glad I could help and that everything was clarified. I appreciate the recognition and enjoyed our exchanges as well. Looking forward to reading the article! 🚀

Tonight, midnight. Friendships from Belgium!
Now I find your application perfectly usable! Let's goooOooO!
See you soon :)

Sorry I'm two minutes late. :smile:
https://belginux.com/installer-snapp-avec-docker/
If you have a suggestion or comment, I'm all ears.

authors: urania-dev zarevskaya

repo: urania-dev/snapp


text:
removed zapcol from ford

lack of tail-call optimization in one of the functions was blowing the stack, causing issue: https://github.com/urbit/arvo/issues/826
removing the !: at the top of the file fixed this.

3:
Putting tactful !.s on the actual inner loops would go a lot better here,
assuming you want any future bug reports to still have line numbers of any
kind.
On Monday, 1 October 2018, ixv notifications@github.com wrote:

Merged #827 https://github.com/urbit/arvo/pull/827 into
release-candidate.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/urbit/arvo/pull/827#event-1877943205, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ABxXhvy4c_VuV2mesaaTz1cWnp_QPgNkks5ugpMFgaJpZM4XC9G2
.

authors: ixv ohAitch

repo: urbit/arvo

license: mit

license_source: bigquery


text:
Enhance validation error message

Resolves #31

Note: Compiling beats with PRs branch, error messages with required fields did contain full path into config name the missing field. E.g. filebeat missing match in multiline config prints:
Error in initing prospector: missing required field accessing 'filebeat.prospectors.0.multiline.match' (source:'tst.yml')

repo: urso/ucfg


text:
Implement UART transmit functionality.

Need to reuse it for:

transmit to radio board at 1200baud
transmit to telemetry board at 2x-3x speed of incoming GPS messages (please note that not all incoming GPS messages will be transmitted to telemetry board).

done

repo: usaguerrilla/hab


text:
Support max packet size < 64 of endpoint 0 correctly

If USBDevice.max_packet_size_ep0 was set to a value
smaller than 64 the pakets send to the host were
still 64 bytes in size.

Thanks -- this looks good.
@Qyriad, can you check functionality on backends other than the GreatFET?

repo: usb-tools/Facedancer


text:
High-level API introduces large and unpredictable performance penalty

I'm using usb4java 1.2.0 with a full-speed USB device that I'm developing.
When using the low-level libusb API, I am able to achieve throughput speeds near the theoretical maximum for a full-speed bulk endpoint (1114.112 KB/s).
If I switch to the high-level javax.usb API, my throughput drops by an amount that appears to depend not just on the machine I'm using, but on the port I'm connected to. I always see performance penalties of at least 50%.
I've developed a simple benchmarking tool. The device side reads a 4-byte network-byte-order integer from an OUT endpoint, then transmits that many bytes of garbage on an IN endpoint.
The low-level and high-level usb4java benchmark code is inlined below.
On one port on my development machine, I get the following results:
org.usb4java API benchmark
Writing header
4 bytes sent
Reading 1048576 bytes
1048576 bytes received
1048576 bytes in 1021 ms, 1002.9382957884428 KB/s

javax.usb API benchmark
Writing header
4 bytes sent
Reading 1048576 bytes
1048576 bytes received
1048576 bytes in 2311 ms, 443.09822587624404 KB/s

On another port, I get these results:
org.usb4java API benchmark
Writing header
4 bytes sent
Reading 1048576 bytes
1048576 bytes received
1048576 bytes in 971 ms, 1054.5829042224511 KB/s

javax.usb API benchmark
Writing header
4 bytes sent
Reading 1048576 bytes
1048576 bytes received
1048576 bytes in 16538 ms, 61.91800701414923 KB/s

As you can see, the performance hit is 56% on one port, and 94%(!) on the other.
I have seen this performance penalty on Windows 7 64-bit and Ubuntu Linux 32-bit and 64-bit.
UsbBench.java:
import org.usb4java.*;
import java.nio.*;
import java.io.*;

public class UsbBench
{
    public static final short idVendor = (short)0x03eb;
    public static final short idProduct = (short)0x2423;
    public static final byte ifaceId = (byte)0x00;
    public static final byte outEp = (byte)0x02;
    public static final byte inEp = (byte)0x81;
    public static final int timeout = 60000;

    public static void main(String args[])
        throws Exception
    {
        int result;
        DeviceHandle handle;
        int size = Integer.parseInt(args[0]);

        ByteArrayOutputStream headerStream = new ByteArrayOutputStream();
        DataOutputStream out = new DataOutputStream(headerStream);
        out.writeInt(size);
        byte[] header = headerStream.toByteArray();

        result = LibUsb.init(null);
        if (result != LibUsb.SUCCESS) throw new LibUsbException("Unable to initialize libusb.", result);
        handle = findDevice(idVendor, idProduct);
        if (handle == null) throw new RuntimeException("Device not found");

        try {
            result = LibUsb.claimInterface(handle, ifaceId);
            if (result != LibUsb.SUCCESS) throw new LibUsbException("Unable to claim interface", result);

            ByteBuffer buffer = ByteBuffer.allocateDirect(header.length);
            buffer.put(header);
            IntBuffer transfered = IntBuffer.allocate(1);

            System.out.printf("Writing header\n");
            result = LibUsb.bulkTransfer(handle, outEp, buffer, transfered, timeout);
            if (result != LibUsb.SUCCESS) throw new LibUsbException("Bulk transfer failed", result);
            System.out.printf("%d bytes sent\n", transfered.get());

            buffer = ByteBuffer.allocateDirect(size);
            transfered = IntBuffer.allocate(1);

            System.out.printf("Reading %d bytes\n", size);
            long start = System.currentTimeMillis();
            result = LibUsb.bulkTransfer(handle, inEp, buffer, transfered, timeout);
            long time = System.currentTimeMillis() - start;
            if (result != LibUsb.SUCCESS) throw new LibUsbException("Bulk transfer failed", result);
            int rx = transfered.get();
            System.out.printf("%d bytes received\n", rx);

            System.out.printf("%s bytes in %s ms, %s KB/s\n",
                              rx, time, (rx / (time / 1000.0)) / 1024.0);
        }
        finally
        {
            LibUsb.releaseInterface(handle, ifaceId);
            LibUsb.close(handle);
            LibUsb.exit(null);
        }
    }

    private static DeviceHandle findDevice(short vendorId, short productId)
    {
        // Read the USB device list
        DeviceList list = new DeviceList();
        int result = LibUsb.getDeviceList(null, list);
        if (result < 0) throw new LibUsbException("Unable to get device list", result);

        try
        {
            // Iterate over all devices and scan for the right one
            for (Device device: list)
            {
                DeviceDescriptor descriptor = new DeviceDescriptor();
                result = LibUsb.getDeviceDescriptor(device, descriptor);
                if (result != LibUsb.SUCCESS) throw new LibUsbException("Unable to read device descriptor", result);
                if (descriptor.idVendor() == vendorId && descriptor.idProduct() == productId)
                {
                    DeviceHandle handle = new DeviceHandle();
                    result = LibUsb.open(device, handle);
                    if (result != LibUsb.SUCCESS) throw new LibUsbException("Unable to open USB device", result);
                    return handle;
                }
            }
        }
        finally
        {
            // Ensure the allocated device list is freed
            LibUsb.freeDeviceList(list, true);
        }

        // Device not found
        return null;
    }
}

UsbBenchJavax:
import javax.usb.*;
import java.io.*;
import java.util.*;

public class UsbBenchJavax
{
    public static final short idVendor = (short)0x03eb;
    public static final short idProduct = (short)0x2423;
    public static final byte ifaceId = (byte)0x00;
    public static final byte outEp = (byte)0x02;
    public static final byte inEp = (byte)0x81;

    public static void main(String[] args)
        throws Exception
    {
        int size = Integer.parseInt(args[0]);

        ByteArrayOutputStream headerStream = new ByteArrayOutputStream();
        DataOutputStream out = new DataOutputStream(headerStream);
        out.writeInt(size);
        byte[] header = headerStream.toByteArray();

        UsbServices services = UsbHostManager.getUsbServices();
        UsbDevice usbdev = findDevice(services.getRootUsbHub(),
                                      idVendor, idProduct);
        UsbConfiguration config = usbdev.getActiveUsbConfiguration();
        UsbInterface iface = config.getUsbInterface(ifaceId);
        UsbPipe inPipe = iface.getUsbEndpoint(inEp).getUsbPipe();
        UsbPipe outPipe = iface.getUsbEndpoint(outEp).getUsbPipe();
        iface.claim();
        inPipe.open();
        outPipe.open();

        System.out.printf("Writing header\n");
        int tx = outPipe.syncSubmit(header);
        System.out.printf("%d bytes sent\n", tx);

        byte[] buffer = new byte[size];
        System.out.printf("Reading %d bytes\n", size);
        long start = System.currentTimeMillis();
        int rx = inPipe.syncSubmit(buffer);
        long time = System.currentTimeMillis() - start;
        System.out.printf("%d bytes received\n", rx);

        System.out.printf("%s bytes in %s ms, %s KB/s\n",
                          rx, time, (rx / (time / 1000.0)) / 1024.0);
    }

    @SuppressWarnings("unchecked")
    private static UsbDevice findDevice(UsbHub hub,
                                        short idVendor, short idProduct)
        throws UsbException
    {
        for (UsbDevice device : (List<UsbDevice>) hub.getAttachedUsbDevices())
        {
            UsbDeviceDescriptor desc = device.getUsbDeviceDescriptor();
            if (desc.idVendor() == idVendor && desc.idProduct() == idProduct)
                return device;

            if (device.isUsbHub())
            {
                device = findDevice((UsbHub) device, idVendor, idProduct);
                if (device != null) return device;
            }
        }
        return null;
    }
}

Most likely I misunderstood the JSR-80 spec and implemented the data transfer not ideally. Or maybe I did it correctly and the JSR-80 spec sucks... I'm open for pull requests here because of lack of time and know-how.

authors: kayahr malsyned


text:
Add Previous Versions page

This page will make the download files from previous methodology versions available for download.
There should be 2 download options:

zip file that contains the .xls, .csv, .pdf, tech support document, checksum file
zip file that contains the shapefiles, codebook and checksum file

After a standup conversation with @BethMattern and @KameronKerger, we won't have the checksum as part of the zip files.

@esfoobar-usds - can you attach the links that are associated with the two buttons (in the mock) please?

authors: BethMattern KameronKerger esfoobar-usds vim-usds


text:
needs_external_needs: Support local needs.json

There is a (well-hidden) option in intersphinx to load the objects.in file from a local directory or one or more mirrors.
I'm looking for a way to load an external needs.json file from a local directory.
This could be solved by adding an optional setting like "json_path", which just loads a file instead of attempting HTTP download.
Use Case:
Given two projects, A and B, which are built locally, the following can be used to generate an external-needs mapping:
|- project_A/
|  |- build
|  |  |- needs.json
|  |  |- html/
|  |- src/
|  |  |- conf.py
|- project_B/
|  |- build/
|  |  |- needs.json
|  |  |- html/
|  |- src/
|  |  |- conf.py

project_B/src/conf.py:
needs_external_needs = [{json_path = "../../project_A/build/needs.json" ...}]

I think there is also a hidden feature for needs_external_needs to use a local needs.json.
The json_url can have the format file://my/local/path/needs.json.
So instead of http:// you can use file://.
But this is totally missing in the docs.
So I keep this ticket open, until I have fixed the docs.

well hidden indeed. :-) I ran a local python http server to circumvent the limitation until now.

Please document that the URL has to be file:///home/local/path/needs.json, with three slashes after file:
Or else you get this error:
Traceback (most recent call last):
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinxcontrib/needs/external_needs.py", line 24, in load_external_needs
    response = s.get(source["json_url"])
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/requests/sessions.py", line 555, in get
    return self.request('GET', url, **kwargs)
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/requests_file.py", line 34, in send
    raise ValueError("file: URLs with hostname components are not permitted")
ValueError: file: URLs with hostname components are not permitted

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/str2lr/venvs/sphinx-doc/bin/sphinx-build", line 8, in <module>
    sys.exit(main())
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinx/cmd/build.py", line 294, in main
    return build_main(argv)
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinx/cmd/build.py", line 280, in build_main
    app.build(args.force_all, filenames)
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinx/application.py", line 350, in build
    self.builder.build_update()
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 294, in build_update
    len(to_build))
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 306, in build
    updated_docnames = set(self.read())
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 402, in read
    self.events.emit('env-before-read-docs', self.env, docnames)
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinx/events.py", line 101, in emit
    results.append(listener.handler(self.app, *args))
  File "/home/str2lr/venvs/sphinx-doc/lib/python3.7/site-packages/sphinxcontrib/needs/external_needs.py", line 27, in load_external_needs
    raise NeedsExternalException(f'Getting {source["json_url"]} didn\'t work. Reason: {e}')
sphinxcontrib.needs.external_needs.NeedsExternalException: Getting file://home/.../workspace/build/documentation/needs.json didn't work. Reason: file: URLs with hostname components are not permitted

Ohh thanks for the hint and for testing it.
Then the relative path support is not working.
Will fix this too.

Again: It works for me. IF you spell it file:///...

Sphinx-needs doesn't support relative paths to an "external needs" project, though.
This would come in handy for relocatable multi-project build documentation, i.e. if you put the documentation in such a web folder structure:
<webroot>
|- master
|  |- project_a
|  |- project_b  # reference project A
|  `  ...
|- release
|  |- 1.0
|  |  |- project_a
|  |  |- project_b  # reference project A
|  |  `  ...
|  |- 1.1
|  ` ...

Intersphinx supports this:
intersphinx_mapping = {'project_a': ('../../project_a/html',
                                  (os.path.join(project_root, 'build', 'project_a', 'html', 'objects.inv'), None))}

Result:
:doc: links will be converted to links in the following pattern:
<relative path to my project root>/<relative path to other project root>/<relative document path>.html
e.g. if you give have a role :doc:project_a:tools/index in a file project_b/html/doc/design.rst, the relative link will be:
../../../project_a/html/tools/index.hml
It now does not matter whether the documentation is in a relative path master/ or release/1.0/ or release/1.1/

What would probably be nice from a usability perspective is to check whether the json_url has a scheme component (contains ://), if it doesn't then assume it is a relative path and construct a url in the form file:///<project_root>/<json_url>

I agree.
It was a fast solution to ask only for an url and then let the used request library handle the download.
But now we should do the url vs. path handling by our own, so that it can be more stable.
I like the idea of having another option called json_path.
So the user can decide if he/she uses json_url or json_path.
And then for json_path absolute or relative path handling becomes quite easy,

@twodrops  @danwos, sorry, I was out of office in October!
The json_path option works fine but the relative base path feature I requested in this comment is not yet there. I will create a new issue for it and I hope you can somehow add it to 0.7.3 🙂

authors: Thomas-Swindells-t arwedus danwos

repo: useblocks/sphinxcontrib-needs


text:
needpie with zero needs causes matplotlib crash of build

I think there is a bug that causes the build to crash if there is a needpie filter condition does not return any needs.
I'm using version sphinxcontib.needs version 0.7.7.
Error:
/usr/local/lib/python3.8/dist-packages/matplotlib/axes/_axes.py:3052: RuntimeWarning: invalid value encountered in true_divide
  x = x / sx
Needs successfully exported

Extension error (sphinxcontrib.needs.directives.needpie):
Handler <function process_needpie at 0x7f398809aaf0> for event 'doctree-resolved' threw an exception (exception: cannot convert float NaN to integer)

RST source:
.. needpie::
   :labels: draft, submitted, assumed, agreed, obsolete, rejected
   :legend:

   type == 'cuc' and status == 'draft'
   type == 'cuc' and status == 'submitted'
   type == 'cuc' and status == 'assumed'
   type == 'cuc' and status == 'agreed'
   type == 'cuc' and status == 'obsolete'
   type == 'cuc' and status == 'rejected'

Error disappears when I add a cuc need:
.. cuc:: test
   :id: CUC_0815
   :status: draft

.. needpie::
   :labels: draft, submitted, assumed, agreed, obsolete, rejected
   :legend:

   type == 'cuc' and status == 'draft'
   type == 'cuc' and status == 'submitted'
   type == 'cuc' and status == 'assumed'
   type == 'cuc' and status == 'agreed'
   type == 'cuc' and status == 'obsolete'
   type == 'cuc' and status == 'rejected'

Fixed by #519

authors: danwos r-o-b-e-r-t-o


text:
Save the full diff as a file

This is useful to be able to easily upload the inputs and the diff as an artifact.
We could do a manual diff, but it's simpler to do it here as it's already calculated.

Thanks! Am I right to assume it makes some sense to expose the file path as an action output, to make it more explicit? The suggested approach someone finds this file can be consumed later on, right? 👀

Okay, that's what I did in https://github.com/usefulness/dependency-tree-diff-action/pull/117
The file can be now be easily referenced and consumed by i.e. actions/upload-artifact:
      - uses: actions/upload-artifact@v4
        with:
          name: dependency-tree-diff-output
          path: ${{ steps.dependency-diff.outputs.file-diff }}

@mateuszkwiecinski we actually wanted to upload all 3 files (only 2 found, 3rd in this PR), because it might help to look at the full context if there's something strange in the diff. Having all 3 available from CI means there's no need to get the branch and run the command, saving a bit of time + the CI environment might be configured differently so it could also help debug that.
Exposing the outputs might make sense, consider doing them all then. You might want to change the file names (which might break some), but but old_diff and new_diff is a bit misleading, because those are not diffs, just the old and new dependency dumps.

Thanks for more context, it totally makes sense 👍 Sooo, my proposal (merged already to the main branch) is:
     - uses: actions/upload-artifact@v4
       with:
          name: dependency-tree-diff-output
          path: |
              ${{ steps.dependency-diff.outputs.dependencies-previous }}
              ${{ steps.dependency-diff.outputs.dependencies-current }}
              ${{ steps.dependency-diff.outputs.file-diff }}

They should point at files named:

dependency_tree_diff_output.txt
dependency_tree_diff_dependencies_previous.txt
dependency_tree_diff_dependencies_current.txt

(although, I consider these names an implementation detail, so I wouldn't rely on them.)
I'm not fully satisfied with the names (dependencies-previous & dependencies-current), but I couldn't figure out anything fitting better (some of alternatives I considered: dependencies-this-ref/...-base-ref or dependencies-old/...-new).
I'll wait a bit in case you have any feedback and if everything seems to be fine I'll publish a regular release

For consistency consider:
              ${{ steps.dependency-diff.outputs.file-dependencies-previous }}
              ${{ steps.dependency-diff.outputs.file-dependencies-current }}
              ${{ steps.dependency-diff.outputs.file-diff }}

also to disambiguate between dependency_tree diff_output and dependency_tree_diff output, I would recommend:
dependency-tree-diff_output.txt
dependency-tree-diff_dependencies-previous.txt
dependency-tree-diff_dependencies-current.txt

re old/new prev/curr this/base, when I wrote a similar tool, I used base/head following PR naming vernacular. I think anything works though, it's pretty clear which one is which in all cases. previous/current has a benefit that the two words are not the same length, which could be interpreted as a bad thing, but might also help find the one you want faster.

although, I consider these names an implementation detail, so I wouldn't rely on them.
if everything seems to be fine I'll publish a regular release

Consider that since there wasn't a public API (step output) before this, people might've hardcoded the old file names, and you could break them. (We'll definitely need to adjust our usage.)

Thanks for all the feedback 🙇  All the changes should be included with 2.1.0 release 👍

authors: TWiStErRob mateuszkwiecinski

repo: usefulness/dependency-tree-diff-action


text:
Catch awkward typos

e.g. in the route definition:
          -
            beta.example.com:
              tls-amce: 'false'

We should just check the annotations against a known list using https://github.com/agnivade/levenshtein. Would also need to check against a corpus of existing .lagoon.yml to determine how breaking such a change would be.

authors: seanhamlin smlx

repo: uselagoon/lagoon-linter


text:
dome 密码错误

Describe the bug
dome 无法登录

Steps to reproduce

go to dome;
click 'Sign in'
see error

Screenshots or additional context
No response

Redeployed

authors: angleshe boojack

repo: usememos/memos


text:
Fixed libpng warning: iCCP: Not recognizing known sRGB profile that has been edited

Stripped exif data causing build warnings in Android Studio 1.2.
find . -name '*.png' -exec exiftool -overwrite_original -all= {} ;

:+1:

authors: PaitoAnderson thuytrinh

repo: uservoice/uservoice-android-sdk


text:
Cannot copy to clipboard

Cannot copy to clipboard:
Running ("pbcopy",[]) failed with exception: pbcopy: startProcess: posix_spawnp: does not exist (No such file or directory).
Running ("wl-copy",[]) failed with exception: wl-copy: startProcess: posix_spawnp: does not exist (No such file or directory).
Running ("xclip",["-selection","clipboard"]) failed with exception: xclip: startProcess: posix_spawnp: does not exist (No such file or directory).
Running ("xsel",["-i","-b"]) failed with exception: xsel: startProcess: posix_spawnp: does not exist (No such file or directory).
Please report this as a bug.

> nix-tree --version
nix-tree 0.4.0

nixpkgs revision = 23ff7d9dc4f3d553939e7bfe0d2667198f993536

This is know - and tricky to fix.
As you can see, we do go through a couple of possible apps to copy to clipboard (as I couldn't find a ready to use Haskell library that provides a cross platform copy-to-clipboard functionality). And if none exists, we fail. An easy fix would be to install one of them.
A better solution would be to update nixpkgs to add one of them as a runtime dependency. But I believe that'd introduce a dependency to X that I want to avoid. So we could add an optional (but default off) dependency, but at that point it'd be just easier for the users to install one of them instead of figuring out how to flip that flag on.
So what I'll do instead is that I'll fix the error message so it doesn't say "report this as a bug", but says something like "install ... application to use this functionality".

Hello!
Can you please help me?
I'm with plasma 5 x11, which clipboard tool from this list is for my case?
Best wishes,
Sergei

authors: Mr-Andersen spiage utdemir

repo: utdemir/nix-tree


text:
Mac Keyboard Integration

I have installed Ubuntu Focal on UTM in my MacOs M1 and I cannot seem to write symbols that require ctrl+alt, I mean: @ or {
I can write them when I use other methods of virtualization so it seems is some kind of misconfiguration using UTM and Ubuntu Focal.
Configuration

UTM Version: Version 2.0.25 (25)
OS Version: BigSur
Intel or Apple Silicon? Silicon

@deliarico can you explain the issue? Ctrl and Alt works fine for me. What do you mean write symbols?

I do not have the "alt" key in the MAC. If I try to use any combination of control + option key or whatever similar to write @ for example in the virtual machine it does not work. And this happens just when using UTM, I work with virtual remote computers at work and I can use control + option + 2 to write @, for example.

Does this require some custom setup in macos? Can you give detailed steps to reproduce?

I don't know if I'm hijacking this issue with a different problem, but I also can't type e.g. "@" for the following reason:

@ is placed on AltGr-2.
I have a 3rd party keyboard which has the Alt (left of space) and AltGr (right of space) keys, and I can use either of them together with the "2" key to generate "@" in a macos Terminal.
However, both these keys end up as keycode 64 (left Alt) in the VM (as can be seen in xev).
Keycode 64 is mapped to Alt_L in the Ubuntu keymap
In order to type a "@", a key that is instead mapped to ISO_Level3_Shift is needed.
Keycode 92 (right Alt) is mapped to ISO_Level3_Shift in the Ubuntu keymap, but UTM does not send this keycode for any key.

I think the key issue is the same as the OP:

They need control + option to generate keycode 92
I need AltGr to generate keycode 92
So probably some setting for how to generate keycode 92 is needed.

BTW: If I run xev under macos, it shows keycode 66 for Alt (left) and keycode 69 for AltGr (right).  Both are mapped to the keysym Mode_switch (which is an older version of ISO_Level3_Shift).

For easy reference, I made a table with the bottom row of keys on my keyboard (left to right), the macOS keycodes they generate, and the keycodes they should get in the Ubuntu VM.  It turns out all of the keys right of the spacebar are handled incorrectly.

Key
macOS keycode
expected Ubuntu VM keycode
actual Ubuntu VM keycode

Left Ctrl
67
37
37

Left "GUI"
63
133
133

Left Alt
66
64
64

Spacebar
57
65
65

Right Alt (AltGr)
69
92
64

Right "GUI"
71
134
133

Menu
118
135
None

Right Ctrl
70
105
37

This problem is bugging me for weeks now. I am not able to use characters like "@ | ~" etc. with my Mac keyboard in my virtual machines. I ended up copying and pasting these symbols to make us of them.
Any hint is appreciated.

I have changed the key map implementation in this commit, part of pull request #2670. If you are able to build UTM from source you could try to reproduce your issues. I believe they might be fixed with this.

Ok.  I don't expect the incorrect mapping of these keys to be specific to "non-english" keyboards though, as I'm pretty sure that english keyboards also have a right shift, a right control, and a right alt key...

Good to know. The issue naming is itself a bit of an issue 😉
There seem to be a few problems with my added key code to scan code mapping, or maybe with how the map is generated from macOS UI Events. From a brief glance the keys are definitely mapped in the new code. https://github.com/conath/UTM/blob/9f04795d652f8d66d6a801e5f2aa671feb28a8c8/Platform/macOS/KeyCodeMap.swift#L244
I don't know when I will be able to do a debugging session for this.

Ok.  Great that you are able to reproduce the issue.
Googling a bit, I found this Dolphin issue:
https://bugs.dolphin-emu.org/issues/10622
where they apparently encountered a similar problem after changing the keyboard implementation.
Other sources (https://www.logcg.com/en/archives/2902.html) indicate that it is necessary to use CGEvent rather than NSEvent to get different codes for left side and right side modifier keys.  Others still suggest using the flagsChanged NSEvent.  This seems like a mess...

I have exactly the same problem as OP. I tried using kinto for remapping the keyboard, but it didn't work.
This makes coding very hard. Maybe there is some software for this other than kinto?

Parallels comes with OSX layouts. Somebody could extract those layouts as I believe they are made by kbdEdit, one could also just make those via kbdEdit, maybe there are somewhere on the internet.
Another solution is to use PowerToys: https://superuser.com/questions/543971/how-to-change-the-windows-alttab-hotkey-to-something-else/1588228#1588228

authors: LightningRhino conath deliarico kkors martin-braun osy zeldin

repo: utmapp/UTM


text:
factor: Refactor the factoring logic

[x] Separate the data structure and factoring logic (uu_factor::factor) from the CLI code and I/O.
Improves maintainability and readability.
[x] Avoid moving data around (~10% runtime improvements, reduction in memory usage)
[ ] Refactor things so factoring algorithms return a factor (or None) to factor.
This refactoring will enable implementing multiple factoring methods (and dynamically selecting the best one based on smoothness etc.)

@Arcterus (or any other maintainer) : this fails to build because of the uucore_procs::main! invocation, and I have no idea where that macro is documented; could you suggest a fix so I can make further progress on this?

That’s in the uucore repo at the moment.  I think the path is something like src/uucore_procs/src/lib.rs or something like that.  If you can wait until tomorrow (or I guess later today at this point...), I can suggest a fix.

If you can wait until tomorrow (or I guess later today at this point...), I can suggest a fix.

Yes, don't stress out about it  :)
It's not as if I didn't have another draft PR to work on, or a bunch of other local branches  :sweat_smile:

I think this is ready for review as-is.
I did not (yet) move the factoring functionality to its own crate, as I realised it's not obvious where to put it, how to integrate with the release process for coreutils, etc...

Found a couple minor improvements, should now be clean on Clippy.
I'm not doing the last change I mentioned (making find_factor return an Option<u64> instead of looping until success) quite yet, as it doesn't make sense without also implementing another factor-finding algorithm (which is entirely out-of-scope for this PR)

I just rebased on master and added further testsuite improvements, shaking a couple more bugs lose (one of which was also caught in #1554).
Regarding performance, the improvement compared to master is pretty negligible (~1% on its own), but when combined with #1554 we get another ~15% improvement (compared to #1554 alone, which is already 2× faster than master)

authors: Arcterus nbraud

repo: uutils/coreutils


text:
Add darwin aarch64 for M1 Macs

A single line addition to CICD.yml

The issue is
Warning: cross does not provide a Docker image for target aarch64-apple-darwin,

Yes, seems there are no docker images (yet) for 'aarch64-apple-darwin', so the build can compile but cannot be run.
If you want we can close this pull-request for now, until it becomes more clear how to actually test this target?

I found this in the cross README: https://github.com/cross-rs/cross-toolchains.
They cite some licensing issues for not being able to distribute apple images, so I don't think they'll add them any time soon, but I think we could use the cross toolchains.

The only action we could do here is to build it but not run the unit-tests and rely on the other ARM platforms to give us a direction of failing tests? And adding a note in the release notes and or documentation stating that M1 builds are not tested.
Let me know so that we can close this pull-request.

I think just building it is a good temporary solution until GitHub provides M1 runners.

I have looked through the CICD setup, but how do I exclude something from test?

I don't think we have an option for that, but I imagine that you could add a new variable to the build matrix to specify whether tests should be run.

authors: jurgen-kluft sylvestre tertsdiepraam


text:
Peer to peer code review

Update linters.yml file to be able to work with javascript too.

Hello, Ukiyo.
You can try this code to reduce the size of your JavaScript:
const menuIcon = document.querySelector('.menuIcon');
const menuText = document.querySelector('.menuText');
const menuContainer = document.querySelector('.menuContainer');
menuIcon.addEventListener('click', () => {
menuText.classList.add('menuTextToggle');
});
menuContainer.addEventListener('click', (event) => {
if (event.target.matches('.menuAnchor') || event.target.matches('#closeMenuButton')) {
menuText.classList.remove('menuTextToggle');
}
});
-- The first line uses querySelector to select the element with the menuIcon class and stores it in the menuIcon variable.
-- The second line does the same for the menuText element.
-- The third line selects the element with the menuContainer class and stores it in the menuContainer variable.
-- The fourth line adds a click event listener to the menuIcon element using an arrow function. When the menuIcon element is clicked, the menuTextToggle class is added to the menuText element, which toggles the menu's visibility.
-- The fifth line adds a click event listener to the menuContainer element using another arrow function. When a click event occurs inside the menuContainer element, the event object is passed as an argument to the arrow function.
-- Inside the arrow function, an if statement checks if the clicked element matches either a menu anchor or the close button. If a match is found, the menuTextToggle class is removed from the menuText element, hiding the menu.
In summary, this code uses event delegation to add a single event listener to the menu container instead of multiple event listeners to each menu anchor, resulting in more efficient code.


text:
User input malformed: expected str for dictionary value @ data['arm_code']

I'm getting this error on v2 when trying to set silent arming for arm stay:
User input malformed: expected str for dictionary value @ data['arm_code']

Does this mean I have to provide a code? in v1 I was able to do silent arming without a code provided.

Also now that I have a code set, I cannot clear it.

Would you mind copying and pasting the configuration.yaml settings you had set before migrating? Sensitive info redacted, of course. I'm looking for the exact values you had set for force bypass, silent arming, and no entry delay.

# Alarm.com
# https://github.com/uvjustin/alarmdotcom
alarm_control_panel:
  - platform: alarmdotcom
    username: !secret alarmdotcom_username
    password: !secret alarmdotcom_password
    silent_arming: "true"
    two_factor_cookie: !secret alarmdotcom_2fa

Did you have any other options set there, like an arming code?
Also, it would be helpful if you could provide more detailed errors. If you add this to configuration.yaml and restart HA, you'll see debug-level errors for the integration in the Home Assistant debug log:
logger:
  default: warn
  logs:
    custom_components.alarmdotcom: debug
    pyalarmdotcomajax: debug

This should be fixed in v0.2.0-beta.10. Can you update and confirm?

I am still getting the error. I think the actual cause is that I want to leave the arm code blank, I dont wanna set it. And without setting it you are trying to retrieve the value that doesnt exist?
Seems like the fix would be if the string is empty, dont set it?

Got it. Home Assistant doesn't make it easy to let users delete data from fields that are pre-populated with the current value. (It interprets blank as no change instead of empty.) Try v0.2.0-beta.11. I added a separate checkbox that turns the security code on and off. You still won't be able to clear the security code field, but you will be able to tell the integration to ignore it.

authors: BinaryShrub elahd

repo: uvjustin/alarmdotcom


text:
next year button on top is disabled before correct year

Expected behaviour
User has the ability to pick any date (month & year view) from year 2012 and up till this month of this year. The 'next year' button on top should appear on all years from 2012 till the past year.
Actual behaviour
The 'next year' button appear from 2012 till one year before last year!

Datepicker version used
v1.7.1
Example code
datepicker(
      {
        format: "m/yyyy",
        startDate: '1/2012',
        endDate: '0m',
        startView: "months",
        minViewMode: "months",
        maxViewMode: "years",
        autoclose: true,
        language: 'ar',
        orientation: 'left',
        beforeShowMonth: function(date){
          var today = new Date();
          if(date.getMonth() == today.getMonth() && date.getFullYear() == today.getFullYear()){
            return {classes: 'month-highlight'};
          }
        },
        // todayBtn: true,
        // todayHighlight: true,
        disableTouchKeyboard: true
        }
    )

Suspecting this line? 'b' state?
this.picker.find(".prev").toggleClass("disabled",a),this.picker.find(".next").toggleClass("disabled",b)}}

So, I think I found a fix, not sure what the consequences are though.
In the updateNavArrows function, since my view mode is months so viewmode = 1
b is set to
b = Math.floor(d / j) * j + j >= h
subtracting one from d seems to have solved the issue, so the line becomes
b = Math.floor(d-1 / j) * j + j >= h
updateNavArrows: function() {
            if (this._allow_update) {
                var a, b, c = new Date(this.viewDate),
                    d = c.getUTCFullYear(),
                    e = c.getUTCMonth(),
                    f = this.o.startDate !== -(1 / 0) ? this.o.startDate.getUTCFullYear() : -(1 / 0),
                    g = this.o.startDate !== -(1 / 0) ? this.o.startDate.getUTCMonth() : -(1 / 0),
                    h = this.o.endDate !== 1 / 0 ? this.o.endDate.getUTCFullYear() : 1 / 0,
                    i = this.o.endDate !== 1 / 0 ? this.o.endDate.getUTCMonth() : 1 / 0,
                    j = 1;
                switch (this.viewMode) {
                    case 0:
                        a = d <= f && e <= g, b = d >= h && e >= i;
                        break;
                    case 4:
                        j *= 10;
                    case 3:
                        j *= 10;
                    case 2:
                        j *= 10;
                    case 1:
                        a = Math.floor(d / j) * j <= f, b = Math.floor(d / j) * j + j >= h
                }
                this.picker.find(".prev").toggleClass("disabled", a), this.picker.find(".next").toggleClass("disabled", b)
            }
        },

@kwagdy Thanks!
Please, check your problem on https://codepen.io/anon/pen/jGzowm?editors=1010.

Thank you actually :)! The code on https://codepen.io/anon/pen/jGzowm?editors=1010 now behaves properly in terms of year. But I see you've set the end date to '07/2017'

yet, I am still able to pick dates till this month "October" 10/2017

Something else broke!?

bump

repo: uxsolutions/bootstrap-datepicker


text:
Migrating from RPM to Kubernetes: Waiting for blank pod name to pull image

When running helm, the pod name was not available instantly after helm ran. This caused the migration to monitor the pod named ''.
Workaround was to suspend the process in the middle of Helm after it outputs the digest, giving it time to resolve before continuing - the pod name then gets picked up properly.
Debug output:
1:20PM DBG shared/utils/exec.go:50 > Running: helm upgrade -n uyuni --create-namespace uyuni oci://registry.opensuse.org/uyuni/server-helm --install --set ingress=nginx -f values.yaml --set images.server=registry.opensuse.org/uyuni/server:latest --set pullPolicy=Always --set fqdn=uyuni.i.hackerguild.com --set migration.ssh.agentSocket=/tmp/ssh-XXXXXXKrz1ro/agent.255003 --set migration.ssh.configPath= --set migration.ssh.knownHostsPath=/root/.ssh/known_hosts --set migration.dataPath=/tmp/mgradm-2307853567
Release "uyuni" does not exist. Installing it now.
Pulled: registry.opensuse.org/uyuni/server-helm:2024.7.0
Digest: sha256:901e88e997a109142de6f5b88966772570dd9ca0feb9ab1cc7d7b4781f98c174
W0818 13:20:59.982709  307290 warnings.go:70] unknown field "labels"
NAME: uyuni
LAST DEPLOYED: Sun Aug 18 13:20:57 2024
NAMESPACE: uyuni
STATUS: deployed
REVISION: 1
TEST SUITE: None
⠋ kubectl get pod -o jsonpath={.items[?(@.metadata.labels.app=="uyuni")].metadata.name} -n uyuni
1:21PM INF shared/kubernetes/utils.go:74 > Waiting for image of  pod in uyuni namespace to be pulled
1:21PM DBG shared/utils/exec.go:67 > Running: kubectl get event -o jsonpath={range .items[?(@.reason=="Failed")]}{.message}{"\n"}{end} --field-selector involvedObject.name= -n uyuni
⠋ kubectl get event -o jsonpath={range .items[?(@.reason=="Failed")]}{.message}{"\n"}{end} --field-selector involvedObject.name= -n uyuni

[repeats as the pod '' never exists]

Expected: If it gets a pod name of '', retry to get the pod name until you get a valid pod name - then continue.

Environment:

Harvester cluster with 3 nodes using longhorn
RKE2 cluster on top of openSUSE MicroOS
Manually created volumes to have some use different storage classes

Migration command:
mgradm migrate kubernetes uyuni.i.hackerguild.com --helm-uyuni-namespace uyuni --helm-uyuni-values values.yaml --logLevel debug
values.yaml
storageClass: "-"
matchPvByLabel: true
ingress: nginx
ingressSslAnnotations:
    cert-manager.io/cluster-issuer: letsencrypt-digitalocean

This looks like something I fixed before my vacation but is not merged in main yet.

PR merged

authors: cbosdo thothonegan

repo: uyuni-project/uyuni-tools


text:
Memory issue

Hello,
I am struggling to train the the network on the gen1 dataset, because of memory issues. From the graph of the system memory over time, there seems to be a memory leak: https://i.imgur.com/yvzEIiY.png . This might not be an issue when training on an A100 GPU, but my current setup of 4 Titan X:s can't seem to be able to train for more than 100 000 iterations. My wish is to train it for 400 000 iterations as in the paper, but I run out of memory at around 160 000 iterations. Also I have tried to resume from a checkpoint of 100 000 iterations, but it seems that the checkpoint is not logged on the wandb artifacts page, since I can only find the jobs and history of runs there.

Hi @ostromb
This issue seems to be about system memory, not GPU memory. Are you using exactly the same code (without modifications) as in this repository?

@ostromb could you resolve the issue?

@magehrig I apologize for the late answer, I have been sick. I managed to get train the model on 2 3090s, but the problem still persists on the Titan Xs. If you are interested I could send you the system plots for the training on both the Titan Xs and 3090s.

I could not replicate this issue. How much RAM do you have on the machine on which you can train and how much on the one that goes out of memory?

I assume the issue is solved, otherwise let me know

authors: magehrig ostromb

repo: uzh-rpg/RVT


text:
🛑 cryptraffic.de is down

In 2d017b4, cryptraffic.de (https://cryptraffic.de/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: cryptraffic.de is back up in 3da98c6 after 35 minutes.


text:
adnankarami

除非特殊情况，请完整填写所有问题。不按模板发的 issue 将直接被关闭。
如果你遇到的问题不是 V2Ray 的 bug，比如你不清楚要如何配置，请使用Discussion进行讨论。

你正在使用哪个版本的 V2Ray？（如果服务器和客户端使用了不同版本，请注明）

你的使用场景是什么？比如使用 Chrome 通过 Socks/VMess 代理观看 YouTube 视频。

你看到的不正常的现象是什么？（请描述具体现象，比如访问超时，TLS 证书错误等）

你期待看到的正确表现是怎样的？

请附上你的配置（提交 Issue 前请隐藏服务器端IP地址）。

服务器端配置:
    // 在这里附上服务器端配置文件

客户端配置:
    // 在这里附上客户端配置

请附上出错时软件输出的错误日志。在 Linux 中，日志通常在 /var/log/v2ray/error.log 文件中。

服务器端错误日志:
    // 在这里附上服务器端日志

客户端错误日志:
    // 在这里附上客户端日志

请附上访问日志。在 Linux 中，日志通常在 /var/log/v2ray/access.log 文件中。

    // 在这里附上服务器端日志

其它相关的配置文件（如 Nginx）和相关日志。

如果 V2Ray 无法启动，请附上 --test 输出。

通常的命令为 /usr/bin/v2ray/v2ray --test --config /etc/v2ray/config.json。请按实际情况修改。

如果 V2Ray 服务运行不正常，请附上 journal 日志。

通常的命令为 journalctl -u v2ray。
请预览一下你填的内容再提交。

usr/bin/v2ray/v2ray --test --config /etc/v2ray/config.json

usr/bin/v2ray/v2ray --test --config /etc/v2ray/config.json


text:
Refactor HolidayBase methods

Proposed change

Refactor HolidayBase::__init__() and HolidayBase::__str__() methods.
Type of change

[ ] New country/market holidays support (thank you!)
[ ] Supported country/market holidays update (calendar discrepancy fix, localization)
[x] Existing code/documentation/test/process quality improvement (best practice, cleanup, refactoring, optimization)
[ ] Dependency update (version deprecation/upgrade)
[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Breaking change (a code change causing existing functionality to break)
[ ] New feature (new python-holidays functionality in general)

Checklist

[x] I've followed the contributing guidelines
[x] This PR is filed against beta branch of the repository
[x] This PR doesn't contain any merge conflicts and has clean commit history
[x] The code style looks good: make pre-commit
[x] All tests pass locally: make test, make tox (we strongly encourage adding tests to your code)
[x] The related documentation has been added/updated (check off the box for free if no updates is required)

Pull Request Test Coverage Report for Build 5841925093

3 of 3 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 5788118002:
0.0%

Covered Lines:
9104

Relevant Lines:
9104

💛  - Coveralls

authors: KJhellico coveralls

repo: vacanza/python-holidays


text:
Task 5

Add two different Variable types and do the Add in final variable(by using Generic Variable type).

Added Task 6
Task: Assign the values(Fruits/colors) and write in Text file or Append the line.

Added Task7
Task: Assign Multiple values (Numbers) and display in the message box through index.

Added Task8
Task: Assign Multiple values (Names) and display in the message box through index.

Added Task 13
Task: Task: Extract the data from the vajrang.org and print the results in the excel.

Added Task 15
Task: Concatenate the first name, Middle name, Last Name from the input excel and writing the results into full Name Column.

Added Task 14
Task: Find the Max and Min from the list of Arrays.

Added Task 16
Task: Build the Data Table and write in the Excel.

@MaheshKaramala
Task -5
Code verified.
Task -6
Code verified.
Task -7
Code verified.
Task -8
Code verified.
Task -13
Code verified.
Task -14
Code verified.
Task -15
Code verified.
Task -16
Code verified.


text:
how to use the file icon from default theme?

In the default, the icon is the folder icon in the default theme.

but i want to use the last file icon, how to define it?

Hi @SamsonWorld
You just need to override background image position for js tree node. It would look like this:
.jstree-default .jstree-themeicon {
    background-position: -101px -70px;
}

You can use the special jstree-file class, just set the icon property in your JSON to:
...
"icon" : "jstree-file",
...

You can also use it in the types plugin too.
Best regards,
Ivan

authors: Muchiachio SamsonWorld vakata

repo: vakata/jstree


text:
Update sbt-tpolecat to 0.1.22

Updates io.github.davidgregory084:sbt-tpolecat from 0.1.20 to 0.1.22.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.github.davidgregory084", artifactId = "sbt-tpolecat" } ]

labels: sbt-plugin-update, early-semver-minor, semver-spec-patch, commit-count:1

Codecov Report

Merging #17 (85b4b5f) into master (492f338) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #17   +/-   ##
=======================================
  Coverage   60.42%   60.42%
=======================================
  Files          43       43
  Lines         609      609
=======================================
  Hits          368      368
  Misses        241      241

Continue to review full report at Codecov.

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

Superseded by #39.

authors: codecov-commenter scala-steward

repo: valentinHenry/blaireau


text:
Support for INFO MODULES

Modules can support the INFO ALL / INFO MODULES command by implementing a callback function that writes into the INFO command response.
The bloom module will need to track information such as: Number of bloom objects, and total memory used (bytes) by all the bloom objects.
This information can be added as a result into a new INFO section.
Example: https://github.com/valkey-io/valkeymodule-rs/blob/main/examples/info_handler_builder.rs#L9

Hi, I was wondering if this issue could be assigned to me. I created a PR that adds info support.

authors: KarthikSubbarao zackcam

repo: valkey-io/valkey-bloom


text:
Update readme.md for tooltip

it is missleading since this functionality was just implemented a few days ago

Current coverage is 85.62% (diff: 100%)

Merging #1178 into development will not change coverage

@@           development      #1178   diff @@
=============================================
  Files               35         35
  Lines             1280       1280
  Methods            228        228
  Messages             0          0
  Branches           213        213
=============================================
  Hits              1096       1096
  Misses             184        184
  Partials             0          0

Powered by Codecov. Last update eaba9ca...059654a

thanks!

authors: codecov-io danielnieto valorkin


text:
[Bug]: 文章摘要AI 异常

前置确认

[X] 我确认我运行的是最新版本的主题，并且安装了所需的依赖，在FAQS中也未找到类似问题。

⚠ 搜索issues中是否已存在类似问题

[X] 我已经搜索过issues和disscussions，没有跟我遇到的问题相关的issue

操作系统类型?
Mac/Linux
运行的Hexo版本是?
Hexo 7.0.0
你所使用的主题版本是稳定/最新?
稳定版（main）
问题描述 😯
祝问题是：概率性打开文章ai摘要没有任何输出，刷新一下就会正常。
终端日志 📒
No response

什么

就是打开文章 摘要没有任何输出，需要刷新才会正常输出内容

好

试试

authors: NiYa-Q efuo

repo: valor-x/hexo-theme-solitude


text:
Multi-token pop-up is not appearing a second time after the user tries to change the token on the enter amount page.

Frequency: 100%
Repro on build version: Android Internal Release Build V1.29.0, iOS Test flight Release Build V1.29.0
Repro on devices: iPhone 13 mini (15.1.1), Samsung Galaxy A9 Pro(8.0), iPhone 12(14.7.1), Samsung Galaxy F41 (11.0)
Does Not Repro on build version: Android Internal Release Build V1.28.1, iOS Test flight Release Build V1.28.1
Does Not Repro on devices: iPhone 12(14.7.1), iPhone 13 mini (15.1.1), Google Pixel 2XL(11.0)
Pre-condition:

User must have installed the application and completed the onboarding flow.
User must have multiple tokens balance in the account.
User must be on the enter amount screen.

Repro Steps:

Enter the amount in the field.
Tap on Select token pop-up and select the token.
Again enter the amount in the field.
Tap on select token pop-up and observe.

Bug: Multi-token pop-up is not appearing a second time after the user tries to change the token on the enter amount page.
Expected Behavior: Multi-token pop-up should appear second time when user tries to change the token on the enter amount page.
Investigation:

For request flow also multi-token pop-up is not appearing a second time after the user tries to change the token on the enter amount page.
When user clicks on the same Dapp section for second time pop-up is not appearing and same is also happening for recent Dapp section. Dapp.mp4

.Impact: Bad user impact as user is not able to select the token for the second time.
Attachment: Select Token.mp4

Hey @MuckT, We have verified the above issue on Latest Android Internal Release Build V1.28.1 & Test Flight Release Build and observed that the issue is fixed now. Multi-token pop-up is appearing a second time after the user tries to change the token on the enter amount page.
Devices: iPhone 13 mini(15.1.1), iPhone SE 2020(14.8.1), Google Pixel 2XL (11.0), Google Pixel XL (10.0)
Attachments: Select Token.mp4
Thanks..!!

repo: valora-inc/wallet


text:
refactor(IHL): use EOA to identify user for IHL (not MTW)

Description
Switches to EOA to identify users for IHL, rather than MTW. This allows us to use auth for IHL that is "more general" (aka the same that FiatConnect will use)
Other changes
na
Tested
automated tests pass
manual test passes (just went thru persona flow and made sure the link bank account steps page updated)
How others should test
na (behind feature flag)
Related issues

Fixes #2030

Backwards compatibility
na

Hey @MuckT  do we need to test the above PR as it is behind a feature flag, please let know us if we need to test it

authors: ValoraQA cajubelt


text:
Convert auto version bump CI script to shelljs to ensure error when steps fail

Description
As the title - we want the script (and therefore the workflow) to fail if there are any failures in the script. We had a silent failure last week that wasn't caught because the workflow showed a success result.
Other changes
N/A
Tested
N/A
How others should test
N/A
Related issues
N/A
Backwards compatibility
N/A

Hey @MuckT since NA is mentioned in how other should test section , we are skipping this PR
CC : @kathaypacific
Thanks.!

authors: ValoraQA kathaypacific


text:
Avoid duplicated code between the common config and the react config

on a side note, can't the react config inherit from the base file, just so that we don't have all this duplication?

I tried it at the beginning, but the order matters. There were settings from the common part that they need to go after some other parts from the react config.
Maybe a solution is to make it more module to avoid duplications

ah ok, yeah that makes things a bit more complicated. maybe then only for parts that don't depend on the order like the rules?
Originally posted by @FlorinSenoner in https://github.com/valtech-ch/eslint-config/issues/6#issuecomment-838114030

Fixed in #8

repo: valtech-ch/eslint-config


text:
BUG : Wrong Twitter logo

there is previous twitter logo which was bird , change it with the new logo with twitter,i.e, X

pls. assign me this issue , I'll complete it quickly

Thank you sir for assigning me this issue
I'll complete it quickly
pls. add the labels gssoc-extd and hactoberfest also

Thank you sir for assigning me this issue I'll complete it quickly pls. add the labels gssoc-extd and hactoberfest also

Okey 👍


text:
Use the latest & greatest SwiftPrometheus, and utilize Middleware

This is a pretty big diff and change in approach, so definitely open to feedback! 🎉
I'm a fan of plugging in Middleware (and didn't see discussion on reasons to avoid this pattern, but if there are happy to help document them!) and that enabled us to clean up a good chunk of code.
Note that we do lose host-level metrics as part of this, but we'll absolutely need to get rid of RuntimeTools/SwiftMetrics because of the conflict with the Logging module.

This looks like a sensible change to a Middleware-based approach. Are there plans for it to be reviewed/merged?

Thanks for the nudge! I think with 0.4.0 of SwiftPrometheus this should be ready for a review from maintainers 🎉

I only ask because I'm about to use it in a new project - thanks for your work 😀

@tonyarnold wanted to check in, were you having any trouble with this diff?

@Yasumoto no, I haven't! The setup for this branch is far simpler (and less intrusive) than the current release, so I'm 👍 on that.
I'd love to see this merged and tagged.
Segue: Can you recommend a service (or services) for actually collating and reviewing the metrics this spits out?

@tonyarnold If collating and reviewing == "View the metrics" then you'll want to setup Prometheus to scrape from the endpoint, then run a Grafana installation and set it up to query Prometheus as a data store.
This walkthrough looks right once you have both setup and are ready to hook them together.

Thank you, your advice is appreciated!

Thanks for the look!
@MrLotU I considered your great point about things like /posts/1, /posts/2 blowing up the cardinality of metrics, and backed that out so we're just tracking the top-level URL.
It's not ideal since we lose things like /blog/posts but I think for a default setup this is reasonable to catch the first pass.
As always, open to ideas!

Hey folks, I have been using this PR's branch locally for a bit in a Vapor 3.x project - I've updated today, and now I see:
SourcePackages/checkouts/SwiftPrometheus/Sources/Prometheus/Prometheus.swift:55:24: error: value of type 'ByteBuffer' has no member 'writeString'
                buffer.writeString("\n")
                ~~~~~~ ^~~~~~~~~~~

It looks like the change to the upstream URL of SwiftPrometheus may have caused this?
It changed from:
https://github.com/MrLotU/SwiftPrometheus.git with a version of 0.4.0-alpha.1
To:
https://github.com/Yasumoto/SwiftPrometheus.git with no version, but a branch of nio1

@tonyarnold So sorry for the trouble! What’s your Package.resolved look like for SwiftPrometheus and Swift NIO?
In theory that branch should be the same tag along with https://github.com/MrLotU/SwiftPrometheus/pull/17 rebased on top, but I must’ve accidentally included the wrong side. Very curious how I kept everything working locally after a rm .swiftpm despite this error..

@tonyarnold https://github.com/Yasumoto/SwiftPrometheus/commit/fe69dfa28f885360eb268ec8fa06c2243a845a26 should fix this up

No need to apologise - I know what “alpha” means 😉 I appreciate the hard work and time you’ve put into improving this library.

Status update: this PR is currently on hold and waiting for https://github.com/vapor/routing-kit/pull/80 and https://github.com/vapor/vapor/pull/2089

authors: MrLotU Yasumoto tonyarnold

repo: vapor-community/VaporMonitoring


text:
Reduce test time of 2 testcases

The following two test cases take up 99% of the execution time:

test_dht
test_name

Which won't help short development cycles in a DevOps cycle and fast CI/CD.
Let's see if we can make the two mentioned testcases faster.
Console output:
 3/10 Test #63: test_dht .........................      Passed  104.44 sec
 7/10 Test #67: test_name ........................   Passed   80.46 sec

Regards,
Melroy van den Berg

The bad weather test was out-dated with IPFS v0.20.0, thus removed. Which already helped quite a lot with the test_dht test

repo: vasild/cpp-ipfs-http-client


text:
Leverage TypeDB Cluster's database management coordination

What is the goal of this PR?
We have removed the workaround for TypeDB Cluster's database management operations. Prior to this PR, the client executes the operation on each server in the cluster.
In this PR, the client only goes to one server and let that server coordinate the operation to the other servers. This is made possible by leveraging the new database management coordination feature that has been implemented in TypeDB Cluster.
What are the changes implemented in this PR?

create, get, and contains calls go to any replica, but may optionally go to the primary replica.
delete call must go to the primary replica

Superseded by https://github.com/vaticle/typedb-client-java/pull/328

repo: vaticle/typedb-client-java


text:
private method for msg processing & ensure clear thread tag

Rspec passed!

👍

authors: rwadstein vaughanbrittonsage

repo: vaughanbrittonsage/eventq


text:
🛑 Exponential KH is down

In 6ec6620, Exponential KH (http://exponentialhost.com.br) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Exponential KH is back up in 05f2dd0 after 9 minutes.

repo: vbenincasa/upptime


text:
Alumnos_Presentaciones

Presentaciones de alumnos.

Presentación Eduardo Fletes y Fernando Arevalo
Uploading DP-Equipo2.pptx…

Se cierra issue tras acabar primera ronda de presentaciones.


text:
Can't access vdsm when connected to wireguard vpn

I have virtual-dsm installed on Fedora server edition. I also have a wg-easy wireguard vpn set up as a docker container. And lastly I have a traefik/whoami container, running on port 81. These 3 docker containers run on the Fedora host with bridged networking.
On my phone I connect to the wireguard vpn and then I can open http://192.168.1.250:81 (the whoami container) just fine, but dsm keeps timing out at http://192.168.1.250:5000.
If I assign port 5000 to the whoami container, it still works through the vpn, so the port itself is not the problem.
My docker-compose.yml:
services:
  dsm:
    container_name: dsm
    image: vdsm/virtual-dsm
    environment:
      DISK_SIZE: "16G"
      RAM_SIZE: "16G"
      CPU_CORES: "4"
    devices:
      - /dev/kvm
      - /dev/dri
    cap_add:
      - NET_ADMIN
    ports:
      - 5000:5000
      - 3322:22
    volumes:
      - /home/me/docker/virtual-dsm/dsm:/storage
    restart: unless-stopped
    stop_grace_period: 2m

I'm not sure if this is a virtual-dsm issue in the first place, but perhaps anyone faced the same issue?

I think it would be easier to install the Tailscale package from the Synology Package Center for example, and that way you have the VPN software inside DSM instead of from the outside.

Yes but I need to be able to access the dsm UI remotely, which is why I installed wireguard on the host.

It should work remotely when I’m connected to the vpn, right? I can access other docker containers on the host that way.

My brain wasn't working properly. I installed wg-easy as a docker container inside virtual-dsm and now I can access the UI on port 5000.
However, this only works if I assign an IP to the vdsm container with a macvlan network, as described in the readme.

repo: vdsm/virtual-dsm


text:
Take care of percent encoding related deprecations

The new way to do this is by specifying an NSCharacterSet with all the allowed characters. I used the correct ones where it was obvious in what part of an URL strings would end up, but in Widget.m, placeholders can be anywhere in the URL, so I used the generic alphanumericCharacterSet there.
Signed-off-by: Fridtjof Mund 2780577+fridtjof@users.noreply.github.com

Hi @fridtjof ,
Could we use the new [MXTools encodeURIComponent:] I introduced last week in the SDK.
I had issues when trying to use stock NSCharacterSet values from the iOS SDK so that I created our own, which is an iOS port of the javascript encodeURIComponent() method. This escaping method is used everywhere in riot-web, matrix-react-sdk & matrix-js-sdk to escape all part of an URL (path, query, param).

I changed all lines to use encodeURIComponent - ready for a review!

Thanks @fridtjof, have you tested your changes on:

permalinks to events, groups, etc
widgets like adding or removing some

Seems to work. I tested:

universal links coming from outside the app
permalinks
widgets

authors: fridtjof manuroe

repo: vector-im/riot-ios