How to train a single Lora with multiple people triggered by their names?

Hi there! I was wondering if it's possible to train a single LORA model to recognize and generate multiple specific faces or bodies of specific persons. For example, could one LORA model be used to generate both my own face and the faces of others based on their names? How to manage this with the trigger words?
I have a single dataset with all people tagged by its name and a short caption in the .txt files

please have some tries, and I mark here to wait an answer.

Hi, sorry, I don't get it @NBSTpeterhill what do you mean?

I also expect to get an answer, because many training parameters of ai-toolkit are not actually fully open.
So, I am curious too.

like this: https://huggingface.co/ptx0/flux-dreambooth-lora-r16-dev

For example, could one LORA model be used to generate both my own face and the faces of others based on their names? How to manage this with the trigger words?

You can train multiple triggers, each with its own set of images. The key is in the captions.  Repeat this for as much as wanted and find the limit, I think it should work.

You mean the trigger_word from .yaml file?
So I should train a LoRA with a set of images of a person and a trigger. Then, do a fine-tuning of this LoRA with another set of images and another trigger, and so on? Doing fine-tunings repeatedly? Or can I train the model all at once with all the images and set up multiple triggers at the same time?

ok, the yaml file only allows one trigger word. So, how to specify multiple in the same training?

And so on, each person has 100 images with its corresponding captions and each caption has the name of that person.
How to specify multiple triggers when training this?

Give this a try:

Combine all images and captions into a single dataset folder.
Set the trigger word to something like “photograph” or “photograph style.”
For testing, use a learning rate of 4e-3 and set the steps to 1000. (This is just for a quick validation to see if the idea works. Later, you should lower the learning rate and increase the steps for better results.)

Great @martintomov I am going to try it! You have clarified many doubts for me in a moment. Thank you so much!!

No worries. I hope it works out well. I’m curious too, so I’ll share my results using this technique tomorrow.

@davidmartinrius, here’s what I found—results are a bit mixed:
I ran a quick test with 1000 steps and a learning rate of 4e-3 to see if this would work. The dataset had 8 images and captions for Person 1 and another 8 for Person 2. I gave each person a specific name in the dataset and manually captioned the images.  Trigger word: Photograph
Person 1:

Person 2:

Results
Prompting each person separately:
Person 1 output:

Person 2 output:

Prompting them together:
Output 1:

Output 2:

Output 3:

Conclusion
It's pretty interesting that prompting each person separately works flawlessly, but it struggles when you combine them. This might be due to the small dataset, too few training steps, or the learning rate being a bit too high. I’d suggest trying it again with a larger dataset, a learning rate of 1e-4, and around 4000 steps (or more?) to see if that improves things. Also, check out bghira’s model on Hugging Face—he shared a link in a comment above, and the results are worth a look: Hugging Face - ptx0/flux-dreambooth-lora-r16-dev.
Another approach to consider is LoRA Merging. I’ve found it to be pretty powerful, though I’m still exploring it:
Trained model on this dress:

Trained model on this face:

LoRA Merging output:

I got bad results and I don't know why... maybe you could help me with this.
I used this dataset of 3 persons:
https://drive.google.com/file/d/1JLbaJbMJ_FRq4LXYrxyw4kzVYhHAT6gu/view?usp=drive_link
Each person has between 80-100 images. When training I just got blurry/noisy images like this one:

This is my config yaml
---
job: extension
config:
  # this name will be the folder and filename name
  name: "my_first_flux_lora_v1"
  process:
    - type: 'sd_trainer'
      # root folder to save training sessions/samples/weights
      training_folder: "output"
      # uncomment to see performance stats in the terminal every N steps
#      performance_log_every: 1000
      device: cuda:0
      # if a trigger word is specified, it will be added to captions of training data if it does not already exist
      # alternatively, in your captions you can add [trigger] and it will be replaced with the trigger word
      trigger_word: "photograph"
      network:
        type: "lora"
        linear: 16
        linear_alpha: 16
      save:
        dtype: float16 # precision to save
        save_every: 250 # save every this many steps
        max_step_saves_to_keep: 4 # how many intermittent saves to keep
      datasets:
        # datasets are a folder of images. captions need to be txt files with the same name as the image
        # for instance image2.jpg and image2.txt. Only jpg, jpeg, and png are supported currently
        # images will automatically be resized and bucketed into the resolution specified
        # on windows, escape back slashes with another backslash so
        # "C:\\path\\to\\images\\folder"
        - folder_path: "/workspace/ai-toolkit/dataset"
          caption_ext: "txt"
          caption_dropout_rate: 0.05  # will drop out the caption 5% of time
          shuffle_tokens: false  # shuffle caption order, split by commas
          cache_latents_to_disk: true  # leave this true unless you know what you're doing
          resolution: [ 512, 768, 1024 ]  # flux enjoys multiple resolutions
      train:
        batch_size: 1
        steps: 1000  # total number of steps to train 500 - 4000 is a good range
        gradient_accumulation_steps: 1
        train_unet: true
        train_text_encoder: false  # probably won't work with flux
        gradient_checkpointing: true  # need the on unless you have a ton of vram
        noise_scheduler: "flowmatch" # for training only
        optimizer: "adamw8bit"
        lr: 4e-3
        # uncomment this to skip the pre training sample
#        skip_first_sample: true
        # uncomment to completely disable sampling
#        disable_sampling: true
        # uncomment to use new vell curved weighting. Experimental but may produce better results
#        linear_timesteps: true

        # ema will smooth out learning, but could slow it down. Recommended to leave on.
        ema_config:
          use_ema: true
          ema_decay: 0.99

        # will probably need this if gpu supports it for flux, other dtypes may not work correctly
        dtype: bf16
      model:
        # huggingface model name or path
        name_or_path: "black-forest-labs/FLUX.1-dev"
        is_flux: true
        quantize: true  # run 8bit mixed precision
#        low_vram: true  # uncomment this if the GPU is connected to your monitors. It will use less vram to quantize, but is slower.
      sample:
        sampler: "flowmatch" # must match train.noise_scheduler
        sample_every: 250 # sample every this many steps
        width: 1024
        height: 1024
        prompts:
          # you can add [trigger] to the prompts here and it will be replaced with the trigger word
#          - "[trigger] holding a sign that says 'I LOVE PROMPTS!'"\
          - "a [trigger] of Carles Puigdemont with red hair, playing chess at the park, bomb going off in the background"
          - "a [trigger] of Rey Felipe holding a coffee cup, in a beanie, sitting at a cafe"
          - "a [trigger] of Reina Leticia as a DJ at a night club, fish eye lens, smoke machine, lazer lights, holding a martini"
          - "Photograph of Carles Puigdemont and Reina Leticia eating cake at a restaurant"
          - "a [trigger] of Rey Felipe with a bear disguise in a log cabin in the snow covered mountains"
          - "Reina Leticia playing the guitar, on stage, singing a song, laser lights, punk rocker"
          - "Rey Felipe with a beard, building a chair, in a wood shop"
          - "photograph of Carles Puigdemont, white background, medium shot, modeling clothing, studio lighting, white backdrop"
          - "a photograph of Rey Felipe holding a sign that says, 'I am the fucking king' as a gangsta in LA"
          - "a [trigger] of Carles Puigdemont, in a post apocalyptic world, with a shotgun, in a leather jacket, in a desert, with a motorcycle"
        neg: ""  # not used on flux
        seed: 42
        walk_seed: true
        guidance_scale: 4
        sample_steps: 20
# you can add any additional meta info here. [name] is replaced with config name at top
meta:
  name: "[name]"
  version: '1.0'

Great @martintomov I am going to try it! You have clarified many doubts for me in a moment. Thank you so much!!
you can also make subfolders in the main training folder where each subfolder name is the trigger of the sub-category. That would be the proper way of doing thins, tho' Im not sure how well the scripts have been optimized for such a thing, I'd have to check.

you can also make subfolders in the main training folder where each subfolder name is the trigger of the sub-category.

sounds promising, have you tried this approach?

you can also make subfolders in the main training folder where each subfolder name is the trigger of the sub-category.

sounds promising, have you tried this approach?

yes i have, otherwise i wouldn't have suggested it. One thing to watch out for is the number of images in the folder to be similar. Too much of a discrepancy and it might learn one thing better than the other.

you can also make subfolders in the main training folder where each subfolder name is the trigger of the sub-category.

sounds promising, have you tried this approach?

yes i have, otherwise i wouldn't have suggested it. One thing to watch out for is the number of images in the folder to be similar. Too much of a discrepancy and it might learn one thing better than the other.

do we need to change anything in .yaml if we want to do this? or would it still look like
 datasets:
        - folder_path: "/workspace/ai-toolkit/dataset"

where dataset folder contains two folders like model_a_training_data, model_b_training_data?

you can also make subfolders in the main training folder where each subfolder name is the trigger of the sub-category.

sounds promising, have you tried this approach?

yes i have, otherwise i wouldn't have suggested it. One thing to watch out for is the number of images in the folder to be similar. Too much of a discrepancy and it might learn one thing better than the other.

do we need to change anything in .yaml if we want to do this? or would it still look like
 datasets:
        - folder_path: "/workspace/ai-toolkit/dataset"

where dataset folder contains two folders like model_a_training_data, model_b_training_data?

Have you considered making loras for each person individually so they have their own trigger? Then use both loras when generating?
Otherwise I'm not sure your question is specific to this project, it is more of general training question. I suspect you are going to have a hard time training on images of multiple people unless you can create really good caption files that make it clear who is who, and figure out if that actually works.
Yes, you could train the entire set of images that contain both people and set the trigger to something more general like "photo" (with good captions), but I feel like you are going to get worse results than making multiple models/loras and combining them in some way during generation.

@WarAnakin

you can also make subfolders in the main training folder where each subfolder name is the trigger of the sub-category. That would be the proper way of doing thins, tho' Im not sure how well the scripts have been optimized for such a thing, I'd have to check.

This is supported and works? What do you set for the trigger_word then? Does it get ignored or somehow combined with he subfolder names? I haven't seen any documentation about it magically using subfolder names as trigger words that override the trigger_word in the config.

That would be the proper way of doing thins, tho' Im not sure how well the scripts have been optimized for such a thing

Maybe that would be the "proper" way, but is it actually supported in real life? I feel like the scripts either support it or don't, it probably isn't a matter of scripts being "optimized" for it. What are you basing this approach on? Did you find code that suggests this is a feature?

I'd have to check

So... did you check? I know you say you did this and it worked or you would not have suggested it, but it is not clear what you are basing this on other than maybe you tried something and assumed it is doing what you think it would.

One thing to watch out for is the number of images in the folder to be similar. Too much of a discrepancy and it might learn one thing better than the other.

TBH, it sounds like you just ended up training on the whole folder (with subfolders) and subfolder names had no impact, and that is why you have mixed results.
I'm not saying you're wrong, it is just very unclear where this advice is coming from so I'm skeptical. I would assume if this was an actual thing it does it would have been documented somewhere.
Are you just wishcasting this feature or can you point to some code that shows it is an actual feature?

@barnaclejive
Before using this tool, I used kohya, therefore I have a tendency to organize my folders in kohya's respective format ("repeats + instance + class." eg. "7_shakir tiger").
I have trained hundreds of different things for different purposes with datasets of all sorts and shapes. For example, everything you see on https://logodiffusion.com is running off of the models and loras i trained for that client.
Juggernaut SDXL is running off of the realistic base I trained for https://rundiffusion.com.
I'm not saying this with the intent to brag, but to give you an idea about the complexity of the datasets i usually work with.
When I said that you can use multiple subfolders in the main folder, it's not an accident, i've done that on purpose to check whether it works or breaks. Now the number of repeats don't work, this is not a feature currently supported in this tool.
Man, I feel like your post is more of an interrogation than anything else.

Maybe that would be the "proper" way, but is it actually supported in real life?

Yes, it should be a proper thing for the folder name to represent the unique trigger for that sub-category, otherwise you can just throw all the images and their respective captions in one folder and call it a day.

So... did you check? I know you say you did this and it worked or you would not have suggested it, but it is not clear what you are basing this on other than maybe you tried something and assumed it is doing what you think it would.

If i would've had the answer already, i wouldn't have said that i'd have to check in the 1st place.

TBH, it sounds like you just ended up training on the whole folder (with subfolders) and subfolder names had no impact, and that is why you have mixed results.

Yes, I trained on a folder with folder subsets and it correctly reported the total number of images without throwing an error and just proceeded as normal. Since it fetches the numbers from each folder, yes, at this point it is a matter of just further optimizing the scripts to make it perform the additional tasks because other than that the system doesn't mention anything now does it ?

TBH, it sounds like you just ended up training on the whole folder (with subfolders) and subfolder names had no impact, and that is why you have mixed results.

What I mentioned there  has to do with balancing out the steps when you are training on more than one concept, in order to control overfitting, hence why the number of repeats helps.

Are you just wishcasting this feature or can you point to some code that shows it is an actual feature?

Are you just wishcasting, blah blah blah, even if I was to wish cast this, yes, this would be a helpful feature now, wouldn't it ?!

So... did you check? <
This is supported and works? <
Does it get ignored or somehow combined with the subfolder names? <
can you point to some code that shows it is an actual feature?<

I was about to, but instead here I am with my back against the wall answering questions as if I owe any1 anything.
Jokes aside, you know very well we, people, do this as a hobby and lots of us have quite a lot to deal with. I wish there was 36hrs in a day and that i had 4 arms, but I'm just a human.

And no, other than the number of images this is all we get:

Now, I am going to look at the code and see what I can do. I've forked this repository so in case I make changes you will be able to see them (i already implemented polynomial as a scheduler), but I will come post here as well.

@WarAnakin
I'm not sure what your experience in other tools has to do with the question about this project at this time and in regard to the OP question.
So... is this feature, in this particular project, at this time, supported or not? That is really all the matters.

Yes, I trained on a folder with folder subsets and it correctly reported the total number of images without throwing an error and just proceeded as normal. Since it fetches the numbers from each folder

Yes, it probably does find all the images in the subfolders and knows how many there are in each. That isn't the question. What it does with that is what matters.

at this point it is a matter of just further optimizing the scripts to make it perform the additional tasks because other than that the system doesn't mention anything now does it ?

"it is matter of just..."? I will take that as a no. No, the system does not mention anything else. That was literally the OP question though and I think you have answered it now.
If your suggestion doesn't do what the OP asked, I'm not sure what the goal of your comment was. The way you presented your answer was as if this would do what the OP wanted, not "it could work but doesn't unless..."

even if I was to wish cast this, yes, this would be a helpful feature now, wouldn't it ?!

Yes! this would be a great feature. It would be awesome if it behaved like other tools in this way. I hope you will make it work and get it merged into the project.
My only objection is that you presented a solution to a question and your solution isn't a real thing at this time.

@WarAnakin I don't see any clarification of how to make it work properly. Please, as you are an expert, could you explain step by step how to train it with a dataset with multiple persons + an appropiate yaml configuration?
Thabk you!

@barnaclejive  I tried out as @WarAnakin suggested and it does not work.

@barnaclejive I tried out as @WarAnakin suggested and it does not work.

What did you try? What dataset? What configuration? This says nothing too

How many images per folder? What resolutions? How many steps? Learning rate?
I trained a model and it works when using folder names as triggers. People look 80% alike in my first training. I used all the default .yaml data except steps which was 3000. Since it was pretty close to the desired result I have now trained it up to 6000 steps.

How many images per folder? What resolutions? How many steps? Learning rate?
I trained a model and it works when using folder names as triggers. People look 80% alike in my first training. I used all the default .yaml data except steps which was 3000. Since it was pretty close to the desired result I have now trained it up to 6000 steps. I trained it with 3 different persons

around 32 images in both folders. 1024x1024. 2000 steps and 4e-4. how do you use folder names as triggers?

ok, I used 100 images for each person and a learning rate of 1e-4 (the default of the yaml file)
I didn't set any trigger in the yaml file, just did as @WarAnakin said: each subfolder name is the trigger of the sub-category.

ok, I used 100 images for each person and a learning rate of 1e-4 (the default of the yaml file)
I didn't set any trigger in the yaml file, just did as @WarAnakin said: each subfolder name is the trigger of the sub-category.

so it automatically knows to set the trigger of the sub-category based on the subfolder name?

Yes, exactly

Yes, exactly. But I also defined in each caption the name of the person. Like this: "A photo of person1, wearing a suit, bla bla" (separated by comma, the name if the first part always)
I am not sure if it is the appropiate way, but it worked

so you named the folder "person1" and added person1 in the captions right?

Exactly, and actually I don't know if it is working because of the captions , because of the folder name or both. But I did this way , yes

Hi guys, apologies for the delay, i had a bit of an eventful weekend. I will be able to take a better look at this tomorrow.

Exactly, and actually I don't know if it is working because of the captions , because of the folder name or both. But I did this way , yes <

It's working because of the captions, i have done the same experiment as you.
Although, it's not doing too much of a good job differentiating between multiple people and this is due to the text encoder not being trained.
Maybe, if it's possible, Ostris would consider to enable the clip_l to be trained in order to alleviate some of these issues.

T5 clip train use much more VRAM and time to really make useful, but always it will overfitting.
so, we should choose not use t5 train, or mark some blocks to train t5.
and I found "a male/female name is XXX" is better than "XXX, a male/female", in this method, XXX will not work or less work to be detected.


switch to @node-rs/argon2

https://github.com/napi-rs/node-rs/tree/main/packages/bcrypt

seeing argon2's performance, we're migrating to argon2


Update text regarding 'new parameterization of selectivity'

As discussed in #406, 'new' is a bit strong, so change it to 'Modified' in the text (have done for presentations), and maybe leave out of one-page summary since it causes alarm but is just a necessary reparameterization  that doesn't really have any bearing on results (first bridging plot).

Done in ec22ecb


CommandTag.RowsAffected() not working

Hello, I find it very useful to be able to spawn some rows using this lib, but I see that the CommandTag.RowsAffected() functionality is not implemented. Is there an easy way to somehow mock it?

Hello!  Any thoughts on how to implement this functionality?


cyfs-stack support NO-SN online

The purpose of the feature
If My device have statice-wan address(IPv4 or IPv6),I can let the EndPoint info on-chain and donn't need SN anymore.
Describe the solutions to the feature you'd like
cyfs-stack support NO-SN online

Currently, for OODs with a fixed public IP address (such as vood), the following mechanisms are in place to ensure maximum connectivity:

When activating the OOD, the WAN address and port are added to the OOD's device and registered on the blockchain. This way, when the protocol stack connects to the target device, it will prioritize using the WAN address and port configured in the device.

The gateway configuration on the OOD does not need to be explicitly changed, meaning the SN stays online. However, when the protocol stack starts, SN online status no longer blocks the stack startup (e.g., if there's some wrong with the SN server, the protocol stack will not be unable to start due to SN.wait_online). When necessary, connections will be initiated through SN.

When connecting to the target device with a configured WAN address, the protocol stack will first try to establish a direct connection using the WAN address. If it fails, it will attempt to connect again through the SN (if the device remains online on SN) and acquire the latest device for future use.

If the protocol stack fails to establish a connection using the device, it will try to update the information from the metachain once (for both the device and its owner). This is mainly to handle the following two possible changes:

The device's WAN address has changed, such as an external IP address change, and other devices' local cache is outdated compared to the metachain.
The owner's OOD list has changed, for example, if the device is no longer an OOD for the target zone. In this case, after updating the owner's information, the corresponding zone information needs

Complete at 1c4a58886bad3ba65552ef41ac4748316d874a18


navbar in the light mode has an uneven height

pls assign me this task

I am interested to work on this issue under GSSoC 2023 as a contributor


Runtime switching of ledgers

As a user, I'd like the ability to toggle ledgers on/off at runtime (i.e. after of Agent initialization). Currently ledgers must be enabled/configured when the Agent is initialized.

Isn't this something we want to hide from a user?  It's pretty obscure stuff.  If we have a list of ledgers, we can use multi-ledger to access all of them.
I can see having a "Developer Mode" flag that could be used to add some developer ledgers to the list, but I don't think this is something we want to expose to "human" users.
Or maybe I'm not understanding the implication of this user story.

Do you have an example of an use case? I agree with @swcurran that multi-ledger, as it is implemented now, is probably the best for most, if not all, cases.

Are there any situations where a wallet would connect to an issuer/verifier that's on a completely novel network than what is configured in the wallet?

Yes, it is conceivable that would happen.  But then you get into other questions -- like should the user connect to the other network?  Has anything been done to check if that ledger should be used?  Where is the genesis file for the ledger?
Until we get "did:indy", then we would only be in a situation that the ledger object was not found -- we still wouldn't know where it is.  The issuer would have to provide instructions on how to add the ledger.  Very ugly...
Once "did:indy" is there -- the identifier itself would name the ledger, so at least the wallet could have a chance at finding the genesis file, and providing a decent prompt to the user.

So long as there are no performance impact to configuring a few different well-known ledgers ahead of time this issue can be put on hold for now.

There is a significant performance impact with each added ledger as it needs to resolve the requested object from all configured ledgers. So you should definitely be mindful of which ledgers you support

I think this can be closed.


Change indentation to four spaces

Contrary to PEP-8, pyfakefs currently uses two space indentation.  There's plenty more contrary to PEP-8, but that's a topic for another day.
Perhaps using a tool like the formatter in PyDev:

Change only the white space to realize four space indentation and perhaps some other spacing or indentation goal
Do it in as few commits as possible, preferably a single squashed commit

I did this now while no PR was open and no-one working overseas to avoid any merge problems (national holiday here, so I got the time...).
Please check if this can be closed.

Magnificent.  Thank you.
Regarding committers, it's just you and me, Kid.  Where are you, by the way?

Ah, the quote sounded familiar, but I had to look it up... I'm in Bremen, as you could have guessed by my nick :) Which for some Americans, I have to explain as "the city where Becks is made" - but I guess I don't have to for you :P
Meaning that I'm 9 hours ahead of you, if you on the West Coast (or 7 hours behind while you are in Japan). I still lack some kind of communication channel on GitHub not issue-related, but I will just add comments to random issues like this one.
Thanks for getting out the pypi release - I understand that you didn't release 2.8 accidentally, as I was still waiting for that...
On another note:
Now that the release is out, I would propose to remove Python 3.2 from the travis tests - as it does not have the u literal for unicode like 3.3, some string related tests are quite awkward to write. Most of the encoding tests I did only for Python 3 for this reason, though they also should work for Python 2.6 and 2.7. Removing 3.2 from the tests does not remove 3.2 support, it would only mean that the tests could not be run under 3.2 (also, 3.2 is propably not used anymore). And we could add 3.6 (aka nightly) to travis.
I'm not so sure about 2.6 - it is end of life now more than 4 years, but I'm not sure if it is still used somewhere (and still will be with a new pyfakefs version). Would be nice to remove some 2.6 related workarounds to go ahead for better python 3 support.
And a final note, before this turns into a novel - even if it's just you and me, I will not go ahead and add changes (apart from some fixes) without discussing it with you.

I know Bremen suffered heavy bombing during WWII.  I believe there is a Japanese children's song about Bremen.  I think the children's song leaves out the air raids.
Red Hat Enterprise Linux 6 uses Python 2.6.  I do not know about RHEL 7.  Dropping Python 3.2 sounds relatively harmless, especially if it is getting in the way.

Interesting - I bet the song is about the Town Musicians of Bremen. So, no air raids expected there.
RHEL 7 uses Python 2.7, but I agree - let that wait until a later release. I added a PR with the other change (-3.2), also fixed a bug there in the new encoding stuff that surfaced after I enabled the tests for Python 2. The test for 3.6 failed as it could not find mox3 - I may check this later (or do you have an idea?)

I have no idea about mox3 for Python 3.6.  Earlier I was tempted to grab just the little piece I am using, but then we would have to maintain it.
Note that earlier I removed mox and replaced it with mock, which comes standard with Python.  It was a disaster so I had to move back to mox.

You are very observant, @mrbean-bremen , so I hope you noticed that pyfakefs.org will take you to this project.  It's a handy shortcut.

Yes, I noticed your change in setup.py and tried it out. How does that work?

I just bought the domain and pointed it at the project.  I make no personal claim to pyfakefs.org--I am just the custodian.

And now for something completely different - I had a look at the remaining issues (with the increased responsibility of a collaborator :P), there are only 4 left that are not fixed.
The scandir one shall be easy (it's practically a performance enhanced listdir), I could have a go at this if you don't mind.
The pathlib is a larger thing, I never used it and have no idea how heavily it is used at all and if it's worth it at all.
The "path is stubbed out to aggressively" maybe some configuration issue - as I understand it, you either can stub out uses of "from os import path" like it is now, or you don't do that so you can have your own path module. Maybe add the possibility to configure this?
The remaining one with pytest I haven't really looked into - never used pytest so far.
Any thoughts?

Great (about the bought domain)!

I would wait for more votes on pathlib.  Like you, I have never used it.
The "path is stubbed out to aggressively" is easy for the user to work around, and I think supporting  from os import path is more important.  Your idea of a configuration option is good.
In principle, PyTest is important, but I gave it a go when the issue first came up, and it was too gnarly.  A developer with decent PyTest experience would be the ideal candidate to fix this.  You and I, with our lack of PyTest experience, not so much.  Maybe we wait for our PyTest savior to save us.  That's what saviors do, after all.

Ok :) I will have a go at the scandir one somewhere this week, and maybe later at the configuration issue with the path import.


Add support to create Telemetry Logs (tlog) files

https://ardupilot.org/copter/docs/common-mission-planner-telemetry-logs.html
This is a common log file structure for analysis software.

I don't really know Ardupilot, but from what I've read in the docs you linked, I haven't understood the difference between the bin-log format and tlog. (Other than, that a log written by the FMU might have more/ other information, than what was transmitted via MAVLink.)
So asking a bit provocative: Why doesn't the bin-log format work for you? Mavlink-router should auto-detect the used flight stack and chose the format accordingly (see the Readme).

@jbeyerstedt telemetry log, or tlog, would be a dump of all the mavlink messages traversing that endpoint. You may want not to use binlog if your communication with the drone has limited bandwidth. In that case you are probably configuring the binlog to be saved locally in the drone to an external storage like microsd card, but it would still be nice to have all the communication with the GCS recorded.
All the GCSs I know of already  have the capability to record those, but IMO it's not a bad idea to have support for it in mavlink-router too.

I think, we misunderstood each other. It's clear for me, why I want to record logs to the SD card on the FMU. But what would be the difference between mavlink-router writing a binlog of the messages and a tlog? Is the binlog (and ulog) one file per system ID and the tlog would just be a dump of everything? Because regardless of the file format, it wouldn't have more information (set of MAVlink messages at their data rate) than what's sent by the FMU. So the content would be the same for all file formats, isn't it?
I'm definitely not against adding this feature, I'm just curious to understand, where the difference is.

@jbeyerstedt there are reasons not to stream the binlog over mavlink. Notice that in this case mavlink is the transport for another format. On pretty good reason for not enabling binlog (or ulog if talking about PX4) is that it takes up considerable bandwidth on that link. Since you are more familiar with PX4, back in the time when I was working with it, any baudrate below 384k would cause dropped packets and incomplete log.
It's also not negligible on the flight controller side the additional delay introduced for handling those messages.
So, I think that having an option to save the tlog is useful for those not enabling the binlog/ulog stream over mavlink.

OK, thanks. I wasn't aware, that the current log implementation is actually requesting another data stream from the FMU. Somehow I expected, that mavlink-router is just logging the messages, it receives anyways. (At a second thought, it obvious, because the ulog is actually logging uORB messages instead of MAVLink.)
So the requested tlog feature is actually what I expected to be be implemented already. Thanks for getting this straight in my head.

Check https://github.com/mavlink-router/mavlink-router/pull/269, I would like for some feedback about how to deal with tlog in the command line interface and what should be the best way to accomplish it with ulog and binlog.


Add API limitations to readme documentation?

If some folks are like me, they don't bother to read the Spotify Endpoints for each call. Would it be helpful for me to go through the read me and thoughtfully add comments for different limitations? This like how you can only follow 50 artists at a time and the default playlist fetching is 20 playlists but can be increased to 50 etc.

Yes, this would be something useful. Even throwing errors if limits are exceeded or, ideally, handle collections transparently within the wrapper.
Unfortunately this is not supported at the moment, but let's keep this ticket open for reference.


📝 docs: Update documentation and metadata in various files

This commit updates metadata and documentation in several files:

.changelogrc.js: Update displayTypes and titleLanguage properties
.dumirc.ts: Update themeConfig's title and description properties, as well as the footer text
CHANGELOG.md: Update section headings to use conventional commits specification
docs/index.md: Update hero section's title and description properties, as well as the "Get Started" link text
package.json: Update the package's name and description properties

These changes do not fix a bug or add a feature, nor do they introduce any breaking changes.
💻 变更类型 | Change Type

[ ] ✨ feat
[ ] 🐛 fix
[ ] 💄 style
[ ] 🔨 chore
[x] 📝 docs

🔀 变更说明 | Description of Change

📝 补充信息 | Additional Information

:tada: This PR is included in version 1.3.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Disjoint axioms problem

SO, by following the all combinations approach we kinda messed something up. For instance,
meat(x) --> animal(x) is in our taxonomy, yet we also have the disjoint axiom of
meat(x) --> not animal(x).... DERP
Need to clean it so the subclasses aren't disjoint with their superclasses. Problem is there are like 4000 of these axioms.
Second problem is that when we need to have individuals be disjoint with each other the text file is going to explode. Adding the pairwise disjoint rules for ~65 classes added about 11k lines... imagine what'll happen with +300 individuals....

So just for fun I added disjoint of instances of products and farms...
I stopped letting the program run when the text file hit 5GB, it showed no signs of stopping...


WIP: Add weight tables for BTI

Someday we should support this.

This pull request fixes 1 alert when merging 3144e043fd94745a99d6cdb5ad65c6404c02c1d7 into b757ff19c5556e328111661a304d46dff279d818 - view on LGTM.com
fixed alerts:

1 for Unreachable code

Comment posted by LGTM.com

I'll close this, we already have XXX in the code (and a coverage problem there) so I think it's discoverable enough


Factorize RSA modulus N

Currently, on RSA 4096, the public modulus n is 1233 (decimal) characters long.
Given that every node has a public modulus, when sending such information over the network, it becomes very bandwidth consuming.
To avoid this problem, we should factorize n such that simple pseudo-math-code can be used to reconstruct it.
For instance:
n =<PHONE_NUMBER>96715529791149
# A factorization in pseudo-math-code of ``n`` could be:
n = "21^18+1588"
# Therefore
n = 21 ** 18 + 1588 =<PHONE_NUMBER>96715529791149

Another way of solving this issue (the one currently being implemented) is to increase the base used.
Experiments show that we can achieve a reduction from 1233 (b10) to 627 (b93) characters - so a compression of about 53% !


A first pass at a readme + github icons

I have setup Arcana.io locally through some trouble due to lack of documentation. Hopefully this will be better for any future developers. The readme could be prettier of course.
I also added links to the github for sidebar and footer. It's not much, but I think it's a gentle introduction for me.
I was not able to:

Get Algolia working. It didn't seem to pick up on my values in my .env - I commented it out as I guess I don't really need the search for now.
Have the Full SRD DB, A dump would be v appreciated

On second thought, I guess I can probably use the login in my .env for point 2

Replaced by #17  so that i can keep my fork's master clean


AM/PM Keyboard Selection Not Triggering onChange

When selecting AM/PM using the keyboard (by selecting A or P) changes the date in the field but does not trigger the onChange callback. Using the up and down keys work fine just not when using A and P.
I think this part of the code probably needs to trigger an onChange callback: https://github.com/flatpickr/flatpickr/blob/master/src/index.ts#L1754
Your Environment

flatpickr version used: 4.6.3
Browser name and version: Chrome, Firefox, Edge (latest)
OS and version: Windows 10 and Mac OS 10.15.5

@kalinchuk, did you ever find a solution to this?

Just coming full circle, we ended up using the onValueUpdate hook. You may also need a conditional to break out of the infinite loop that updating the state fire the hook again.


Fix scaling twice error

Modulus Pull Request
Description
In PR 373 an error was introduced by scaling x twice. This PR fixes it.
Checklist

[x] I am familiar with the Contributing Guidelines.
[x] New or existing tests cover these changes.
[x] The documentation is up to date with these changes.
[x] The CHANGELOG.md is up to date with these changes.
[x] An issue is linked to this pull request.

I'm going to close this PR and open a new one. I think this will be more efficient.


Catch termination signal

In order for termination signal to be captured, two goroutines
are created which handle TLS keypair reloading and HTTP server
instantiation.
Signed-off-by: Kennelly, Martin<EMAIL_ADDRESS>Fixes: #48

I want to update this patch to make it easier to test.
I will add test cases.

I want to update this patch to make it easier to test.
I will add test cases.

A lot of changes here I know. I improved the test coverage to 33%. I am hoping to add e2e tests in a separate PR using kind and this will help validate this patch.

@zshi-redhat Do you still see value with this patch? I was going to push for it once E2E test cases got to a sufficient level where we can do regression testing of the features. @MichalGuzieniuk is working on adding these right now.
I want this patch for the following reasons but it will need to be reworked to accommodate your user defined injections work but that is no biggie once we have tests for it.
Reasons:

NRI will catch term signals - currently it doesn't handle them.
NRI will end if HTTP server fails - currently nothing happens if it fails.
NRI will end if keypair reloader fails - current we just keep retrying.
Improved unit test coverage from ~20% to 33%
Improved separation of code instead of it all bundled into webhook.pkg. We need to stop that going forward imo.

I propose adding user injections golang routine as well and if it fails, NRI should end, and be re-provisioned.
Anyway, Its up to you if you see any value with this patch long term. Let me know when you have time. No rush as I think its good to fix the existing problem with user injection first, and increase the e2e test cases (thanks to @MichalGuzieniuk ) to ensure we have regression testing when this major change occurs.

@zshi-redhat Do you see value with this patch? I was going to push for it once E2E test cases got to a sufficient level where we can do regression testing of the features. @MichalGuzieniuk is working on adding these right now.

+1, yes, absolutely.

I want this patch for the following reasons but it will need to be reworked to accommodate your user defined injections work but that is no biggie once we have tests for it.
Reasons:
* NRI will catch term signals - currently it doesn't handle them.

* NRI will end if HTTP server fails - currently nothing happens if it fails.

* NRI will end if keypair reloader fails - current we just keep retrying.

* Improved unit test coverage from ~20% to 33%

* Improved separation of code instead of it all bundled into webhook.go. We need to stop that going forward imo.

I think these are positive moves.
I had the same idea of separating giant webhook.go into multiple files, didn't get chance to implement it :-)

I propose adding user injections golang routine as well and if it fails, NRI should end, and be re-provisioned.

User-defined-injections is an optional feature for now, We probably don't want to end the NRI process for the absense of configMap or so.

Anyway, Its up to you if you see any value with this patch long term. Let me know when you have time. No rush as I think its good to fix the existing problem with user injection first, and increase the e2e test cases (thanks to @MichalGuzieniuk ) to ensure we have regression testing when this major change occurs.

Thanks for working on these improvements!

@martinkennelly Would you mind rebase this PR? Thank you!

Closing this as I don't have time to work on it. Anyone feel free to carry it on.

@martinkennelly if you don't mind I will take codebase done by you in this PR, make the rebase and I will continue work on it.

@martinkennelly Don't mind at all. I got stuck continuously refactoring NRI with this PR. Here is the outcome: https://github.com/martinkennelly/network-resources-injector/commits/refactor_webhook
The refactor went too far and I was concerned with that... I hope you can do a better job limiting the refactor scope than I did..
I think that refactor is good long term, just the scope of changes...

I converted everything into services which could be watched, killed.  I separated out all the code into pkgs as well.


a bug(version: 1.0.0)

node_modules/grunt-contrib-imagemin/tasks/imagemin.js
61line:     var diffSize = origSize - data[0].contents.length;
it can't run
fiexed:
change: var diffSize = data.length ? (origSize - data[0].contents.length) : 0;

Ref https://github.com/gruntjs/grunt-contrib-imagemin/issues/344#issuecomment-171582523 - should be fixed with the vinyl-fs 2.3.1 release I just published.  Make sure to update your dependencies completely.

thank you very much!

close this?


An updated package

Due to the lack of maintenance of the halogen repo, I migrated all the code to a new repo and added some more spinners, i didn't realize this repo existed. For anyone who is interested, come check out my version. I'll be actively maintaining it.
Demo: http://www.davidhu.io/react-spinners/
Github: https://github.com/davidhu2000/react-spinners

Hi @davidhu2000
I just check out your package and seen that ClimbingBoxLoader makes you feel nervous. That's happen because you getting back the box and creating feeling like whole thing is broken and trying to initialize again and again, instead of creating another one and climbing that one too to create feeling that something works as expected right now. Check it out, maybe it needs to be fixed. Anyway, looks good to me, I leave this issue open for now, but also glad to see PRs here by anyone including you :)


Please Review "Configuration Syntax" Descriptor on Database Target

https://github.com/nlog/NLog/wiki/Database-target
This is my first github contribution, so please excuse if I am incorrect, however this looks like someone did a find and replace resulting in the word "Layout" being inserted in a bunch of incorrect places on this page.
For example, Line 4:              dbUserName="Layout"
Hope that helps.
Edit: I just checked history, and there have been several edits, none of which changed these fields so they must be correct and I probably just need to understand better. Closing issue.

Hi,
Just to respond.

I did not see any changes you have made to the link? (the wiki has also version control).
The difference between a string and layout: a layout can contain layout renders, like ${message} and those layout renders will be replaced when rendering. In the (xml) configuration it's just a string.

If you need some help, just let us know :)


2i updates for the student finance calculator

Expanding linked text and some minor rephrasings for clarity

Thanks, I've merged it manually to the tt_student_finance_calc branch via https://github.com/alphagov/smart-answers/commit/08a7f7b77b0989418a54b98765bebc12c8382dc1


Init static site starter repo

Acceptance criteria:

Uses Eleventy
Has link to Storyblok
Base is set up:

Connected with Storyblok
Uses one component
Component is shown on page

Is deployed to a live environment (Now/Netlify)

✅


LEGO: Pull request from lego/hb_04604851-bac4-4681-9f74-73de611d6e48_20220713153854779 to main

LEGO: Pull request from lego/hb_04604851-bac4-4681-9f74-73de611d6e48_20220713153854779 to main with localized lcls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 44.324%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
31534

Relevant Lines:
65991

💛  - Coveralls


Core: Touch event xDelta and yDelta Fixes

Addresses #269

I am worried about this one... It would break existing games, wouldn't it?

Well it has to due to that event.xDelta and event.yDelta were implement wrong it is most likely they were ignored.
It is important to note the relatively new addition (xDelta and yDelta were added back in 2019)
It is possible that handful of people used the delta value and worked around the wrong values.
Either was the values are wrong. I would argue that this fix does way more good than harm

Also I scanned all 44 cases publicly available games on Github and non of them should be affected by the change. It will mainly affect games that have implement a crazy workaround get xDelta/yDelta

Ok. I'll test an merge then

^Figured out there is a much simpler way to implement, also here attached a demo project you can test with, should compare the values
assets2.zip
print("Correct Delta x and y values:")
local dx = event.x - event.xStart
local dy = event.y - event.yStart
print( dx )
print( dy )
print("Delta x and y values:")
print(event.xDelta)
print(event.yDelta)

Any updates on this pull @Shchvova :) ?


Only some columns loading

Was working great until now but just this morning it fails to load many of the user profile columns I have setup that were loading fine yesterday.  Tried updating to newest 2.0.5 version and still only loads some of the user profile columns and many are left unpopulated?

Duplicate of https://github.com/dimdenGD/OldTweetDeck/issues/34

Released new version, update!


Attributes Parameter in Test Generation Script

I noticed that the attributes paramater of the scripts.generate_parser_test_files script, does not work properly or at least does not work as the others do. I updated this to have the default syntax which requires the user to input the parameters:
--attributes attr1 att2 attr3 or -a attr1 attr2 attr3

Hey, @addie9800. That's intended, but one may argue that it wasn't a good solution in the first place ;) I support these changes.


chore: Standardize and unify SDK versions across packages

Description
This does two things:
Use double quotes for SDK constraints
Standardize the usage of single or double quotes to specify sdk constraints across pubspecs
I see no reason this should not be kept consistent
I also see no reason to prefer one over the other, so I searched the code base and there are 7 instances of single quote vs 32 of double quotes, so I favored the later
Update all SDK constraints to 2.18
Let me know if there are any issues with it, but I believe we should keep this consistent across all packages.
Also there is a pubspec on root which imply all should be on 2.18 anyway.
Checklist

[x] I have followed the Contributor Guide when preparing my PR.
[x] I have updated/added tests for ALL new/updated/fixed functionality.
[x] I have updated/added relevant documentation in docs and added dartdoc comments with ///.
[x] I have updated/added relevant examples in examples or docs.

Breaking Change?

[ ] Yes, this PR is a breaking change.
[x] No, this PR is not a breaking change.

It is double quotes. At least for me


How to format numbers to Accounting format?

From issue #80 ,I know how to format numbers to currency , but how do I format them to Accounting format? Thanks!

(pic from #80)

Thanks for your issue. This library not support set Accounting number format currently. I will consider to add this feature later and also welcome to contribute to this project.

Sorry for my so late reply. Excelize support set custom Accounting number format, for example:
f := excelize.NewFile()
if err := f.SetCellValue("Sheet1", "A1", 100); err != nil {
    fmt.Println(err)
    return
}
fmtCode := `_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)`
styleID, err := f.NewStyle(&excelize.Style{CustomNumFmt: &fmtCode})
if err != nil {
    fmt.Println(err)
    return
}
if err := f.SetCellStyle("Sheet1", "A1", "A1", styleID); err != nil {
    fmt.Println(err)
    return
}
// Save spreadsheet by the given path.
if err := f.SaveAs("Book1.xlsx"); err != nil {
    fmt.Println(err)
}

I'll close this issue, if you have any questions, please let me know.


Delete icon components 🗑

Until now we have been exposing a few components that were in charge to render SVG icons.
However, this was far from providing a proper icon system, hence we've decided to remove them and use font-awesome for iconography internally at Zopa.
Hence we need to delete as part of 3.0.0:

<Alert />
<Arrow />
<CheckMark />
<Chevron />
<Hamburger />
<Profile />

and the "Icons" section in our live documentation. We'll also need to replace/inline any icons used in other components ( <Navbar />, <AlertBox /> ) ...

Closing as this seems to be done already


Update cameraManager.ts

As I said, @Ahuge already got this working in one of hush branches which we be merged when its done :)

hello @filfat, i'm just trying to help.
(Sorry inglês)


FIX ClaimInfo unit tests

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Fixes ClaimInfo unit tests
Does this PR introduce a user-facing change?

NONE

/assign @pohly

Thanks! Let's merge when all tests in that directory are done. Otherwise it's harder to verify that the proposed changes work (one has to delete manager_test.go first).

ok, i'll add manager test fixes to this PR.


feat: code editor support for dark them

adds support for dark theme to the code editor
fixes toolbar rounding

Hi,
this is a necessary addition, indeed. However, rather than binding that behavior to a hard-coded CSS class of the main editor, I would rather expose the theme as a parameter for the diffSourcePlugin. Let me know if this makes sense. If not, I'm going to get to that quite soon.

Hi @petyosi, I will not be able to work on this in the short term. Please go ahead when you can

Hi @sravimohan and @petyosi, I made the fix in the branch : https://github.com/mdx-editor/editor/pull/141. I really need it for my current app x)

@sravimohan - let me know if the approach I've taken works for you. Thanks!


SimpleTagalong not working on Hololens in Unity 2017.3.1

Overview
The SimpleTagalong works in the Editor + in the Unity Holographic emulator (both modes).
But not when deployed on device. Its a Unity bug in GeometryUtility.TestPlanesAABB
which returns always true when running on the device. I noticed this on 2017.3.1 not before.
I post this here because i propose to remove the unitys TestPlanesAABB and use the
MathUtils.TestPlanesAABB from MRTK. Replacing the unity function with this one i got it to work again.
Expected Behavior
Should tag along
Actual Behavior
Does not when running on Devie
Steps to reproduce_
Just run the HoloToolkit sample SphereTagalong and replace with SimpleTagalong
Unity Editor Version
2017.3.1
Mixed Reality Toolkit Release Version
2<IP_ADDRESS>

I have the same problem with Unity 2017.3.0 and the Holotoolkit 2<IP_ADDRESS>, someone found a solution ?

Closing issues older than 180 days. If this is still an issue, please reactivate with recent information.


Disable '@typescript-eslint/consistent-type-imports rule

In the latest Vite setup, it requires us to use import type { ... } for type only import but '@typescript-eslint/consistent-type-imports removes all of them. So, it's type to disable this rule I guess.

We shouldn't disable the rule, rather, remove the preference currently set to 'no-type-imports' 👍


error while creating the project

I am getting below error while creating the project
Error while creating release definition: Tasks with versions 'Replace tokens in terraform file:5., Install Terraform 0.12.3:0., Terraform : init:2., Terraform : plan:2., Terraform : apply -auto-approve:2.*' are not valid for deploy job 'Agent job' in stage Dev.

Please install the required extension from the marketplace.
If you are running Demo Generator on a brand new organization, please enable the Third-party application access via OAuth under  Organization Setting >> Policies

Run the demo generator again and try to install the extension needed by the template.
Thanks


TDR-3680 - Clean up old validation code

Clean up old validation code as we will be using only metadata validation library now

Thanks, looks good. Just some minor comments and a question regarding the caching.
If we add/remove fields from the form will the users see these changes since the cache never expires?

Yeah, it should work because I have done the caching over the custom metadata, not the user data so it should work.


Add README

@FrNecas I've tried to incorporate your suggestions and also made some small design changes.

I've made some more changes, @FrNecas could you take a look?


Rewrite of  editorSetScxScy and editorScroll

Rewrite of editorSetScxScy, editorScroll and editorDrawRow

PR #36 implemented toggle-truncate-lines. In doing this I introduced bug/s which manifest when you display of very long lines in wrapped mode: you can't get to the last line of the file with down arrow or M->. Page up/down work perfectly though and exactly the same as Emacs. Trying to fix this I got the distinct impression that I was overcomplicating things.
I decided the best approach was to:

retreat to code that was there before PR #36 for the case that the lines are wrapped and in  each relevant function have an if (truncate_lines == 1). Therefore @japanoise when you review this PR, compare to the version of main.c that you had before PR #36 - commit 40a7316. Then you will be able to follow more easily how toggle-truncate-lines code is introduced.
Do the Emacs style page up/down later: the emsys page up/down advances the cursor a whole page which  is not correct: the cursor should only move as much as need be to appear in the new page. But I will do that later once we have settled down on toggle-truncate-lines and made sure it is all ticketyboo. Enhancement #40.

@nicholascarroll anything more to do here?


re-using video_player in iOS

Hi,
I am having issues with the current video_player plugin. I am trying to display the videos recorded by the camera plugin. When I first display it, it is no problem. If I retake the video, more memory is leaked(not freed from OS). after 3-4 iterations, the app crashes. I test with an iPhone 7. When I use camera preset max the app crashes quicker.
I saw you stating:
Do not use:
_controller.dispose();
_controller.initialize();

//The app will crash very soon if you do this

So what should I do to display different VideoPlayer data sources from local files? What do you suggest? I would have used this repo however I need to solve this issue on iOS.
I am open to all suggestions.
Thanks.

Come on, this problem is related to the fact that video_player does not accept changing the videoSource directly, without having to destroy / build the component.
If I had knowledge I would make this same PR work on IOS.
But I have 0% experience in IOS.
Why don't you create two widgets.
Widget 1: Lists the videos that will be played.
Widget 2: The screen of the video to be played.
When a user chooses to play video 1 you build WIDGET 2.
When he clicks on another video, you destroy widget 2 and create it again with
new assignments.
That way you won't have to change the VideoSource and you will build the video_player
whenever the user needs to watch a video, be it local or external
I believe it would work, but you need to make sure that you are destroying and building the component


[BUG]

Description

In which platform does it happen?

How do we replicate the issue?

Expected behavior (i.e. solution)

Other Comments

https://github.com/microsoft/computervision-recipes/issues/602


The styles on the category running total were not being applied on in…

…itial page load. This corrects that.

Added a new commit that makes the onchange of the extra credit checkbox also affect the total, as well as removing a category.

I've noticed a bug in the category delete behaviour, it always deletes the last item in the list - I'm planning on fixing this in this PR so just hold off for now.
@payten can you confirm this?

OK this is good to go now. Fixed a bunch of other issues so that the listview should now be working correctly.


Scale ceph pod respin test while loop is not exited.

Production pipeline job continued to for more than 4 days due to while loop didn't exited from Scale test.
https://ocs4-jenkins-csb-odf-qe.apps.ocp-c1.prod.psi.redhat.com/job/qe-deploy-ocs-cluster-prod/9102/consoleFull

Issues Observed:
PVC not reaching Bound state due to issues in environment like Ceph Cluster health not in good shape
POD not reaching Running state due to lack of resources for running pods in cluster
In above scenarios TC while loop is continued till it creates the required number of resources(PVCs and PODs) in the cluster, due to this TC continued to execute for more than 4 days.
In the PR will be adding a iteration counter to terminate the while loop.


refactor: review normed group structure on ContinuousLinearMap

Move parts of the proof of "two uniformities are equal" up while generalizing it.
Also add a ContinuousConstSMul instance that needs less assumptions than ContinuousSMul.

bench!

bors d+
Nice!  If there are no performance issues, please merge.

!bench


Different host for Redis

Hi,
RedisHealthCheck is always failing because my redis is in another host, and the test only checks the default host: <IP_ADDRESS>. Is there a way to set a redis host to HealthCheck?
Thanks

Not currently, but I put a comment on #62 about implementing a config.options so options could be passed to tests. Do you want to submit a PR with this change?

I've opened a pull request for this issue https://github.com/ianheggie/health_check/pull/65

Thanks @archana-juvo! - I have merged that PR.


Changing the namespace should not redirect to the dashboard when selecting a pod

If you open a list of resources (one Pod in the Pod list), and then one specific item, and you change the namespace, it goes into the Dashboard instead of the list of resources.
For other resourcesm, like ConfigMap, it works as intended

I cannot reproduce this. I see that I'm redirected to the "Overview" tab only if the newly selected namespace doesn't have any resource of that kind.
We're basically filtering kinds that do not exist in the left menu. Maybe that's the confusing part?
We could show all resource kinds in the left menu at all times, even if they don't have any resources.
Is that what you'd like to see? @chargio


docs(contributor): Added derrickhnguyen as contributor

:tada: This PR is included in version 16.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


x/tools/cmd/godoc: improve accessibility

This is a meta issue for improving the accessibility of godoc.

[ ] need hover/focus styles for buttons and button-like links (easy, but requires design)
[ ] insufficient contrast on date stamp for blog entries (easy)
[ ] malformed definition lists (easy)
[ ] embedded playground buttons not in focus order (easy)
[ ] Mobile menu needs better keyboard and screen reader support (moderate)
[ ] missing lang on html tag (difficult)
[ ] UI exposed by -analysis=pointer,type inaccessible by keyboard and screen reader (very difficult)
[ ] expanding/collapsing section inaccessible by keyboard (difficult, in progress)
[ ] expanding/collapsing sections announce state glyph but not state (difficult, in progress)
[ ] insufficient contrast on default focus ring for top level menu
[ ] links can only be identified by color https://golang.org/cl/69150
[x] missing label and submit button on search form https://golang.org/cl/69190
[x] insufficient contrast for placeholder text in search form https://golang.org/cl/69190
[x] permalinks are insufficiently labeled https://golang.org/cl/69210
[X] images without alt attribute https://golang.org/cl/69130
[x] package docs skips heading level 3 https://golang.org/cl/69171

If you discover an issue not in the above list, please report it here so that it can be addressed.
If you want to help out and aren't sure where to start or just want to make sure that tools you create are as accessible possible, see (or update!) WebAccessibilityResourcesAndTips on the wiki.

I created a wiki page for anyone who wants to help out or to make sure that tools they create are as accessible as possible: https://github.com/golang/go/wiki/WebAccessibilityResourcesAndTips

@jimmyfrasche IMO the underline effects in CL 69150 makes the docs look messy, especially in the package table of contents.

@bontibon The purpose is to distinguish between clickable and not clickable elements. That means having to distinguishing them by both shape and color. This helps users who have trouble seeing certain colors, a monochrome display, and new users who haven't acclimated to the fact that you can click "func Count(s, substr string) int" but not "Package strings" despite them both being the same blue.

I find the underlines fairly hard to read. Perhaps we should keep the underline, but make it an opacity of 30% or something.

cc: @rsc
I strongly agree with @bontibon: This new look is quite ugly in my mind. When we started on godoc, we made the deliberate decision to not have the underlines. Also, all the section titles now have a paragraph symbol at the end (see e.g. https://tip.golang.org/doc/). Overall, the graphic quality of golang.org has deteriorated significantly here.
I am all for accessibility, but surely the answer is not to make golang.org less accessible for the majority of people. I'm taking part of the blame here since I gave the go-ahead signal but then didn't really look at the changes.
Going forward, I suggest:

Significant visual changes to godoc really need some vetting before they are committed. There's a lot of fine-tuning that went into godoc in the first place; let's not undermine that work.

Let's revert the underbar change. It's really bad, graphically (also no faint underbars please).

Instead, make it possible to enable underbars if desired. Perhaps there's a link to a web-page version with accessibility features enabled. I suspect it may require as little as a different .css.

In summary, let's provide accessibility without compromising the vast majority of users.
Thanks.

I'd like to note that as a colorblind person with mild deutranopia and tritanopia, I find this much harder to read overall, despite the anchor tags standing out. In general, I'm not really a fan of using text-decoration as a color blindness accessibility signal. If you really want to use text-decoration, though, it'd probably be better to settle on subtle dotted lines with a clear line-height between the anchor tag and the underlined text.
Are there any other approaches being considered here. If the goal is to distinguish links by not only color alone, a different font (like a fixed width font that stands out on a coding page) might be better suited.

I'm going to respond out of order but try to hit everything. Please let me know if I missed anything.
In the future, I will post in this thread with screenshots whenever I make a CL that changes visuals in any way so everyone knows that something unhappy is afoot. Other than these and a small contrast tweak here or there, there should only be one other as far as I can tell, though: visible hover/focus states for buttons and button-themed links. Regardless, I'll look forward to more thorough reviews.
@griesemer The ever-present pilcrows (¶) are because if they're not always there's never a way to get to them to without using a mouse. In the first patch set, they were pushed further to the right and de-emphasized to counteract them always being visible. Even if that had made it, it looks like it wouldn't have meshed well with underlines and would require its own formatting. But for that matter they don't work with the toggled sections either. Maybe that feature needs more of a holistic re-think—that was certainly the minimal patch.

we made the deliberate decision to not have the underlines

I don't have any vision or motor deficiencies that would make a lack of underlines on links troublesome for me. Generally, I think no underlines looks better, but there are more considerations to balance than just aesthetics.
I'm not a fan of how it works on godoc. The headers and links being the same color, especially when all or part of a header is a link, means I have to guess whether something might be clickable and check by hovering over the link.
I've been using Go a long time and by now I've roughly memorized everything that is and is not a link so it only shows up as sometimes clicking a header and realizing that it's not a link. It's as small as an inconvenience can get, but it's still irksome when run across.
If I did have a motor deficiency and were new to Go, it could take actual effort and strain to position the mouse to check (which I would have to do until the keyboard accessibility is 100%). If I had total color blindness on top of that, I'd have to do that for every word in every page. It would not be a welcoming experience to the language.

surely the answer is not to make golang.org less accessible for the majority of people

I agree that the change that ended up being pushed is less than ideal. I think that the readability could be improved (see below) without as great an aesthetic impact.

Instead, make it possible to enable underbars if desired. Perhaps there's a link to a web-page version with accessibility features enabled. I suspect it may require as little as a different .css.

A css file with for the visual issues would be quite small. The mechanism to enable that stylesheet would likely not be as small. And such a mechanism would of course itself have to be both accessible and easily discoverable or it would be of little use to those who need it. Like with any configuration option, it would require changes to be tested both with the accessible stylesheet enabled and disabled, except few will, so when there are any changes that need additional handling in the accessible stylesheet it will tend to lag behind the main stylesheet.
A style that is readable and acceptable to everyone would be simpler and better for everyone.
@dsnet The original CL for the underlines in fact had the underline color at 50% opacity to counteract the harsher interactions, particularly with the pkg-index:

Here's a variant with the text color at .3 opacity:

Here's a dotted line as @paranoiacblack suggests. It may work better in conjunction with one of the above, this one is just the same color as the link:

Unfortunately the only way to adjust the underline's position to the text is to fake it with it a border or box-shadow. That has a lot of edge cases and requires a bit of code to cover everything, but here's a very rough sketch using border. It does have its virtues and might work better with a transparent border and it would need some more spacing, as noted:

Just to round out the options in case it gives anyone ideas, another tact is to attach an icon of some sort as a signifier, akin to the  ▹/▾ used for collapsible sections:

I'm not a designer by any means so if anyone has better ideas I'd love to hear them.

The ever-present pilcrows (¶) are because if they're not always there's never a way to get to them to without using a mouse.

If that's the rationale, we should use CSS and/or JS to detect mobile and display it permanently only in that situation. Given that Go is mostly developed on desktops or laptops with full browsers, it seems sensible to prioritize making sure things looks nice on that platform first.

@dsnet it has nothing to do with touch (though that benefits as well) it's about people who can't use a mouse or find it difficult and all of the devices to aid accessibility that work by synthetic keyevent.

Again, I am all for accessibility but we should do it right and not compromise one experience for a slightly improved experience for others. The result will not be satisfying for anybody.

A css file with for the visual issues would be quite small. The mechanism to enable that stylesheet would likely not be as small. And such a mechanism would of course itself have to be both accessible and easily discoverable or it would be of little use to those who need it.

I don't see why this mechanism is complicated. We serve the html which is generated via templates. It can't be too hard to replace the .css reference to a different one; perhaps based on a cookie.

Sorry if I was unclear. I meant not just the mechanism to include the alternate stylesheet, but the mechanism in the user interface of the site allowing one to enable the alternate stylesheet.
There are probably other configuration options that would eventually get exposed: maybe being able to set the default GOOS/GOARCH in addition to a per-package UI, as requested in #22178 . Not very useful when running a local godoc but I'm sure it could be handy for someone using tip.golang.org. Since it's a general settings page, it would probably suffice to have a gear icon in the navigation bar that goes to the settings page.
If it turns into a grab bag, it won't be immediately apparent that you need to go there to turn on visual accessibility settings—few sites offer such choices, even in config so it's not something one learns to expect. It would be discoverable though and certainly better than nothing.
If it stays focused on accessibility settings, a generic gear icon wouldn't be wrong but it would be sort of deceiving—everyone would click it to see what fun config parameters can be messed with. To make it clear that it is solely for accessibility settings, it should be so labeled. But having something named "accessibility settings" would take up quite a bit of real estate in the navigation menu, so it's going to get pushed down somewhere else. The label would be more appropriate but the overall discoverability would be worse since it would itself be harder to find. One compromise would be to put in the navigation bar but slightly out of the way:

Another compromise would be to more selective about where to include visual indication and by having an appropriate variety of stylings based on context. Things like the package index could be considered sufficiently self-evidently navigation to be exempted. Links in headers could have their own appropriate style and links in general text areas another.

We are looking to roll master to golang.org, so I’m going to revert the changes to the underlines and permalinks since those seem the most contentious.
@jimmyfrasche please don’t interpret this as not being appreciative or dismissive of the work you’re doing, because we are very happy you’re doing it and this is very important work. Feel free to open another set of CLs (revert the reverts if you like) so that we can better discuss the design decisions with the relevant people.

I just ran a google lighthouse test on the godoc page and we have a 97% score on accessibility.

[ ] Page specifies valid language
<html> element does not have a [lang] attribute.
[x] Elements use attributes correctly
[x] ARIA attributes follow best practices
[x] Elements have discernible names
[x] Elements describe contents well
[x] Color contrast is satisfactory
[x] Elements are well structured
[x] Page specifies valid language
[x] Meta tags used properly.

I believe setting the lang attribute to "en" should fix it according to this site https://dequeuniversity.com/rules/axe/2.2/html-lang-valid. @jimmyfrasche - Any reason you have set the  missing lang on html tag (difficult) item to difficult level ?

Lighthouse is the least useful a11y analyzer I've ever seen. I would recommend only using it if you need to triage major issues on an extremely inaccessible site, since that seems to be all it is concerned with.
The SiteImprove chrome extension is the best one I've found (though it sometimes nags about signing up for their newsletter or somesuch, but that can be skipped).
Even so, these are all static analyzers and, as such, while quite helpful, they have occasional false positives and many false negatives. Also, the criteria they're evaluating (WCAG) are necessarily a bit vague. The real test is if you can use the site exactly as well regardless of assistive technology or any temporary or permanent loss of ability.
That is obviously quite hard to evaluate. In practice a good proxy for this is to:

ensure everything is denoted by both shape and color and that all colors contrast one another sufficiently
ensure the semantics of the produced documents are correct since they need to be machine-readable
ensure that the site is entirely usable by keyboard as most assistive technologies simulate key presses
ensure all content is can be accessed by a screen reader (most of this is covered by the last two items)

It can be quite hard to get all of those 100% so the goal is to get them as close as is possible within reason.
I marked the lang tag as hard because while the language of the document itself is en, the language of a given's documentation need not be.

Thanks. But isn't the lang attribute supposed to contain the language of the document ? Or are you saying that there are translations of godoc, in which case the lang attribute needs to be dynamically set or sth ?

Godoc can display arbitrary user packages. The site will be in en but the documentation for a given package might be de or ja or anything else. I am unsure if there would be side effects from not also marking those correctly. To even attempt to mark them correctly would require some kind of program to analyze the docs and guess the language or an out of band way to specify the BCP 47 tag of a package.

Got it. Thanks for the clarification.

godoc is deprecated.


Older documentauthor records have order values of -1.

>>> Counter(DocumentAuthor.objects.values_list('order',flat=True))
Counter({1: 33117, 0: 30819, 2: 14629, 3: 8910, 4: 5012, 5: 2309, -1: 1900, 6: 1001, 7: 498, 8: 271, 9: 157, 10: 100, 11: 63, 12: 37, 13: 16, 14: 10, 15: 9, 16: 6, 17: 4, 18: 4, 19: 2, 20: 1})

Note those with an order of -1. Initial investigation hints that these are all attached to older documents, and may indicate "Couldn't figure out order" at the time (that's just a guess). No code looks for negative values - it only orders by order.
This is causing bibxml trouble, associated with the "Rock meet hard place" issue at #4581. bibxml3 is currently wrong for those documents because the author order is incorrect.
We should investigate whether it is reasonable to recompute the DocumentAuthor records (at least the order field) for those documents, as using the Submission info has the other conflicting properties.

Conversations with people that were in the code at the time indicate these came in with the import from the perl IESG tracker's database very long ago, and have no memory of purpose for the -1 except perhaps for making reordering easier for the secretariat at the time.


Sidebar doesn't animate unless opened property is bound.

I was going crazy trying to figure out why my sidebar was simply popping into existence instead of smoothly sliding open like in the demo.
So I made a stackblitz to figure out what I was doing wrong: https://stackblitz.com/edit/angular-hbfacn
The only difference between the top and bottom sections is  [(opened)]="_opened" on <ng-sidebar>.
This wasn't mentioned in the docs so I assume it is a bug.

This is due to a workaround for the sidebar being visible on initial load, which basically turns off animate on load and re-enables it once it's triggered to be opened/closed again.
I've yet to think of a good fix for this.

https://github.com/arkon/ng-sidebar/blob/23e651ca10cf9ea446a0ee9e60ae6d8bf523d281/src/sidebar.component.ts#L139


Documentation

I would strongly suggest to regenerate the http://perspex.github.io/ documentation removing the Microsoft copyright that would induce people to believe this is a Microsoft-owned project.

Good point - I didn't notice that!

@wieslawsoltes any idea how to do this? I had a quick look but couldn't see any documentation on how to change this.

@grokys No simple solution exist. There is no variable you can change for this. My guess is you have use custom template by copying for example the default from docfx and changing footer.
Example I have found:
https://github.com/sethjuarez/numl/blob/dev/Docs/template/partials/footer.tmpl.partial
https://github.com/sethjuarez/numl/tree/dev/Docs

@grokys Ok I have found solution, will submit PR
For copyright can I use The Perspex Project or something else ?


During the execution of the BOHB program, the following error occurred（DEBUG:hpbandster:DISPATCHER: Starting worker discovery）, causing the program to hang

During the execution of the BOHB program, the following error occurred, causing the program to hang，I want to know why：
"DEBUG:hpbandster:DISPATCHER: Starting worker discovery\n",
"DEBUG:hpbandster:DISPATCHER: Found 1 potential workers, 1 currently in the pool.\n",
"DEBUG:hpbandster:DISPATCHER: Finished worker discovery\n"
"DEBUG:hpbandster:DISPATCHER: Starting worker discovery\n",
"DEBUG:hpbandster:DISPATCHER: Found 1 potential workers, 1 currently in the pool.\n",
"DEBUG:hpbandster:DISPATCHER: Finished worker discovery\n"
"DEBUG:hpbandster:DISPATCHER: Starting worker discovery\n",
"DEBUG:hpbandster:DISPATCHER: Found 1 potential workers, 1 currently in the pool.\n",
"DEBUG:hpbandster:DISPATCHER: Finished worker discovery\n"

Hi,
just had the same problem. It turns out that in the worker.compute() function I tried to return a pandas.DataFrame / numpy.ndarray in the 'info' field. This is not allowed.
https://automl.github.io/HpBandSter/build/html/core/worker.html
I found out by setting the loglevel to DEBUG, then one worker was showing an exception.
import logging
logging.basicConfig(level=logging.DEBUG)
Cheers

I tried to use logging.basicConfig(level=logging.DEBUG)
Nothing came up and still hang at the same place. What should I do next?


Needs a proper Error Codes returned by the discovery client in case of any Error occurred in the identity server.

Is your feature request related to a problem? Please describe.
yes, sometimes we need to modify the error messages returned by the Discover client, and at that time in identityServer4. we don't have any way to check that what kind of error is returned by the IdentityServer and how we can modify this error message. Identity server returns invalid_grantType in case of even wrong email/password and invalid_username_and_password, we don't have any way to modify this.
Describe the solution you'd like
I think the identity server should return the "ErrorCodes" in the cause of the error that occurred on the side of indetityServer. like 1004 describe the "invalid email",4005 describe the "This error occurs when invalid credentials are provided". on the API side then we can customize our end-user error messages based on these error codes.
Describe alternatives you've considered
what did I do? simply throw the exception with "Invalid email or password". this is not the proper way to return the hard code error message.

Yes, that a nice feature request. Developers should be able to customize error messages in identity servers as per the project requirements.

Detailed error message are a security concern. IdentityServer implements the error codes as specified in the OAuth 2.0 / OpenID Connect family of specifications.


Misaligned icons in websites when extension is turned on

Misaligned icons in websites when extension is turned on. :///

This was fixed by removing a portion of the blocker style scss file


How send button messages?

Hi,
I'm sorry but I couldn't find a clear example of how to send button messages using the lib.
Considering it is a very common feature in automated chats, would it be possible to add a line of code to the main example (readme.md) showing how to work with buttons?

I'm planning on adding a TUTORIALS folder with some examples for each message type. I already started writting a few of the examples in a private file, so it shouldn't take too long to do.
Here's the Interactive with buttons example:
const interactive_button_message = new Interactive(
    new ActionButtons(
        new Button("hello", "Hello"),
        new Button("world", "World")
    ),
    new Body("Hello World") // Mandatory Body
    // Optional Header of any type
    // Optional Footer
);


nicecast fails

brew cask install nicecast

leads to
==> Downloading https://www.rogueamoeba.com/nicecast/download.php
Already downloaded: /Library/Caches/Homebrew/nicecast-1.11.7.php
==> Verifying checksum for Cask nicecast
Error: Uh oh, could not figure out how to unpack '/Library/Caches/Homebrew/nicecast-1.11.7.php'

The download works though. I'm confused at the file extension of /Library/Caches/Homebrew/nicecast-1.11.7.php.

brew update and try again.

Works. Thank you very much!


Add Rotten Oranges Graph Problem using BFS

Added the Rotten Oranges problem that implements the BFS graph traversal algorithm.

Could you please add the link in the README file?

Done!

Done!


Branch naming

I would like to use the master branch for Jupyter,  meaning:
3.x branch -> IPython 3.x
master branch -> Jupyter 4.x
@Carreau , @damianavila what do you think ?

I think is a good idea...

Done in PR #226


Dear Bowen,I meet a problem in runing this code.TypeError: BRNet: CAVoteHead: cfg must be a dict, but got <class 'NoneType'> My mmdet3D version is  v0.15.0.

Traceback (most recent call last):
File "tools/train.py", line 232, in
main()
File "tools/train.py", line 191, in main
test_cfg=cfg.get('test_cfg'))
File "/home/zpx/code/代码/mmdetection3d/mmdet3d/models/builder.py", line 83, in build_model
return build_detector(cfg, train_cfg=train_cfg, test_cfg=test_cfg)
File "/home/zpx/code/代码/mmdetection3d/mmdet3d/models/builder.py", line 57, in build_detector
cfg, default_args=dict(train_cfg=train_cfg, test_cfg=test_cfg))
File "/home/zpx/anaconda3/envs/brnet/lib/python3.6/site-packages/mmcv/utils/registry.py", line 210, in build
return self.build_func(*args, **kwargs, registry=self)
File "/home/zpx/anaconda3/envs/brnet/lib/python3.6/site-packages/mmcv/cnn/builder.py", line 26, in build_model_from_cfg
return build_from_cfg(cfg, registry, default_args)
File "/home/zpx/anaconda3/envs/brnet/lib/python3.6/site-packages/mmcv/utils/registry.py", line 54, in build_from_cfg
raise type(e)(f'{obj_cls.name}: {e}')
TypeError: BRNet: CAVoteHead: cfg must be a dict, but got <class 'NoneType'>
Have you ever met this problem?
By the way,my mmdet3D version is  v0.15.0. for NVIDIA 30 series GPU.

I don't try to use mmdet3d v0.15.0, and just run the code using mmdet3d v0.11.0.
You may refer to this issue, where I have provided the conda env config file.
#5


RebootComputer

PsScriptAnalyzer says that RebootComputer is an unused variable, I think that issue is in how it's being used. Perhaps there is a cleaner way of doing this.
The variable 'RebootComputer' is assigned but never used.
Line

784

This was resolved see b9ec8d594b2fe98c365d696fddc772f8ce0c10b6


[7.x] Fix self-closing tag empty attribute parsing

This PR fixes https://github.com/laravel/framework/issues/31610.
I've also added a test for the empty attributes parsing.

Please send to 7.x.


PROTOBUF_GENERATE_CPP: fix generated paths

The "problem" here is when you place your *.proto files inside a subdirectory, e.g. proto.
The call to protoc will create the subdirectory proto inside of CMAKE_CURRENT_BINARY_DIR, so the resulting path is something like ${CMAKE_CURRENT_BINARY_DIR}/proto/example.pb.* but the function will add ${CMAKE_CURRENT_BINARY_DIR}/example.pb.* to the lists.
So, if you have multiple *.proto files with the same name in different directories, this might be a problem because the same path would be added to the list.
I am not 100% sure if this is really a problem or if it would simply result in regenerating the source files with each build even if it is not necessary.

Thanks.  I agree this is how the module should have behaved originally.  Unfortunately projects may have come to depend on the current behavior.  Moving the generated source file may not be a problem.   However, project source code will have header file search paths (-I) and #include lines written assuming the current location of the headers.  Some kind of option will be needed to enable this behavior.

Hm, didn't think about that.
I simply add ${CMAKE_CURRENT_BINARY_DIR} to my search paths and ignore the variables filled by this function. :)
However, I created another small test case and found some more problems related to this.
A call like this
protobuf_generate_cpp(SOURCES HEADERS test1/test.proto test2/test.proto)

results in
/usr/bin/protoc --cpp_out /home/mantiz/tmp/proto-test/build -I /home/mantiz/tmp/proto-test/test1 -I /home/mantiz/tmp/proto-test/test2 /home/mantiz/tmp/proto-test/test2/test.proto

which fails with the following error message:
Input is shadowed in the --proto_path by "/home/mantiz/tmp/proto-test/test1/test.proto".  Either use the latter file as your input or reorder the --proto_path so that the former file's location comes first.

So, the "fix" I proposed is incomplete.
I can dig a bit deeper and try to solve this if you are interested in this change.
It's ok for me to just close this PR for now since I think there is no problem in most cases and I think the complete fix will involve bigger changes and would therefore better be proposed in another PR.
What do you think?

complete fix will involve bigger changes and would therefore better be proposed in another PR

I agree.  Please look into the more complete fixes.  Also, please read CONTRIBUTING.rst.


[tck] cm is missing a requirement on security

The CM TCK seems to require a security framework enabled, some tests fail with:
expected:[java.lang.SecurityException] and got nothing
it would be good if the resolve of the TCK would fail e.g. by requiring that Framework property org.osgi.framework.security  is set to osgi

We need to split out TCK tests which require SecurityManager into .secure TCKs
org.osgi.test.cases.cm/bnd.bnd:48:-runproperties = ${runsecureproperties}
org.osgi.test.cases.dmt.tc1/bnd.bnd:21:-runproperties = ${runsecureproperties}, \
org.osgi.test.cases.dmt.tc2/bnd.bnd:28:-runproperties = ${runsecureproperties}, \
org.osgi.test.cases.dmt.tc3/bnd.bnd:25:-runproperties = ${runsecureproperties}, \
org.osgi.test.cases.dmt.tc4/bnd.bnd:25:-runproperties = ${runsecureproperties}, \
org.osgi.test.cases.residentialmanagement/bnd.bnd:26:-runproperties = ${runsecureproperties}, \
org.osgi.test.cases.wireadmin/bnd.bnd:34:-runproperties = ${runsecureproperties}

Still an issue


Can't Run Newer Versions

Haven't had time to follow up on this until now, but as I mentioned on issue #632 I haven't had any luck getting the Python 3.8-based versions of the downloader running. I have 3.8 installed and up to date (currently at 3.8.2) on this Win8.1 machine, but every time I try to run one of the versions of PixivUtil that uses it the command window just displays a few lines of text and then immediately closes itself. I've managed to snap some screenshots as it flashes by, and it's consistently shown the same message with every version of Python and the downloader that I've tried.

I'm assuming that I messed something up somewhere, but I can't decipher that to figure out where to start looking. Any assistance would be greatly appreciated.

you are running from script or from the zip file? You don't need to install python if you want to run from zip file.
also try to do fresh install to another folder?

Been running it the same way I've always run it. Download the zip, move it to a folder on the drive I've been archiving stuff on, unpack it, open the resulting folder and run the PixivUtil2.exe file in there as an administrator. So it's basically a fresh install in a new folder every time. Ran the pre-3.8 versions like this for years without any particular problems.

weird, it is working in my side. Can you upload the log file pixivutil.log here?
Delete the old one and rerun to regenerate the issue and upload that one.

also, try to extract it to C:\temp, maybe the long file path cause an issue (cos I add beta2 there).

Unfortunately it doesn't even get to the point of producing a log. The first step I usually do when starting a new version is to run it briefly to generate the config file, and it's not even doing that. It just immediately closes itself after displaying the above message without writing anything to the disk whatsoever.

even after moving the to shorter path? Can you try on different Windows version? I'm suspecting that because you are using win8.1

Even with the shorter path, it outright refuses to run on the 8.1 machine. My home theater PC is on Win10, and I can get the downloader to run on it, although I haven't tested it beyond the log-in prompt yet. Running it there is less than ideal, though, especially since it means I'll have to try and get it to save to the archive drive in the older machine over network.

hmm I guess it is really because of compatibility issue, considering Win8.1 is not supported anymore by microsoft in general.
Can you try to run it from script? See https://github.com/Nandaka/PixivUtil2/wiki item 2.


Refactor API paths

Issue/Task Number: T424
Overview
This PR unifies the API paths to make them more consistent. We'll probably rename the subapps later on, but since it doesn't require breaking the external APIs, it can wait. For now, the APIs are now:

/admin/api -> /api/admin
/api -> /api/client

Same. I thought at least all the controller tests need to be updated. But no, ConnCase already handled that. :D


使用prop-types定义属性,避免在0.49.0上崩溃

Can this be merged?

@joshhornby Unfortunately not, until my requested changes are made anyway

@RealOrangeOne I've made the changes on a new PR https://github.com/RealOrangeOne/react-native-busy-indicator/pull/22

Actually it looks like this PR is doing it correctly:
https://github.com/facebook/prop-types#how-to-depend-on-this-package
https://github.com/facebook/prop-types/issues/44
So I believe you can close my PR and merge this one.

I've tested and this is working correctly.

Ohh, I didn't know that, good to know! Just need the tests to pass now (I assume it's just the linter)

@RealOrangeOne All tests are passing for the PR 👍

Oh, I read the wrong X, damn you GitHub!

Thanks for merging, can you cut a new release as well? @RealOrangeOne