[WIP] Dataset schema

Fixes #4
Dataset schema.

I see that column names are no longer stored into the data and have been replaced by integers. Is this intentional? If so, what's the rationale?

Yes, I propose to remove column names from the csv.
The rationale is that:

there is no need for the names to be in both the csv and the schema;
having them in both increases the risk of error; and
having them in both means that one must match by name, which requires a text-based matching/lookup algorithm, which seems to me more involved than matching by position.

(Note also that prive does not actually need column names at all; and so the names in the schema are merely there to provide more useful reporting to the end user; as such, they can be short identifiers, long descriptions, duplicated, or missing completely.)

I agree with that rationale. I was actually referring to when the data was loaded into a TabularDataset object. The column names are no longer present in the pandas DataFrame. Is this intentional? Or should they be taken from the description and passed to the data frame initialisation?

Oh, I see. I will have a look at this this afternoon.


Add Kahoku Shimpo to partner page

Resolves https://github.com/Japan-Digital-Archives/Japan-Digital-Archive/issues/1063

:+1:


reduce motion: lottie files no longer animated

Description
With react native reanimated v3+, they now implement the phone settings of "reduced motion"
which leads to lottie files no longer playing
Steps to Reproduce

use reanimated v3.x
go in your phone settings / accessibility / reduced motion (or "turn off animation", depending on device)
lottie animation no longer plays

Expected behavior: ideally lottie animation should play regardless
Actual behavior: [What actually happened]
Minimal reproduction

React Native Environment
RN0.73.4
Lottie Version
Version: 6.5.1

Is this issue is fixed?
I have an react-native application, where i have used lottie files, the animations works fine in android but not working fine in ios. For the first time the animations works fine in ios but on clicking button(to play the animation) it not playing again(there is a glitch)
Dependencies:
react-native : 72.6
"react-native-reanimated": "3.6.1",
"lottie-ios": "^4.3.0",
"lottie-react-native": "^6.3.1",


Add lib to gitignore, src to npmignore, package.json & tsconfig updates

What does this implement/fix? Explain your changes.

Updates Typescript dependency
If using Atom and the atom-typescript package, saving .ts files in src will compile them into .js files in lib (from change in tsconfig.json)
Ignore lib directory in git
Ignore src directory in npm
Add Atom Beautify to the top menu
...

Does this close any currently open issues?
...
Any other comments?
...
Checklist
Check all those that are applicable and complete.

[ ] Merged with latest master branch
[ ] Regenerate documentation with npm run docs
[ ] Add change details to CHANGELOG.md under "Next" section
[ ] Added examples for testing to examples/ directory
[ ] Travis CI passes (Mac support)
[ ] AppVeyor passes (Windows support)

Should probably comment out Travis builds for now.
Also, I felt it would be cleaner and faster to separate the .ts and .js files, that's why I have .js going to lib.  If that's not desirable and .js files should stay in src, I'll remove that line.

Also, I felt it would be cleaner and faster to separate the .ts and .js files, that's why I have .js going to lib. If that's not desirable and .js files should stay in src, I'll remove that line.

Agreed. Separating the TypeScript and generated JavaScript and type definition files (.d.ts) is ideal. I do not currently recall why they were setup like they were.. likely to make sure Travis CI passed 😝 .
Will need Travis CI passing before we can merge this.

Updated readme

This ultimately compiles and Atom recognizes it as a package.  The weird thing that's happening is it's showing settings that don't exist anywhere in the project.

Some (all saved ones?) preferences for Atom Beautify are saved in config.cson (apart of the atom config), which is where these were coming from.  Something to keep in mind of if things shift there.

Good point about the previously saved configuration. Something to consider before we release.

Thanks for contributing!

Published to v0.30.6


Repository status is refreshing every second without any configuration available

Description
Every second, the package refresh the repository and cause an AssetDatabase.Refresh() which cause lag spikes
Expected behavior: [What you expect to happen]
A mean to configure how much the repository is refreshed or something less consuming than an AssetDatabase.Refresh() call

Looking at the profiler it seems to be related to Tasks.MainThreadSynchronizationContext.Update, pushing out a 40 ms spike every second.
It's not related to the UI as it happens even if the UI window is closed. I discovered that you can get rid of the spikes if you disable Auto Refresh and Directory Monitoring in the Asset Pipeline Preferences, though that of course is undesirable.
Unfortunately I don't know how to fix it and I'm afraid this project is effectively abandoned. A shame as it made using git with unity much easier.

It started to happen with 2021.2 for reference if anyone finds this.


Support formatting for invalid sway code

Currently, if the code fails to build, the formatter will do nothing. Ideally, the formatter would still do basic formatting even when the code doesn't compile. For example, when there is a misspelled variable name but everything else is correct, it should still be able to format the document.
Here are the cases when cargo fmt does not run: https://github.com/rust-lang/rustfmt#limitations
We should aim for this as well.

Is this still open?

I think this is already supported. See https://github.com/FuelLabs/sway/issues/4911. But this needs to dealt on a case-by-case basis.

It's still not yet supported in the formatter, but it sounds like it's not blocked.


error: "TypeError: forward() got an unexpected keyword argument 'masked_lm_labels'"

i try to run the model by bash scripts/run_optiprompt.sh, but the model was not trainning and output this:
`
03/16/2022 15:53:28 - INFO - main - Namespace(check_step=-1, common_vocab_filename='common_vocabs/common_vocab_cased.txt', dev_data='data/autoprompt_data/P1001/dev.jsonl', do_eval=True, do_shuffle=False, do_train=True, eval_batch_size=8, eval_per_epoch=3, init_manual_template=True, k=5, learning_rate=0.003, model_dir=None, model_name='bert-base-cased', num_epoch=10, num_vectors=5, output_dir='optiprompt-outputs/P1001', output_predictions=True, random_init='none', relation='P1001', relation_profile='relation_metainfo/LAMA_relations.jsonl', seed=6, test_data='data/LAMA-TREx/P1001.jsonl', train_batch_size=16, train_data='data/autoprompt_data/P1001/train.jsonl', warmup_proportion=0.1)
03/16/2022 15:53:28 - INFO - main - # GPUs: 8
03/16/2022 15:53:28 - INFO - main - Model: bert-base-cased
Some weights of the model checkpoint at bert-base-cased were not used when initializing BertForMaskedLM: ['cls.seq_relationship.bias', 'cls.seq_relationship.weight']

This IS expected if you are initializing BertForMaskedLM from the checkpoint of a model trained on another task or with another architecture (e.g. initializing a BertForSequenceClassification model from a BertForPreTraining model).
This IS NOT expected if you are initializing BertForMaskedLM from the checkpoint of a model that you expect to be exactly identical (initializing a BertForSequenceClassification model from a BertForSequenceClassification model).
03/16/2022 15:53:50 - INFO - models - Vocab size: 28996
Using eos_token, but it is not set yet.
03/16/2022 15:53:50 - INFO - main - Original vocab size: 28996
03/16/2022 15:53:50 - INFO - main - # vocab after adding new tokens: 29006
03/16/2022 15:53:50 - INFO - main - Common vocab: common_vocabs/common_vocab_cased.txt, size: 21018
03/16/2022 15:53:51 - INFO - main - Tie embeddings of tokens: ([V1], is)
03/16/2022 15:53:51 - INFO - main - Tie embeddings of tokens: ([V2], a)
03/16/2022 15:53:51 - INFO - main - Tie embeddings of tokens: ([V3], legal)
03/16/2022 15:53:51 - INFO - main - Tie embeddings of tokens: ([V4], term)
03/16/2022 15:53:51 - INFO - main - Tie embeddings of tokens: ([V5], in)
03/16/2022 15:53:51 - INFO - main - Tie embeddings of tokens: ([V6], .)
03/16/2022 15:53:51 - INFO - main - Template: [X] [V1] [V2] [V3] [V4] [V5] [Y] [V6]
03/16/2022 15:53:51 - INFO - main - Train batches: 7
03/16/2022 15:53:51 - INFO - main - Valid batches: 4
0%|                                                                                | 0/4 [00:00<?, ?it/s]03/16/2022 15:53:51 - INFO - models - Moving model to CUDA
0%|                                                                                | 0/4 [00:22<?, ?it/s]
Traceback (most recent call last):
File "code/run_optiprompt.py", line 174, in
best_result, result_rel = evaluate(model, valid_samples_batches, valid_sentences_batches, filter_indices, index_list)
File "/home/XuYifan/optiprompt/OptiPrompt/code/utils.py", line 110, in evaluate
log_probs, cor_b, tot_b, pred_b, topk_preds, loss, common_vocab_loss = model.run_batch(sentences_b, samples_b, training=False, filter_indices=filter_indices, index_list=index_list, vocab_to_common_vocab=vocab_to_common_vocab)
File "/home/XuYifan/optiprompt/OptiPrompt/code/models.py", line 355, in run_batch
loss, logits = self.mlm_model(
File "/home/XuYifan/anaconda3/envs/XDAI/lib/python3.8/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "/home/XuYifan/anaconda3/envs/XDAI/lib/python3.8/site-packages/torch/nn/parallel/data_parallel.py", line 161, in forward
outputs = self.parallel_apply(replicas, inputs, kwargs)
File "/home/XuYifan/anaconda3/envs/XDAI/lib/python3.8/site-packages/torch/nn/parallel/data_parallel.py", line 171, in parallel_apply
return parallel_apply(replicas, inputs, kwargs, self.device_ids[:len(replicas)])
File "/home/XuYifan/anaconda3/envs/XDAI/lib/python3.8/site-packages/torch/nn/parallel/parallel_apply.py", line 86, in parallel_apply
output.reraise()
File "/home/XuYifan/anaconda3/envs/XDAI/lib/python3.8/site-packages/torch/_utils.py", line 428, in reraise
raise self.exc_type(msg)
TypeError: Caught TypeError in replica 0 on device 0.
Original Traceback (most recent call last):
File "/home/XuYifan/anaconda3/envs/XDAI/lib/python3.8/site-packages/torch/nn/parallel/parallel_apply.py", line 61, in _worker
output = module(*input, **kwargs)
File "/home/XuYifan/anaconda3/envs/XDAI/lib/python3.8/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
TypeError: forward() got an unexpected keyword argument 'masked_lm_labels'
`
how can I deal with this problem?
my info:
Linux  3.10.0-1160.25.1.el7.x86_64
python 3.8
torch    1.7.0
torchaudio    0.8.0
transformers    3.0.0

i notice my torch and transformers version are wrong. but after i change them to torch==1.4.0 and transformers==3.0.2, there is a new error, and the training not successed:
3/16/2022 22:38:05 - INFO - transformers.modeling_utils - loading weights file https://cdn.huggingface.co/bert-base-cased-pytorch_model.bin from cache at /root/.cache/torch/transformers/d8f11f061e407be64c4d5d7867ee61d1465263e24085cfa26abf183fdc830569.3fadbea36527ae472139fe84cddaa65454d7429f12d543d80bfc3ad70de55ac2
03/16/2022 22:38:08 - WARNING - transformers.modeling_utils - Some weights of the model checkpoint at bert-base-cased were not used when initializing BertForMaskedLM: ['cls.seq_relationship.weight', 'cls.seq_relationship.bias']

This IS expected if you are initializing BertForMaskedLM from the checkpoint of a model trained on another task or with another architecture (e.g. initializing a BertForSequenceClassification model from a BertForPretraining model).
This IS NOT expected if you are initializing BertForMaskedLM from the checkpoint of a model that you expect to be exactly identical (initializing a BertForSequenceClassification model from a BertForSequenceClassification model).
03/16/2022 22:38:08 - WARNING - transformers.modeling_utils - Some weights of BertForMaskedLM were not initialized from the model checkpoint at bert-base-cased and are newly initialized: ['cls.predictions.decoder.bias']
You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.
03/16/2022 22:38:08 - INFO - models - Vocab size: 28996
03/16/2022 22:38:08 - ERROR - transformers.tokenization_utils_base - Using eos_token, but it is not set yet.
03/16/2022 22:38:08 - INFO - main - Original vocab size: 28996
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V1] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V2] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V3] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V4] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V5] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V6] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V7] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V8] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V9] to the vocabulary
03/16/2022 22:38:08 - INFO - transformers.tokenization_utils - Adding [V10] to the vocabulary
03/16/2022 22:38:09 - INFO - main - # vocab after adding new tokens: 29006
03/16/2022 22:38:09 - INFO - main - Common vocab: common_vocabs/common_vocab_cased.txt, size: 21018
03/16/2022 22:38:10 - INFO - main - Tie embeddings of tokens: ([V1], is)
03/16/2022 22:38:10 - INFO - main - Tie embeddings of tokens: ([V2], a)
03/16/2022 22:38:10 - INFO - main - Tie embeddings of tokens: ([V3], by)
03/16/2022 22:38:10 - INFO - main - Tie embeddings of tokens: ([V4], profession)
03/16/2022 22:38:10 - INFO - main - Tie embeddings of tokens: ([V5], .)
03/16/2022 22:38:10 - INFO - main - Template: [X] [V1] [V2] [Y] [V3] [V4] [V5]
03/16/2022 22:38:10 - INFO - main - Train batches: 7
03/16/2022 22:38:10 - INFO - main - Valid batches: 4
0%|                                                                                | 0/4 [00:00<?, ?it/s]03/16/2022 22:38:10 - INFO - models - Moving model to CUDA
/home/XuYifan/anaconda3/envs/opti/lib/python3.7/site-packages/torch/nn/parallel/_functions.py:61: UserWarning: Was asked to gather along dimension 0, but all input tensors were scalars; will instead unsqueeze and return a vector.
warnings.warn('Was asked to gather along dimension 0, but all '
0%|                                                                                | 0/4 [00:19<?, ?it/s]
Traceback (most recent call last):
File "code/run_optiprompt.py", line 174, in
best_result, result_rel = evaluate(model, valid_samples_batches, valid_sentences_batches, filter_indices, index_list)
File "/home/XuYifan/optiprompt/OptiPrompt/code/utils.py", line 133, in evaluate
eval_loss += loss.item() * tot_b
ValueError: only one element tensors can be converted to Python scalars
03/16/2022 22:38:31 - INFO - main - Namespace(check_step=-1, common_vocab_filename='common_vocabs/common_vocab_cased.txt', dev_data='data/autoprompt_data/P108/dev.jsonl', do_eval=True, do_shuffle=False, do_train=True, eval_batch_size=8, eval_per_epoch=3, init_manual_template=True, k=5, learning_rate=0.003, model_dir=None, model_name='bert-base-cased', num_epoch=10, num_vectors=5, output_dir='optiprompt-outputs/P108', output_predictions=True, random_init='none', relation='P108', relation_profile='relation_metainfo/LAMA_relations.jsonl', seed=6, test_data='data/LAMA-TREx/P108.jsonl', train_batch_size=16, train_data='data/autoprompt_data/P108/train.jsonl', warmup_proportion=0.1)
03/16/2022 22:38:31 - INFO - main - # GPUs: 8
03/16/2022 22:38:31 - INFO - main - Model: bert-base-cased
03/16/2022 22:38:33 - INFO - transformers.configuration_utils - loading configuration file https://s3.amazonaws.com/models.huggingface.co/bert/bert-base-cased-config.json from cache at /root/.cache/torch/transformers/b945b69218e98b3e2c95acf911789741307dec43c698d35fad11c1ae28bda352.9da767be51e1327499df13488672789394e2ca38b877837e52618a67d7002391
03/16/2022 22:38:33 - INFO - transformers.configuration_utils - Model config BertConfig {
"architectures": [
"BertForMaskedLM"
],
"attention_probs_dropout_prob": 0.1,
"gradient_checkpointing": false,
"hidden_act": "gelu",
"hidden_dropout_prob": 0.1,
"hidden_size": 768,
"initializer_range": 0.02,
"intermediate_size": 3072,
"layer_norm_eps": 1e-12,
"max_position_embeddings": 512,
"model_type": "bert",
"num_attention_heads": 12,
"num_hidden_layers": 12,
"pad_token_id": 0,
"type_vocab_size": 2,
"vocab_size": 28996
}

Hi, could you try to run with only one GPU? You can do that by setting CUDA_VISIBLE_DEVICES=0.

I run it on single GPU and find that there is an error in code/utils line 133:
I change
eval_loss += loss.item() * tot_b
to
eval_loss += loss.mean().item() * tot_b
and then success


Can't add integration to 2024.3.3

I followed the instructions but when after I enter my login info for winix I get
Logger: homeassistant.setup
Source: setup.py:266
First occurred: 4:44:54 PM (1 occurrences)
Last logged: 4:44:54 PM
Setup failed for custom integration 'winix': No setup or config entry setup function defined.

What is the integration version?

I had done a git clone initially but since you asked the version, I tried to download the 1.1.5 zip of the release, installed it and that worked. sorry!


Single Patient API test 10.21.07-Could not find component:industry.value[x] in the 1 provided Observation resource(s)

We see in US core profile Observation.component:industry.value[x] field is mandatory, but we do NOT see any example given in US core or HL7 or in Inferno reference server regarding it. Can you please give us an example showing this field details in reference server.

Hi, the Observation.component:industry field is a slice on the component field, where the name of the slice is "industry".  Slices have names to identify and explain the intent of the slice, but the name isn't used in the actual FHIR structure or data. (Ref: https://hl7.org/fhir/profiling.html#slicing ) So if you're searching for the word "industry", unless it happens to be in a code display or something, you won't find it. The discriminator for this slice is the LOINC code 86188-0 under component.code.
The component on the US Core 6.1 IG Observation Occupation profile example shows an example of this component with a valueCodeableConcept at http://hl7.org/fhir/us/core/STU6.1/Observation-observation-occupation.json.html
The reference server has essentially a copy of this resource, you can find it with the search https://inferno.healthit.gov/reference-server/r4/Observation?code=11341-5   (note you'll need an access token or use SAMPLE_TOKEN)

Our implementation as per the US Core 6 sample example, It seems like the test is expecting Observation.component.industry in the response. Can you check the same and confirm. I have attached a observation response generated from our system for your response.
Occupation_Example.json

Your sample has two objects in the component field, one with a valueCodeableConcept and one with a code:
"component": [
          {
            "valueCodeableConcept": {
              "coding": [
                {
                  "system": "https://docs.mydata.athenahealth.com/fhir-r4/athenaFlex/occupationIndustry",
                  "code": "339114.000004",
                  "display": "Abrasive points, wheels, and disks, dental, manufacturing [Dental Equipment and Supplies Manufacturing ]"
                }
              ]
            }
          },
          {
            "code": {
              "coding": [
                {
                  "system": "http://loinc.org",
                  "code": "86188-0",
                  "display": "History of Occupation Industry"
                }
              ]
            }
          }
        ]

This needs to be one object with both fields:
"component": [
          {
            "valueCodeableConcept": {
              "coding": [
                {
                  "system": "https://docs.mydata.athenahealth.com/fhir-r4/athenaFlex/occupationIndustry",
                  "code": "339114.000004",
                  "display": "Abrasive points, wheels, and disks, dental, manufacturing [Dental Equipment and Supplies Manufacturing ]"
                }
              ]
            },
            "code": {
              "coding": [
                {
                  "system": "http://loinc.org",
                  "code": "86188-0",
                  "display": "History of Occupation Industry"
                }
              ]
            }
          }
        ]


context.config() does not take event context into account

In followup from #264 (I cannot reopen that issue, and the issue was auto-closed without having a solution/fix.
Bug Report
This problem makes it impossible to change the configuration of a probot bot IN the pull request where the probot is active/receives events. Only configuration in the repo's master branch is taken into account.
Problematic code: https://github.com/probot/probot/blob/master/src/context.ts#L230
Assume the files
# .github/my-config.yaml
# branch: master (the default branch)
property: 1

# .github/my-config.yaml
# branch: my-feature
property: 2

Current Behavior

I open a pull request

I have my probot bot listen to pull request events

I create a pull request to merge my-feature into master

When the bot receives a pull request event:
context.config('my-config.yaml').property == 1

Expected behavior/code

I open a pull request

I have my probot bot listen to pull request events

I create a pull request to merge my-feature into master

When the bot receives a pull request event:
context.config('my-config.yaml').property == 2

Possible Solution
Take the branch information that is stored in the context into account. For pull requests, that means the changes of the pull request branch.

We would need to handle pull requests from forks differently due to security risks, if at all we could only read configuration from branches on the same repository. Even that could be risky.
I don't best would be you implement that functionality for your app yourself for now, it's not a feature I'd rush to put into Probot, there is a lot to consider

OK, thank you for the comment.
Isn't the same true for having CI config in the repo, where the branch is also used when the CI configuration is read? How are those security issues mitigated in such cases?
However, I can understand for example for an auto-merge PR bot that you do not want pull requests to change the auto-merge behaviour.
Feel free to close this issue if this is not a priority feature: it would indeed be simple enough to implement in my application. The default behaviour was simply not what I expected. Maybe some documentation would be useful for explaining this behaviour and the security risks.

Isn't the same true for having CI config in the repo, where the branch is also used when the CI configuration is read? How are those security issues mitigated in such cases?

The CIs take care of that.

Feel free to close this issue if this is not a priority feature

We can leave it open for a while to see if anyone else has a similar need

Maybe some documentation would be useful for explaining this behaviour and the security risks

Always! PRs welcome :)

https://github.com/probot/probot/pull/1188 makes a first try for some documentation in the best practices section.


Install fails on ionic starter template

cordova -v -> 8.0.0
which is strange as I found the other posts talking about cordova 7 from last month
https://github.com/Telerik-Verified-Plugins/ImagePicker/issues/92
wiped my system clean of node/ionic/cordova
installed fresh LTS node/npm ionic&cordova@latest
create new project via
ionic start test blank
ionic cordova prepare
verify project/cordova working just fine via
ionic cordova run android

as pre plugin instructions....
cordova plugin add https://github.com/Telerik-Verified-Plugins/ImagePicker.git
or
ionic cordova plugin add https://github.com/Telerik-Verified-Plugins/ImagePicker.git
both produce:
(node:2384) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): CordovaError: Failed to fetch plugin https://github.com/Telerik-Verified-Plugins/ImagePicker.git via registry.
Probably this is either a connection problem, or plugin spec is incorrect.
Check your connection and plugin name/version/URL.
Failed to get absolute path to installed module
(node:2384) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
I also tried to install with this
ionic cordova plugin add cordova-plugin-telerik-imagepicker
and it produces this
Failed to install 'com.synconset.imagepicker': Error: ENOENT: no such file or directory, open '/home/mike/Git/test/platforms/android/AndroidManifest.xml'
which is correct because AndroidManifest.xml is only in
./platforms/android/CordovaLib/AndroidManifest.xml
./platforms/android/app/src/main/AndroidManifest.xml

i am also facing this issue. did you find the solution ?

No I have not found a solution.  I just tried again and it still fails.

Can you remove Platform directory  manually and try. It is working in my case.
ionic cordova plugin add cordova-plugin-telerik-imagepicker --variable PHOTO_LIBRARY_USAGE_DESCRIPTION="your usage message"

It is working now.
Thanks!

I used these commands
ionic cordova platform remove android
ionic cordova platform add android
so solve the error of the broken image icon and the plugin image picker functioned correctly again.

Failed to fetch platform<EMAIL_ADDRESS>Probably this is either a connection problem, or platform spec is incorrect.
Check your connection and platform name/version/URL.
Failed to get absolute path to installed module


3.0.1

Resolves #171

Pull Request Test Coverage Report for Build 385

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

Totals

Change from base Build 381:
0.0%

Covered Lines:
99

Relevant Lines:
99

💛  - Coveralls


⚠ Bofrost.at has degraded performance

In 610c18b, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2677 ms

Resolved: Bofrost.at performance has improved in ba67a9d after 8 minutes.


BMP Support

I'd like to have bmp support. Its also super simple because its mainly just magic value -> uncompressed bytes

I might add it when I have time. Apparently doesn't require much code.

Actually I'm not going to put my time into this but if someone else implements it, I'll merge it.


Make checks required only for specific environments

Hello 👋
We currently have a use case where one of the environments we are deploying to is used specifically for development, which shouldn't necessarily require an review approval before being able to deploy. However, using branch-deploy as it stands, in order to deploy any environment, the PR needs to be in an approved state.
Would it be feasible to somehow introduce an option (defaulting to all environments) to allow some environments to skip the checks perhaps? 🤔

Let's bundle up two items of work into this issue:

[ ] Disable the requirements of passing CI for certain environments
[ ] Disable the requirements of PR review for certain environments


feat: [WIP] convert Maven XML dependencies on paste

Using vscode's proposed documentPaste API, you can try copying Maven dependencies in XML format (eg. from a pom.xml file) and pasting them to an empty line in a JBang file. The dependencies will automatically be converted to JBang //DEPS dependencies (one per line)
This requires vscode-insiders and setting "editor.experimental.pasteActions.enabled":true  in settings.json.

@maxandersen if you want to test this, you can unzip the jbang-vscode zip from https://github.com/jbangdev/jbang-vscode/actions/runs/4156872039 and load it into vscode insiders


refactor: Use #[default] attribute macro on Role

This just makes it a bit more obvious which Role is the default, as it's now written near the actual variant.

Woops, looks like we have a security update to apply.


Disable onefile tests if appimagetool not available and stdin is not a tty

If appimagetool is not available, on OBS offline build workers I get
[ 4668s] +Traceback (most recent call last):
[ 4668s] +  File "/home/abuild/rpmbuild/BUILD/Nuitka-<IP_ADDRESS>/nuitka/__main__.py", line 209, in <module>
[ 4668s] +    main()
[ 4668s] +  File "/home/abuild/rpmbuild/BUILD/Nuitka-<IP_ADDRESS>/nuitka/__main__.py", line 195, in main
[ 4668s] +    MainControl.main()
[ 4668s] +  File "/home/abuild/rpmbuild/BUILD/Nuitka-<IP_ADDRESS>/nuitka/MainControl.py", line 756, in main
[ 4668s] +    packDistFolderToOnefile(dist_dir, binary_filename)
[ 4668s] +  File "/home/abuild/rpmbuild/BUILD/Nuitka-<IP_ADDRESS>/nuitka/freezer/Onefile.py", line 56, in packDistFolderToOnefile
[ 4668s] +    packDistFolderToOnefileLinux(onefile_output_filename, dist_dir, binary_filename)
[ 4668s] +  File "/home/abuild/rpmbuild/BUILD/Nuitka-<IP_ADDRESS>/nuitka/freezer/Onefile.py", line 148, in packDistFolderToOnefileLinux
[ 4668s] +    getAppImageToolPath(),
[ 4668s] +  File "/home/abuild/rpmbuild/BUILD/Nuitka-<IP_ADDRESS>/nuitka/freezer/Onefile.py", line 79, in getAppImageToolPath
[ 4668s] +    return getCachedDownload(
[ 4668s] +  File "/home/abuild/rpmbuild/BUILD/Nuitka-<IP_ADDRESS>/nuitka/utils/Download.py", line 82, in getCachedDownload
[ 4668s] +    reply = raw_input()
[ 4668s] +EOFError: EOF when reading a line

I have added --skip-onefile-tests in my RPM spec file for this reason. Detecting the availability of the tool in the test runner would be an option too indeed. I am going to remove it and try to implement this more automatically.
Also I see an issue here, with raw_input() not simply treating stdin unavailability with a default reply "no", that's more accurate, in which case however, it would error exit right now, as a "no" is not acceptable.

Btw, I dislike checking on tty, as I like programs like yes being usable for answering questions.

Both the EOF handling and the detection in the test runner are on current factory branch https://nuitka.net/doc/factory.html and will be in the hotfix, if my OBS tests pass with that now. I also removed the skip from the Debian packaging, always a good sign if there is no need to replicate this in many places.

Part of <IP_ADDRESS> hotfix release.

I've pre-installed appimagetool, and it isnt being found.  This question is still coming up.

The preinstalled tool is not used of course, and this is what it does for me:

[ 1377s] Nuitka will make use of AppImage (https://appimage.org/) tool
[ 1377s] to combine Nuitka dist folder to onefile binary.
[ 1377s]
[ 1377s] Is it OK to download and put it in "/home/abuild/.local/share/Nuitka/appimagetool-x86_64.AppImage/x86_64/12".
[ 1377s]
[ 1377s] No installer needed, cached, one time question.
[ 1377s]
[ 1377s] Proceed and download? [Yes]/No
[ 1377s] The onefile tests are not run due to missing requirements.

From https://build.opensuse.org/package/live_build_log/home:kayhayen/Nuitka/openSUSE_Leap_15.3/x86_64
Do the question output is not an issue in my eyes, and without stdin, the reply "no" is defaulted now, so this is considered fixed in my eyes.


Add similarGroups public method

I found your library very useful, but sometimes I wished I could just create any number of groups based on a certain similarity threshold. This PR adds that method, similarGroups, which takes an edge length (similarity index) at which to stop removing weak edges.

[X] Method
[X] Readme
[X] Tests

Thanks! :)  Sorry for extreme slowness. New job.


What's principal difference between Requests-HTML and Scrapy?

Hello, Kenneth! Thanks for Requests-HTML 👍
My question is: What's principal difference between Requests-HTML and Scrapy?
I know, Requests-HTML is smaller and faster (?), but what's more?
Would be great to see simple words of difference into docs.

Scrapy is an entirely different approach.

I'll consider adding something to do the docs.


Explore possibilities for modular implicits

At the moment module polymorphism is kind of clunky. Whilst our priority is more focused on polishing what we already have, it might be good to note down our thoughts here.
Some references:

Modular Implicits (paper)
Modular Typeclasses (paper)
ocamllabs/ocaml-modular-implicits
1ML – Core and Modules United
On the Bright Side of Type Classes: Instance Arguments in Agda
First-Class Type Classes

Here is an idea that uses extensible records to implement module inheritance:
type (f: Functor) =
    { t : Type -> Type -> Type
    , map : [a, b] -> (a -> b) -> f.t a -> f.t b
    }

type (f: Applicative) =
    { Functor
    | apply : [a, b] -> f.t (a -> b) -> f.t a -> f.t b
    , const : [a, b] -> f.t a -> f.t b -> f.t b
    }

type (m : Monad) =
    { Applicative
    | flat_map : [a, b] -> (a -> m.t b) -> m.t a -> m.t b
    }

let (>>=) : [m : Monad] -> m.t a -> (a -> m.t b) -> m.t b
    (>>=) [m] = flip m.flat_map

One issue with the above is how to handle multi-parameter inheritance.
Maybe:
type (m : Monad) =
    { foldable : Foldable
    , applicative : Applicative
    , t : foldable.t & applicative.t
    , flat_map : [a, b] -> (a -> m.t b) -> m.t a -> m.t b
    }

One issue with that last approach is traversing up the hierarchy to get to the function you want:
foo.monad.applicative.functor.map f xs

blegh

m.applicative.functor.map f xs

Yeah that does not look fun. Row polymorphism might be useful here which purescript uses.
type Functor f = {
    map : (a -> b) -> f a -> f b,
    | r
}

type Applicative f = {
    map : (a -> b) -> f a -> f b,
    (<*>) : f (a -> b) -> f a -> f b,
    pure : a -> f a,
    | r
}

This would mean any Àpplicative is also a Functor.
With the ability to 'splat' records it might be pretty easy to write.
let applicative_list = {
    (<*>) = ..,
    pure = ...,
    .. functor_list // splat the functor instance into this record
}

https://leanpub.com/purescript/read#leanpub-auto-record-patterns-and-row-polymorphism

Your need another type parameter in your examples. ie:
type Functor (f : Type -> Type) (r : Row) = {
    map : (a -> b) -> f a -> f b,
    | r
}

Or did you mean:
type Functor (f : Type -> Type) = forall (r : Row) . {
    map : (a -> b) -> f a -> f b,
    | r
}

Actually I believe it should be.
type Functor f = forall r. {
    map : (a -> b) -> f a -> f b,
    | r
}

Interesting stuff in the 1ML paper - in some respects it looks strikingly similar to what you have arrived at in Gluon:
type MONAD (m : type => type) = {
    return a : a -> m a;
    bind a b : m a -> (a - > m b) -> m b;
};

map a b (m : type => type) (M : MONAD m) (f : a -> b) (mx : m a) =
    M.bind a b mx (fun (x : a) => M.return b (f x))

One interesting syntactic thing is that:
type FOO (a : type) = { ... };

Is sugar for:
FOO = (a : type) -> type { ... };

So:
type EQ = { type t; eq : t -> t };

is the same as:
type EQ = { t : type; eq : t -> t };

Giving the following insight:

The record type EQ amounts to a module signature, since it contains an abstract type component t. It is referred to in the type of eq, which shows that record types are seemingly “dependent”: like for terms, earlier components are in scope for later components – the key insight of the F-ing approach is that this dependency is benign, however, and can be translated away, as we will see in Section 3.

Definitely need to re-read the 1ML paper. While it does have some similarities gluon is much simpler currently as types in records can only be a single type.
type Test a = {
    F: Int -> Int // `F` is a unqiue type whereas in 1ML or Rust it may depend on `a`
}

I never quite got why 1ML allowed types to be used as values (or I did get it and forgot). Types shouldn't appear in the actual code that is executed (so they aren't values during actual execution) and you don't actually want to be able to pass around and modify types arbitrarily in a Turing complete language anyway as that makes inference impossible

I don't really see that as a problem tbh - in fact it makes the language simpler by removing the distinction between types and values and seems to get rid of a separate kind language. 1ML restricts this somewhat in order to get good type inference, as described in Section 2, under 'Predicativity'.

There are probably to many useful constructs that are impossible if we take a hard stance on preserving decidability so I am not to attached to having a decidable type system. As long as inference is predictable and is able to give good errors it is fine to require some type signatures to help out. I'd even go a bit further to say that all exported bindings should have a type signature (which could be checked with a lint defaulting to error when a signature is missing).

Yeah - I think having good errors is critical. That is one of my concerns with too much language simplification and leaning on inference - the increased expressiveness may make it harder to provide useful feedback to the user.

So it seems that the language already has the ability to express interface inheritance! 😲
 type Applicative f = {
-    (<*>) : f (a -> b) -> f a -> f b,
+    functor : Functor f,
+    apply : f (a -> b) -> f a -> f b,
     pure : a -> f a
 }

(see  #56)

Discussion of modular typeclasses for Purescript: purescript/purescript#1886

Implicits in Agda https://github.com/bitonic/tog/wiki/Implicit-Arguments

Note that Agda calls their implicits 'instance arguments' (as opposed to 'implicit arguments'). But the stuff about unifying named arguments could still be relevant.


HOTT-2874: Display measures only if approved_flag is set to true in b…

…ase_regulation/modification_regulation
Jira link
HOTT-
What?
I have added/removed/altered:

[ ] Added conditions to Display measures only if approved_flag is set to true in base_regulation/modification_regulation

Why?
I am doing this because:

We don't want to display measures where approved_flag is set to false

Deployment risks (optional)

Changes an api that is used in production

Have you validated that measures/overview measures no long returns unapproved regulation measures using a real database?


Basic Auth with DynamoDB lacks users field

Do you want to request a feature or report a bug?
Bug
Did you try using a 1.7.x configuration for the version 2.0?

[ ] Yes
[X] No

What did you do?
Upgraded from 1.7.11 to 1.7.12
What did you expect to see?
Front-end should continue to authenticate users using embedded basic user list.
What did you see instead?
HTTP Basic credentials dialog is repeatedly shown, no access is granted ever.
Output of traefik version: (What version of Traefik are you using?)
1.17.12 using AWS Fargate
Traefik version v1.7.12 built on 2019-05-29_07:35:02PM

What is your environment & configuration (arguments, toml, provider, platform, ...)?
We use Fargate with the following parameters:
            - !Sub --dynamodb.tablename=${ProductName}-Traefik
            - !Sub --dynamodb.region=${AWS::Region}
            - --dynamodb.debugloggeneratedtemplate=true
            - --dynamodb.trace=true

The entry within Dynamodb is set using python. It has this record for the front-end item:
    Item={
        "id": "es-frontend",
        "name": "elasticsearch-frontend",
        "frontend": {
            "backend": "elasticsearch-backend",
            "routes": {
                "subdomains": {
                    "rule": "HostRegexp:{subdomain:search.*}"
                }
            },
            "auth": {
                "basic": {
                    "users": [ "xxx:$apr1$m1xce2g0$K8Z0x5kckkEdIFVl/8rxw/" ],
                    "removeHeader": True
                }
            }
        }
    }

(Password is irrelevant, it has already been changed)
If applicable, please paste the log output in DEBUG level (--log.level=DEBUG switch)
With 1.7.11 we can clearly see the config has "users" field set. With 1.7.12, no such field is present in the logs
1.7.11 (apologies for the white-space that has been introduced):
time = "2019-06-21T13:27:23Z" level = debug msg = "Configuration received from provider dynamodb: {" backends ":{" elasticsearch - backend ":{" servers ":{" es ":{" url ":" https: //vpc-ancilla-elasti-xxxxx.eu-west-2.es.amazonaws.com","weight":10}},"loadBalancer":{"method":"wrr"}}},"frontends":{"elasticsearch-frontend":{"entryPoints":["http"],"backend":"elasticsearch-backend","routes":{"subdomains":{"rule":"HostRegexp:{subdomain:search.*}"}},"priority":0,"basicAuth":null,"auth":{"basic":{"users":["xxx:$apr1$m1xce2g0$K8Z0x5kckkEdIFVl/8rxw/"],"removeHeader":true}}}}}"

1.7.12 (no users field exists):
time="2019-06-21T13:38:50Z" level=debug msg="Configuration received from provider dynamodb: {"backends":{"elasticsearch-backend":{"servers":{"es":{"url":"https://vpc-ancilla-elasti-xxxxx.eu-west-2.es.amazonaws.com","weight":10}},"loadBalancer":{"method":"wrr"}}},"frontends":{"elasticsearch-frontend":{"entryPoints":["http"],"backend":"elasticsearch-backend","routes":{"subdomains":{"rule":"HostRegexp:{subdomain:search.*}"}},"priority":0,"basicAuth":null,"auth":{"basic":{"removeHeader":true}}}}}"

Closed by #5002.


Docs Information Pop Up not working

I've installed readthedocs on my own private server, configured it and i'm correctly building a repo, with several versions, just one language, and exporting to pdf.
Howver, when i'm viewing the builded html, the pop up that can be viewed on the lower left corner is always minimized. I click on it, but it doesn't show.
Is there any configuration needed to make this feature work or it should work out of the box?

Its due to broken symlinks to javascript files.

Thanks for your response @alasdairdc .
Which symlinks do I have to correct/create?

The correction I have done is:
mkdir ./media/static
ln -s ../../readthedocs/core/static/core ./media/static/core
ln -s ../../readthedocs/static/vendor ./media/static/vendor

I would expect this to be added to the git repo, but at the same time the media/static path is included in the .gitignore
I think the problem of this collision between missing links under a path that is explicitly ignored must be clarified before I push a pull request.

From memory its 3 javascript file for Sphinx and a couple for MkDocs.  Inspect element while on the page and you'll notice the 404s for the files.  Just delete the broken links and recreate them with the correct paths.

Closing this as the user hasn't responded or given more information, feel free to reopen with more information if you are still having this problem :).
And I think the solution pointed in https://github.com/rtfd/readthedocs.org/issues/1608#issuecomment-141774500 is the correct.


Configure to run with pos devnet

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

Current dependencies on/for this PR:

#301  👈
#290 : 2 other dependent PRs (#291 , #298 )
main

This stack of pull requests is managed by Graphite.


Configuration of Sensors

First of all, thanks for your great work.
But i have still a Problem. I have Tapo P110 with Energy Sensors. When i add the Tapo Integration through the UI, i got the Switch and some Sensors. That works fine. Otherwise, when i try to configure the Tapo through the configuration.yaml i got only the Switch not the Sensors.
Can you post a Example how to configure the Sensors in the configuration.yaml? Or is this not possible at the moment?

Hi Rolbre....I seem to have the other problem whereby I have the sensors but no switch.  So the sensors are definitely supported. I am going to remove and re-install all the components and following other posts on the community pages, I've assigned static IPs to the Tapo P110s.  I may just completely remove my Tapo devices from the Tapo App and re-install too for good measure.  Not sure if you have tried that?

By using the configuration you must specify every entity type, in the same manner you declare switch entity, you must specify a sensor entity.

The way that is described in the README.md will not work. There different elements missing. What you can do is to add every device manually through the UI:
Settings -> Devices -> Add Device -> Select Tapo Controller and then add the new host. That will create the related entities and devices


install on secondary drive

Hi, I use a comparatively small nvme for my main OS and data on a secondary drive. How can I install Vivado on that secondary drive?
I tried installing the flatpak on a custom path but that did not help, neither does manually changing the install path or creating a symlink to the secondary drive.

You can change the installation path with XILINX_INSTALL_PATH. However, do not forget to also expose the corresponding path to flatpak.
You can use flatpak override to set it for all the subsequent runs. To do so, run (optionally with --user if you installed it as user):
flatpak override --env=XILINX_INSTALL_PATH=<YOUR_PATH> --filesystem=<YOUR_PATH> com.github.corna.Vivado

then install vivado.
Let me know if it works.

I suppose it works, reopen if not.


Update swig_type_info for swig-4.2.0

swig-4.2.0 changed the mangling for templates with default parameters. This commit updates the swig_type_info names for swig-4.2.0, but keeps the code backwards compatible to work with older versions of SWIG.
Reported in issue https://github.com/swig/swig/issues/2764.

The proposed changes have been applied:
http://tracker.copasi.org/show_bug.cgi?id=3214


[HW] Felipe Rojas

Name: Felipe Rojas
Email<EMAIL_ADDRESS>Linkedin Profile: https://www.linkedin.com/in/felipe-arg/
working on Gitpod with "netlify dev"

working on Netlify

Hey Felipe Rojas, great job! Congrats! Here is your badge! https://api.badgr.io/public/assertions/DW56-16XRM2mg6oU-abtEg


Node_option error during ROS2 Turtlebot3 Tutorial installation

ISSUE TEMPLATE ver. 0.2.0

Which TurtleBot3 you have?

[ o] Burger
[ ] Waffle
[ ] Waffle Pi

Which SBC(Single Board Computer) is working on TurtleBot3?

[ ] Raspberry Pi 3
[ ] Intel Joule 570x
[ ] etc (PLEASE, WRITE DOWN YOUR SBC HERE)

Which OS you installed in SBC?

[ ] Ubuntu MATE 16.04 or later
[ ] Raspbian
[ ] etc (PLEASE, WRITE DOWN YOUR OS)

Which OS you installed in Remote PC?

[ ] Ubuntu 16.04 LTS (Xenial Xerus)
[ o] Ubuntu 18.04 LTS (Bionic Beaver)
[ ] Linux Mint 18.x
[ ] etc (PLEASE, WRITE DOWN YOUR OS)

Write down software version and firmware version

Software version: [x.x.x]
Firmware version: [x.x.x]

Write down the commands you used in order

HERE

Copy and Paste your error message on terminal

HERE

Please, describe detailedly what difficulty you are in

mkdir -p ~/turtlebot3_ws/src

$ colcon build --symlink-install
When building the turtlebot3_ws, the error came up as below
Starting >>> cv_bridge
--- stderr: image_transport
/home/user/turtlebot3_ws/src/gazebo/camera_info_manager/image_transport/test/test_remapping.cpp: In member function ‘virtual void TestPublisher::SetUp()’:
/home/user/turtlebot3_ws/src/gazebo/camera_info_manager/image_transport/test/test_remapping.cpp:22:13: error: ‘NodeOptions’ is not a member of ‘rclcpp’
rclcpp::NodeOptions node_options;
^~~~~~~~~~~
/home/user/turtlebot3_ws/src/gazebo/camera_info_manager/image_transport/test/test_remapping.cpp:22:13: note: suggested alternative: ‘InitOptions’
rclcpp::NodeOptions node_options;
^~~~~~~~~~~
InitOptions
/home/user/turtlebot3_ws/src/gazebo/camera_info_manager/image_transport/test/test_remapping.cpp:23:5: error: ‘node_options’ was not declared in this scope
node_options.arguments(arguments);
^~~~~~~~~~~~
/home/user/turtlebot3_ws/src/gazebo/camera_info_manager/image_transport/test/test_remapping.cpp:23:5: note: suggested alternative: ‘rcl_node_options_t’
node_options.arguments(arguments);
^~~~~~~~~~~~
rcl_node_options_t
make[2]: *** [CMakeFiles/image_transport-remapping.dir/test/test_remapping.cpp.o] Error 1
I found this solution that ros2_ws install repos as master version(not crystal) which have node_options  because latest-version doesn't have node_options.
https://github.com/ROBOTIS-GIT/emanual/issues/729
**but here is the another problem, which is the master version does not work to build.
(I guess the rosidl_generater_c file is some error)
I will try to figure out this error but I would like to know to build image_transport except  " node_options " in turtlebot3 installation.
(I wonder how to fix this problem in turtlebot3 installation, overcoming all these)
Thank you**

i also get the error
lalala@ubuntu:~/turtlebot3_ws$ colcon build --symlink-install
Starting >>> nav2_common
Starting >>> behaviortree_cpp
Finished <<< nav2_common [0.39s]
Starting >>> nav2_msgs
Finished <<< behaviortree_cpp [1.60s]
Starting >>> nav2_voxel_grid
Finished <<< nav2_msgs [1.81s]
Starting >>> nav2_util
Finished <<< nav2_voxel_grid [0.64s]
Starting >>> nav_2d_msgs
Finished <<< nav_2d_msgs [3.40s]
Starting >>> nav2_robot
--- stderr: nav2_util
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp: In function ‘rclcpp::Node::SharedPtr nav2_util::generate_internal_node(const string&)’:
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp:68:11: error: ‘NodeOptions’ is not a member of ‘rclcpp’
rclcpp::NodeOptions options;
^~~~~~~~~~~
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp:68:11: note: suggested alternative: ‘InitOptions’
rclcpp::NodeOptions options;
^~~~~~~~~~~
InitOptions
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp:69:3: error: ‘options’ was not declared in this scope
options.use_global_arguments(false);
^~~~~~~
make[2]: *** [CMakeFiles/nav2_util_core.dir/src/node_utils.cpp.o] Error 1
make[1]: *** [CMakeFiles/nav2_util_core.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make: *** [all] Error 2
Failed   <<< nav2_util	[ Exited with code 2 ]
Aborted  <<< nav2_robot
Summary: 5 packages finished [8.94s]
1 package failed: nav2_util
1 package aborted: nav2_robot
1 package had stderr output: nav2_util
49 packages not processed

i also get the error
lalala@ubuntu:~/turtlebot3_ws$ colcon build --symlink-install
Starting >>> nav2_common
Starting >>> behaviortree_cpp
Finished <<< nav2_common [0.39s]
Starting >>> nav2_msgs
Finished <<< behaviortree_cpp [1.60s]
Starting >>> nav2_voxel_grid
Finished <<< nav2_msgs [1.81s]
Starting >>> nav2_util
Finished <<< nav2_voxel_grid [0.64s]
Starting >>> nav_2d_msgs
Finished <<< nav_2d_msgs [3.40s]
Starting >>> nav2_robot
--- stderr: nav2_util
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp: In function ‘rclcpp::Node::SharedPtr nav2_util::generate_internal_node(const string&)’:
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp:68:11: error: ‘NodeOptions’ is not a member of ‘rclcpp’
   rclcpp::NodeOptions options;
           ^~~~~~~~~~~
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp:68:11: note: suggested alternative: ‘InitOptions’
   rclcpp::NodeOptions options;
           ^~~~~~~~~~~
           InitOptions
/home/lalala/turtlebot3_ws/src/navigation2/navigation2/nav2_util/src/node_utils.cpp:69:3: error: ‘options’ was not declared in this scope
   options.use_global_arguments(false);
   ^~~~~~~
make[2]: *** [CMakeFiles/nav2_util_core.dir/src/node_utils.cpp.o] Error 1
make[1]: *** [CMakeFiles/nav2_util_core.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make: *** [all] Error 2
---
Failed   <<< nav2_util	[ Exited with code 2 ]
Aborted  <<< nav2_robot

Summary: 5 packages finished [8.94s]
  1 package failed: nav2_util
  1 package aborted: nav2_robot
  1 package had stderr output: nav2_util
  49 packages not processed

@Song-MS @EndlessLoops
Please downloads master branch of ROS2
wget https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos

The rclcpp have been updated.

@ Song-MS @EndlessLoops
请下载ROS2的主分支
wget https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos

rclcpp已更新。

I will continue to try today.
Thanks  for your reply.

@routiful
I will continue to try today.
Thanks for your reply.

new building error
lalala1@ubuntu:~/turtlebot3_ws$ . ~/ros2_ws/install/local_setup.bash
lalala1@ubuntu:~/turtlebot3_ws$ colcon build --symlink-install
Starting >>> nav2_common
Starting >>> behaviortree_cpp
Finished <<< nav2_common [0.36s]
Starting >>> nav2_msgs
Finished <<< behaviortree_cpp [1.87s]
Starting >>> nav2_voxel_grid
Finished <<< nav2_voxel_grid [0.67s]
Starting >>> nav_2d_msgs
Finished <<< nav2_msgs [2.56s]
Starting >>> nav2_util
Finished <<< nav2_util [1.62s]
Starting >>> nav2_dynamic_params
Finished <<< nav_2d_msgs [2.44s]
Starting >>> nav2_robot
Finished <<< nav2_dynamic_params [1.15s]
Starting >>> dwb_msgs
Finished <<< nav2_robot [0.75s]
Starting >>> nav2_tasks
--- stderr: nav2_tasks
CMake Error at CMakeLists.txt:11 (find_package):
  By not providing "Findbehaviortree_cpp.cmake" in CMAKE_MODULE_PATH this
  project has asked CMake to find a package configuration file provided by
  "behaviortree_cpp", but CMake did not find one.

  Could not find a package configuration file provided by "behaviortree_cpp"
  with any of the following names:

    behaviortree_cppConfig.cmake
    behaviortree_cpp-config.cmake

  Add the installation prefix of "behaviortree_cpp" to CMAKE_PREFIX_PATH or
  set "behaviortree_cpp_DIR" to a directory containing one of the above
  files.  If "behaviortree_cpp" provides a separate development package or
  SDK, be sure it has been installed.

make: *** [cmake_check_build_system] Error 1
---
Failed   <<< nav2_tasks	[ Exited with code 2 ]
Aborted  <<< dwb_msgs

Summary: 8 packages finished [8.77s]
  1 package failed: nav2_tasks
  1 package aborted: dwb_msgs
  1 package had stderr output: nav2_tasks
  46 packages not processed

@EndlessLoops
After behavior tree first,execute local_bash and build all packages.
$ colcon build --packages-select bahaviortree_cpp
$ . ~/turtlebot3_ws/install/local_setup.bash
$ colcon build --symlink-install

@routiful
I will continue to try now.
Thanks for your rapid reply.

@routiful
https://github.com/ROBOTIS-GIT/emanual/blob/master/docs/en/platform/turtlebot3/ros2.md
Open CR setup
$ wget https://github.com/ROBOTIS-GIT/OpenCR_Binaries/raw/master/turtlebot3/ROS2/latest/opencr_update.tar.xz
This link is incorrect, please edit

@routiful
I am sorry to ask but I cannot be clear this problem

wget  https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos

firstly, it should be built on ros2_ws folder. right?
but if I tried to this link, this error keep coming up as below
stderr: rosidl_generator_c
Traceback (most recent call last):
File "/home/song/ros2_ws/src/ros2/rosidl/rosidl_generator_c/bin/rosidl_generator_c", line 40, in
sys.exit(main())
File "/home/song/ros2_ws/src/ros2/rosidl/rosidl_generator_c/bin/rosidl_generator_c", line 35, in main
args.generator_arguments_file,
File "/opt/ros/crystal/lib/python3.6/site-packages/rosidl_generator_c/init.py", line 45, in generate_c
assert os.path.exists(template_file), 'Could not find template: ' + template_file
AssertionError: Could not find template: /home/song/ros2_ws/src/ros2/rosidl/rosidl_generator_c/resource/msg.h.em
make[2]: *** [rosidl_generator_c/rosidl_generator_c/msg/bool.h] Error 1
make[1]: *** [CMakeFiles/rosidl_generator_c_interfaces__rosidl_generator_c.dir/all] Error 2
make: *** [all] Error 2
How did you figure out this error, which is built from"wget  https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos"?

@EndlessLoops
Thank you! (https://github.com/ROBOTIS-GIT/emanual/pull/763)

@Song-MS
I can't pinpoint what exactly wrong. In my experience, To delete ros2_ws folders was help to successfully build it.

@routiful
I share to record the video which is the error when the state that is  "ros2_ws" deleted starts.
https://drive.google.com/open?id=1yX5dT0YSVi1xLgF3U9oeIv7pxwrvwoCt
Please check this link

@routiful
I also had this problem.
I want to finish the demo of tb3-ros2 and how how should i fix the problem of teleop_keyboard?
ubuntu@tb3-ros2:~$ cd ~/turtlebot3 && MicroXRCEAgent serial /dev/ttyACM0
Serial agent initialization... OK
Enter 'q' for exit

ubuntu@tb3-ros2:~$ cd ~/turtlebot3 && MicroXRCEAgent udp 2018
UDP agent initialization... OK
Enter 'q' for exit

./turtlebot3/turtlebot3_lidar
turtlebot3 lidar client setup complete!
1 - Sent topic: 0.332000, range_max: 361
2 - Sent topic: 0.330000, range_max: 361
3 - Sent topic: 0.330000, range_max: 361
4 - Sent topic: 0.330000, range_max: 361
5 - Sent topic: 0.331000, range_max: 361
6 - Sent topic: 0.330000, range_max: 361
7 - Sent topic: 0.330000, range_max: 361
8 - Sent topic: 0.330000, range_max: 361
9 - Sent topic: 0.330000, range_max: 361
10 - Sent topic: 0.330000, range_max: 361
11 - Sent topic: 0.330000, range_max: 361
12 - Sent topic: 0.330000, range_max: 361
13 - Sent topic: 0.330000, range_max: 361

ubuntu@ubuntu-laptop:~$ ros2 launch turtlebot3_bringup robot.launch.py
[INFO] [launch]: All log files can be found below /home/ubuntu/.ros/log/2019-04-11-12-10-05-008511-ubuntu-laptop-10514
[INFO] [launch]: Default logging verbosity is set to INFO
urdf_file_name : turtlebot3_burger.urdf
[INFO] [robot_state_publisher-1]: process started with pid [10523]
[INFO] [turtlebot3_ros-2]: process started with pid [10524]
[robot_state_publisher-1] Initialize urdf model from file: /home/ubuntu/turtlebot3_ws/install/turtlebot3_description/share/turtlebot3_description/urdf/turtlebot3_burger.urdf
[robot_state_publisher-1] Parsing robot urdf xml string.
[robot_state_publisher-1] Link base_link had 5 children
[robot_state_publisher-1] Link caster_back_link had 0 children
[robot_state_publisher-1] Link imu_link had 0 children
[robot_state_publisher-1] Link base_scan had 0 children
[robot_state_publisher-1] Link wheel_left_link had 0 children
[robot_state_publisher-1] Link wheel_right_link had 0 children
[robot_state_publisher-1] got segment base_footprint
[robot_state_publisher-1] got segment base_link
[robot_state_publisher-1] got segment base_scan
[robot_state_publisher-1] got segment caster_back_link
[robot_state_publisher-1] got segment imu_link
[robot_state_publisher-1] got segment wheel_left_link
[robot_state_publisher-1] got segment wheel_right_link
[robot_state_publisher-1] Adding fixed segment from base_footprint to base_link
[robot_state_publisher-1] Adding fixed segment from base_link to caster_back_link
[robot_state_publisher-1] Adding fixed segment from base_link to imu_link
[robot_state_publisher-1] Adding fixed segment from base_link to base_scan
[robot_state_publisher-1] Adding moving segment from base_link to wheel_left_link
[robot_state_publisher-1] Adding moving segment from base_link to wheel_right_link
[turtlebot3_ros-2] [INFO] [turtlebot3_node]: Init TurtleBot3 Node Main

ubuntu@ubuntu-laptop:~/turtlebot3_ws$ ros2 topic list
/imu
/joint_states
/odom
/parameter_events
/robot_description
/rosout
/scan
/scan_half
/sensor_state
/tf
/tf_static
/time_sync

@Song-MS
I have seen attached video. The error msg represents that rosidl_generator_c was founded in ros2_install folders. I assume that the ros2_install folder might be deleted.
Moreover, I recommended that post your error in ROS answer to get another solution.

@EndlessLoops
That issue haven't solved yet but I aware of. It will be solved soon. Sorry for inconvenience.

I am having the same "‘NodeOptions’ is not a member of ‘rclcpp’" issue when running colcon build --symlink-install inside ~/turtlebot3_ws/. Has that part been solved yet? (i.e., 15. 1.1.3 [Install TurtleBot3 ROS2 Packages] in the ROS2 Turtlebot3 tutorial)

I am having the exact same problem as @miguelvelezmj25. Any solutions?

@miguelvelezmj25  @heilund
I already answer that question. Please check again my comments.

After building behaviortree_cpp successfully with "colcon build --packages-select bahaviortree_cpp" i tried to execute ". ~/turtlebot3_ws/install/local_setup.bash", but i get the error:
not found: "/home/robot/turtlebot3_ws/install/behaviortree_cpp/share/behaviortree_cpp/local_setup.sh"
not found: "/home/robot/turtlebot3_ws/install/behaviortree_cpp/share/behaviortree_cpp/local_setup.bash".
Has anyone had this problem before?

@routiful
Which comment should fix the issue? For example, when you said to download the master branch of ROS2
wget https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos

when is that done? You also mentioned

After behavior tree first,execute local_bash and build all packages.
$ colcon build --packages-select bahaviortree_cpp
$ . ~/turtlebot3_ws/install/local_setup.bash
$ colcon build --symlink-install

I tried that, but I also got an error.
Which commands should I use to install the packages correctly?

Hello guys, how is it going? I am brand new to ROS2 and I am facing the same issues trying to build the nav2_utils. I even got the master branch but maybe I am missing something.
What does it mean to delete the 'ros2_ws'? I tryied updating the repository from the master branch (the one in the link @routiful posted before)  with the VCS (after changing the permissions of the folder):
sudo vcs import /opt/ros/crystal/ < ros2.repos
And then  trying to build once again with:
colcon build --symlink-install
If anyone went forward, could you point me up how to follow.
Thanks a lot.
P.D.:
The previous lines solved the issue with the nav_tasks (at least for me)
$ colcon build --packages-select bahaviortree_cpp
$ . ~/turtlebot3_ws/install/local_setup.bash
$ colcon build --symlink-install

hi, I am failing at the $ colcon build --packages-select-behaviortree_cpp stage . Any ideas would be appreciated, thank you
corsair@filika:~/projects/turtlebot3_ws$ colcon build --packages-select behaviortree_cpp
Starting >>> behaviortree_cpp
--- stderr: behaviortree_cpp
Traceback (most recent call last):
File "/home/corsair/projects/ros2_ws/install/ament_cmake_core/share/ament_cmake_core/cmake/package_templates/templates_2_cmake.py", line 21, in
from ament_package.templates import get_environment_hook_template_path
ModuleNotFoundError: No module named 'ament_package'
CMake Error at /home/corsair/projects/ros2_ws/install/ament_cmake_core/share/ament_cmake_core/cmake/ament_cmake_package_templates-extras.cmake:41 (message):
execute_process(/usr/bin/python3
/home/corsair/projects/ros2_ws/install/ament_cmake_core/share/ament_cmake_core/cmake/package_templates/templates_2_cmake.py
/home/corsair/projects/turtlebot3_ws/build/behaviortree_cpp/ament_cmake_package_templates/templates.cmake)
returned error code 1
Call Stack (most recent call first):
/home/corsair/projects/ros2_ws/install/ament_cmake_core/share/ament_cmake_core/cmake/ament_cmake_coreConfig.cmake:38 (include)
/home/corsair/projects/ros2_ws/install/ament_cmake/share/ament_cmake/cmake/ament_cmake_export_dependencies-extras.cmake:15 (find_package)
/home/corsair/projects/ros2_ws/install/ament_cmake/share/ament_cmake/cmake/ament_cmakeConfig.cmake:38 (include)
CMakeLists.txt:44 (find_package)

Failed   <<< behaviortree_cpp	[ Exited with code 1 ]
Summary: 0 packages finished [3.72s]
1 package failed: behaviortree_cpp
1 package had stderr output: behaviortree_cpp

We opened new issue page to summary every issues related turtlebot3 ROS2 #460
I will comment about it later to check it.

For now on, we have been released TB3 ROS 2 Dashing!
Please refer to emanual
This issue will be solved due to navigation2 can be installed by binary.

$colcon build --symlink-install
Starting >>> turtlebot3_msgs
Starting >>> dynamixel_sdk
Starting >>> hls_lfcd_lds_driver
Starting >>> turtlebot3_description
Finished <<< turtlebot3_description [2.86s]
Starting >>> dynamixel_sdk_custom_interfaces
Finished <<< dynamixel_sdk [3.04s]
Starting >>> turtlebot3_cartographer
Finished <<< turtlebot3_cartographer [0.73s]
Starting >>> turtlebot3_gazebo
Finished <<< turtlebot3_msgs [5.71s]
Starting >>> turtlebot3_node
Finished <<< dynamixel_sdk_custom_interfaces [4.17s]
Starting >>> turtlebot3_navigation2
Finished <<< turtlebot3_gazebo [3.74s]
Starting >>> turtlebot3_teleop
Finished <<< turtlebot3_navigation2 [0.84s]
Starting >>> turtlebot3_example
Finished <<< turtlebot3_example [7.71s]
Starting >>> turtlebot3_fake_node
Finished <<< turtlebot3_teleop [8.20s]
Starting >>> ld08_driver
--- stderr: turtlebot3_fake_node
/home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp: In member function ‘void Turtlebot3Fake::init_parameters()’:
/home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:75:60: error: no matching function for call to ‘Turtlebot3Fake::declare_parameterstd::string(const char [19])’
75 |   this->declare_parameterstd::string("joint_states_frame");
|                                                            ^
In file included from /opt/ros/foxy/include/rclcpp/node.hpp:1224,
from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/include/turtlebot3_fake_node/turtlebot3_fake_node.hpp:21,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:17:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note: candidate: ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = std::__cxx11::basic_string; std::string = std::_cxx11::basic_string; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor<std::allocator >]’
157 | Node::declare_parameter(
| ^~~~
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note:   candidate expects 4 arguments, 1 provided
/home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:76:52: error: no matching function for call to ‘Turtlebot3Fake::declare_parameterstd::string(const char [11])’
76 |   this->declare_parameterstd::string("odom_frame");
|                                                    ^
n file included from /opt/ros/foxy/include/rclcpp/node.hpp:1224,
from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/include/turtlebot3_fake_node/turtlebot3_fake_node.hpp:21,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:17:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note: candidate: ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = std::__cxx11::basic_string; std::string = std::_cxx11::basic_string; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor<std::allocator >]’
157 | Node::declare_parameter(
| ^~~~
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note:   candidate expects 4 arguments, 1 provided
/home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:77:52: error: no matching function for call to ‘Turtlebot3Fake::declare_parameterstd::string(const char [11])’
77 |   this->declare_parameterstd::string("base_frame");
|                                                    ^
In file included from /opt/ros/foxy/include/rclcpp/node.hpp:1224,
from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/include/turtlebot3_fake_node/turtlebot3_fake_node.hpp:21,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:17:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note: candidate: ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = std::__cxx11::basic_string; std::string = std::_cxx11::basic_string; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor<std::allocator >]’
157 | Node::declare_parameter(
| ^~~~
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note:   candidate expects 4 arguments, 1 provided
/home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:78:54: error: no matching function for call to ‘Turtlebot3Fake::declare_parameter(const char [18])’
78 |   this->declare_parameter("wheels.separation");
|                                                      ^
In file included from /opt/ros/foxy/include/rclcpp/node.hpp:1224,
from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/include/turtlebot3_fake_node/turtlebot3_fake_node.hpp:21,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:17:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note: candidate: ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = double; std::string = std::_cxx11::basic_string; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor<std::allocator >]’
157 | Node::declare_parameter(
| ^~~~
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note:   candidate expects 4 arguments, 1 provided
/home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:79:50: error: no matching function for call to ‘Turtlebot3Fake::declare_parameter(const char [14])’
79 |   this->declare_parameter("wheels.radius");
|                                                  ^
In file included from /opt/ros/foxy/include/rclcpp/node.hpp:1224,
from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/include/turtlebot3_fake_node/turtlebot3_fake_node.hpp:21,
from /home/riyan/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_fake_node/src/turtlebot3_fake_node.cpp:17:
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note: candidate: ‘auto rclcpp::Node::declare_parameter(const string&, const ParameterT&, const ParameterDescriptor&, bool) [with ParameterT = double; std::string = std::_cxx11::basic_string; rcl_interfaces::msg::ParameterDescriptor = rcl_interfaces::msg::ParameterDescriptor<std::allocator >]’
157 | Node::declare_parameter(
| ^~~~
/opt/ros/foxy/include/rclcpp/node_impl.hpp:157:1: note:   candidate expects 4 arguments, 1 provided
make[2]: *** [CMakeFiles/turtlebot3_fake_node.dir/build.make:63: CMakeFiles/turtlebot3_fake_node.dir/src/turtlebot3_fake_node.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:78: CMakeFiles/turtlebot3_fake_node.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
Failed   <<< turtlebot3_fake_node [15.6s, exited with code 2]
Aborted  <<< turtlebot3_node [26.9s]
Aborted  <<< ld08_driver [16.9s]
Aborted  <<< hls_lfcd_lds_driver [39.2s]
Summary: 9 packages finished [39.7s]
1 package failed: turtlebot3_fake_node
3 packages aborted: hls_lfcd_lds_driver ld08_driver turtlebot3_node
3 packages had stderr output: hls_lfcd_lds_driver turtlebot3_fake_node turtlebot3_node
4 packages not processed
i have face this kind of error please to tell the solution


Remove duplicate "Select" from sidebar

Thanks for catching that. Minor changes like this are better reported as issues rather than PRs. I’ll close this PR, but feel free to tackle something bigger!


Volar adds closing HTML tags in an infinite loop

Hello,
Very often when I cut the closing tag and then paste it - Volar will go crazy and start adding the same closing tag in an infinite loop.
Please see (and listen) detailed reproduction video here:
https://github.com/vuejs/language-tools/assets/7756211/0e17bbeb-ca36-4708-815a-99ff6450efcd
The project itself is bare-bone npm create vue@latest with JSX.
All other extensions were disabled.
I'm using Vue.volar v1.8.27
In VS Code:
Version: 1.86.0-insider (user setup)
Commit: 0b571a26e213bf1ec6266e37152ced80c006bd1e
Date: 2024-01-18T05:36:10.559Z
Electron: 27.2.1
ElectronBuildId: 26149897
Chromium: 118.0.5993.159
Node.js: 18.17.1
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.22621

Please check if this issue has been resolved in version 2.x. If not, feel free to create a new one.


[Bug]: UC 30 Population of a District does not return any results.

Is there an existing issue for this?

[X] I have searched the existing issues

Contact Name
Anton
Description of the bug?
When trying to return Results for a district, all come back with 0 values.
Version
Develop Branch
Steps to Reproduce the Error
Run Report for Total Population of a District.

Code of Conduct

[X] I agree to follow this project's Code of Conduct

changes made to reflect required output.

Merged to Develop


Use smaller version of sample prog run data

The prognostic run report test is slow and sometimes fails (we think due to OOM issues). This PR updates that test to use a lighter-weight version of the test data. Specifically the new data has a time dimension that is about 1/4 as long, and it has fewer data variables. It should hopefully resolve #1885

On latest commit, RAM usage is down to 50% from around 90%. Also runtime is down to ~8 minutes.


Update project

add: Docs created.
add: requirements.txt created.
fix: log_filename file name fixed.
upd: Update all datas.
feat: Added feature to work in the background without opening a browser tab.
fix: The problem caused by Turkish characters in log records has been resolved.
add: Workflows added for automatic update scraping.
Information:
Due to a bottleneck problem at one point in the project, only ~125 of the data can be retrieved. Regarding this, I think it would be healthier to retrieve and parse the data with the fetch method instead of Selenium. I will write this on my profile with GoLang and share it here.

Hello Ramazan, I saw that work on your fork and star history and I was waiting for this PR.
What do you think about ignoring auto-generated log files with adding src/scrapers/logs/* line to .gitignore? Do you think that it is a good practice?

Hi Mert, I have the same opinion. However, since the project is progressing in this way and the error logs regarding the 125 data limit are visible, I have not added it as .gitignore for now. After this error is fixed, .gitignore can be created.

@ramazansancar Hi! I believe this PR only includes the further scraped data, right? I will merge but wanted to say hi before :)

Hi, Improvements to the code include a bit more data being mined.
However, there seems to be a problem with the code that I mentioned in the first message, due to Selenium.
That's why I wanted to ask before changing the code structure. I will update it accordingly and include it in the project.

Hi again, the action has been running for 4 days and due to the same error it cannot scrape all of the data. However, in some cases it progresses and I have seen that it has pulled data for up to 300 people. (Even though it received an error, it continued the process.)
https://github.com/ramazansancar/OzgeOzkaya_AnitSayac/actions/runs/11284613976/job/31386082276#step:6:428

I have published the project. And I have created a workflow that runs itself at 00:00 for UTC+0 so that the data is always up to date. It gives 2 outputs as JSON and CSV. If you would like to review the code and contribute, I will be happy to help. @OzgeOzkaya @mertssmnoglu
In CSV format, there is a problem with column shifting or incorrect entry of some data due to incorrect entry of source site data (15 data in total). However, there is no problem with JSON format.
https://github.com/ramazansancar/AnitSayac_Scrapper
As I mentioned before, I completed it using GoLang technology because it works fast and the number of developers is increasing.
Sorry for the delay :(


Migrator on distributed table Clickhouse driver ignore create index

Describe the feature
Migrator on distributed table Clickhouse driver ignore create index
Motivation
I use clickhouse driver for gorm but gorm do not have option to disableCreateIndex.
Please help me!

https://github.com/go-gorm/clickhouse/issues/42


I found Android studio source code in JetBrains github repos , does this count?

https://github.com/JetBrains/android

Interesting! This seems like something we might want to share, yet. However, we need to figure out how this differs from https://android.googlesource.com/platform/tools/adt/idea/+/refs/heads/mirror-goog-studio-master-dev/ exactly.

Got it , thanks for your reply.

Still worth looking at 😉


Idea: Link from syntax diagram to repo

It's quite tricky to find the right file in this repo esp. if one is not familiar with it. The idea is to include an "Edit on GitHub" button on the syntax diagrams.
Example:
I found a mistake on https://syntax.abaplint.org/?filter=table#/abap/expression/TypeTable (visually):

The edit button should take me to https://github.com/abaplint/abaplint/blob/main/packages/core/src/abap/2_statements/expressions/type_table.ts
PS: I will provide fix separately

fixed, see lower left,


Support dependencies to other Feature Variants (including Test Fixtures)

The main change in this PR is that it adds something I called GradleVariantIdentification to all Coordinates.

On the declaration side (consumer) The GradleVariantIdentification collects all capabilities and attributes that are defined on a dependency. Shortcut notations like platform(...) and testFixtures(...) also add these under the hood.
On the resolved graph side (producer) the GradleVariantIdentification contains all the capabilities of the selected node. The attributes are ignored here as we do not need them (see also comments in code).

With this, the analysis plugin now recognizes the fact that it is possible to have multiple nodes with the same identifier but different GradleVariantIdentification in the graph. This is the case when the capabilities differ. Because it is allowed to have multiple variants of one component in the graph as long as they have different capabilities. For example, there can be two org.example:foo nodes: one with capability org.example:foo and one with capability org.example:foo-test-fixtures.
The most critical impact on the implementation is IMO that there are several places throughout the code base that assume/assumed that Coordinates are comparable for different reasons. We need to be careful now, as different coordinates can mean the same. For example, if I don't declare any capability, the "main" capability is automatically used. The "Declaration Coordinates" then do not have a capability, but the "Resolved Graph Coordinates" will have the "main" capability.
Therefore, several places needed to be touched, but I am confident wit the implementation now. I tried several things before I ended up with this solution (can still be seen in the commit history). What we have now feels most sound and also future-proof. We now collect all information we need to identify a component+variant and then can use this later during advice computation to make decisions. This should cover all "Feature Variant" standard cases. But if we need more information in the future, we can extend what we put into GradleVariantIdentification. (For example, it could also contain 'classifier' information – #342 – if we could somehow get this for 'both sides'.)
I chose the name GradleVariantIdentification as the main thing, because capability already has a different meaning in the context of this plugin. But I am happy to rename that if there are better ideas. 😄
The PR resolves and adds test coverage for:

Resolves #298 🎉
Fixes #836
Gives a alternative solution for #859 (will comment there)
Fixes #841 in so far that there are no more false positives (we still won't be able to suggest classifiers correctly, but that is #342) will comment there

I'd prefer to wait on reviewing this till the other PR gets merged and this rebased.

I did some more manual testing and there still seems to be an issue when the same dependency is declared from different source sets in the same project. I'll see that I provide tests that reproduce this (+ a fix) soon.

With this (actually with #852 already 😬) users might suddenly get more in their reports than before as the plugin is now doing more analysis as before by default. I wonder if there should at least be an opt-out. There were two things I was thinking about. (Which could be done later. But maybe one of them before this is released...)

Should the dependencyAnalysis.issues.only... {} mechanism be extended to allow selective ignoring per source set? Right now, it works for all source sets, but you can not say for example "do everything for main, but ignore for testFixtures".
Should the dependency.analysis.test.analysis=false flag be generalized to something that's configured in the dependencyAnalysis extension and where you with which you can ignore arbitrary source sets (not only test).

Commenting here as I originally asked Jendrik about this.
While trying to roll out the new changes, we were indeed hit by new warnings (which indeed is already true with #852). However, we weren't able to selectively ignore the warnings, other than ignoring all warnings. However, we don't want to lose coverage for main while we are cleaning up test (or any other sourceset). So any mechanism that allows for more selective filtering would be great. I have no strong preference on how that mechanism should work.

Regarding the "opt-out". I prototyped this, that would turn off the whole analysis for a given source set. Either for all or selected projects:
dependencyAnalysis {
    issues {
        all {
            ignoreSourceSet("mockApi")
            ignoreSourceSet("endToEndTest")
        }
    }
}

Can try it out from here: https://github.com/jjohannes/dependency-analysis-android-gradle-plugin/tree/ignore-selected-source-sets
If this is wanted, I can add a few tests and do follow up PR, once this one is integrated.

Regarding the "opt-out".

It would be great if the opt out for all projects was lenient: If a source set is referenced but does not exist in a specific project, simply ignore.

Thanks @autonomousapps! I responded to the comments. Let me know if there are any any concerns left before integrating this.
After this is merged, it would be great if you could also integrate the (small) follow-up in #882 before the next release.


Custom en-queue logic

As a developer, I would like Metac to support custom logic before en-queuing a watch resource.
For example, I want below en-queue condition to be supported by Metac
import (
  "k8s.io/apimachinery/pkg/api/equality"
)

// shouldEnqueueVAChange checks if a changed VolumeAttachment should be enqueued.
//
// It filters out changes in Status.Attach/DetachError - these were posted by the
// controller just few moments ago. If they were enqueued, Attach()/Detach() would
// be called again, breaking exponential backoff.
func shouldEnqueueVAChange(old, new *storage.VolumeAttachment) bool {
	if old.ResourceVersion == new.ResourceVersion {
		// This is most probably periodic sync, enqueue it
		return true
	}

	if new.Status.AttachError == nil &&
		new.Status.DetachError == nil &&
		old.Status.AttachError == nil &&
		old.Status.DetachError == nil {
		// The difference between old and new must be elsewhere than
		// Status.Attach/DetachError
		return true
	}

	sanitized := new.DeepCopy()
	sanitized.ResourceVersion = old.ResourceVersion
	sanitized.Status.AttachError = old.Status.AttachError
	sanitized.Status.DetachError = old.Status.DetachError

	if equality.Semantic.DeepEqual(old, sanitized) {
		// The objects are the same except Status.Attach/DetachError.
		// Don't enqueue them now. Let them be enqueued due to resync
		// i.e. after sync interval
		return false
	}
	return true
}

Metac is coming up with advanced selectors both for watch as well as for attachments. Though selector is purely for the purposes of filtering, IMO it can go a long way to solve the problem statement mentioned in this issue.
In addition, it will be advisable to keep metac away from introducing reconcile specific logic or fragments of these logic into meta controller specifications.
I shall close this issue, once selectors are supported by at-least one of the meta controllers (it will be supported by GenericController to begin with)


[EPIC] Canary releases

From your Roadmap:

Adding a “Canary release” feature

Canary releases are some of Istio’s most frequently utilized features, but they are quite complex and repetitive. Handling traffic routing in Istio custom resources and tracking monitoring errors is something that can be automated. We’d like to create a higher level Canary resource, where configurations can be described and the operator can manage a canary’s whole lifecycle on that basis.

Please strongly consider either adopting or combining efforts with existing flagger istio operator.
Flagger is a Kubernetes operator that automates the promotion of canary deployments using Istio routing for traffic shifting and Prometheus metrics for canary analysis. The canary analysis can be extended with webhooks for running acceptance tests, load tests or any other custom validation.
Plus, all you awesome people deserve to work together anyway. 😉

Oh, we know @stefanprodan and highly regard the work he did with flagger. We don't want to reinvent the wheel - among many PoC we did in this topic it's by far the best solution (flagger, I mean).
Due to some customer constraints, this is off the short 2-4 week roadmap anyways, as our current focus is Istio 1.1 support, seamless version upgrades (even from helm->operator based) and remote clusters.

Hey @matyix thanks for the kind words. Let's have a talk when you get to the canary feature, I'll really like to get your feedback on Flagger. I'm stefanprodan on Kubernetes slack.

After some considerations, we believe that the Istio operator's mere concern is to install (and upgrade) Istio, and nothing else. This is inline with the operator (Kubernetes controller) pattern and follows the separation of concerns paradigm. A different operator should be used for handling canary releases, e.g. Flagger.
You can always install Flagger afterwards and it will work without a problem - or if you are looking for a one shot Istio management tool built on top of this operator (including a UI, CLI, GraphQL API, with Jaeger, Prometheus, Grafana, canary releases and lots more) you might want to try our service mesh product, Backyards.
You can start with the Backyard CLI or read the release announcement.
If you are in quick-start mode and want to have a production Istio environment on a Kubernetes cluster with all the above in minutes just hit: curl https://getbackyards.sh | sh && backyards install -a --run-demo


Bump 0.1.2

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Reset the build number to 0 (if the version changed)

Supersedes #5 and #6.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender


Task type is no longer CSLCompliant

While updating another project that references the 15.1 binaries and has a few classes that derive from Task I started getting errors that those types were not CSLCompliant because the base Task type was not CLSCompliant.
If Task was previously CLSCompliant we probably want to keep it that way, if only so customers don't run into these sorts of errors when updating existing projects to use a newer version of MSBuild.

This should be in #945. Hopefully the binaries you were using were stale and this is resolved?

This was fixed


Evaluating the last cells in a long notebook takes you to the wrong location

If you have a long notebook, un-evaluated, and you evaluate one of the last cells, I think the scrolling is trying to take you across the cells as you scroll, but it doesn't work because the cells evaluation is faster. Perhaps we should only scroll when the cell we asked to evaluate is done?

Actually we don't autoscroll in that case, it's just that the outputs change the positioning, which feels quite jumpy in case you evaluate the last cell and it triggers everything else. In case you want to evaluate all cells of an opened notebook it's most convenient to use the ea shortcut straight away.
I'm not sure if scrolling would be desired for finished evaluation anyway, so far we did it as a result of explicit user actions (like moving cell focus, clicking the evaluation status button, or inserting cell/section). I can imagine scrolling to evaluated cell being annoying, especially if it takes time and you start looking at something else.

Ah yes, I keep forgetting about this :)


Add sidebar

This allows one to add a sidebar (menu, infos, ...) without having to
fork the whole layout.
This was the best way I found to do it, but if you have better solutions ...
feel free to use yours instead.

Is it oke to name it sidebar.html, not sidebar.md ? I prefer .md , because other files are also .md in the project.


feat(categorizeToken): New field to Offer model, for UI display

:tada: This PR is included in version 1.10.0 :tada:
Your semantic-release bot :package::rocket:


Add template for mongoDB cloud and fix online template with degree symbol error

Hello,
This PR adds a template for mongodb cloud invoices.
It fixes also the online.net template that can crash because of the symbol degree °
Thanks.

Great. Merged. Thanks.


Editor GPU: Exception is thrown when resizing sometimes

Repro is to open a file and resize the window ctrl/cmd++/- several times. It doesn't happen all the time.
 ERR Failed to execute 'writeBuffer' on 'GPUQueue': parameter 1 is not of type 'GPUBuffer'.: TypeError: Failed to execute 'writeBuffer' on 'GPUQueue': parameter 1 is not of type 'GPUBuffer'.
    at ViewLinesGpu._updateAtlasStorageBufferAndTexture (vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js:267:32)
    at ViewLinesGpu._renderText (vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js:311:14)
    at ViewLinesGpu.renderText (vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js:304:25)
    at Object.renderText (vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/view.js:437:40)
    at vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/view.js:387:54
    at safeInvokeNoArg (vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/view.js:582:16)
    at View._flushAccumulatedAndRenderNow (vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/view.js:387:22)
    at View.render (vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/view.js:505:18)
    at vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/browser/widget/codeEditor/codeEditorWidget.js:1224:34
    at vscode-file://vscode-app/Users/tyriar/dev/microsoft/vscode/out/vs/editor/common/viewModel/viewModelImpl.js:900:47

Think this is happening since right now there is a hard limit of 2 pages and when resizing in enough, glyphs will will the first 2 pages and overflow to a 3rd+


code divided into functions and improved errors

Hello,
To be able to understand, I rewrote and cut your code.
I realize that even though it's pretty much the same code, I've formatted it a lot.
Hope it doesn't matter.
Check my message strings. I don't know if I have "good English"
(https://discourse.mcneel.com/t/rhino-8-feature-rhinocode-cpython-csharp/128353/186)

merged into pr/1 for review

Merged into main with cleanups and more fixes and published as 0.0.4


Upgrade refactoring to enable Nuget upgrades

Refactor VFS4Git upgrade logic to support upgrade extensibility
This is the first PR of a series of changes to enable upgrade extensibility. In this one, UpgradeOrchestrator and ProductUpgrader are refactored so it becomes easy to incorporate Nuget upgrader in an upcoming PR.
In this PR:

Create a common interface for upgraders to implement (IProductUpgrader). IProductUpgrader encapsulates the API that components need to implement to download upgrade packages from specific feeds. A feed can be a GitHub release or a NuGet feed, for examples.

UpgradeOrchestrator, which contains the logic to drive the upgrade process (including querying for updates, unmounting / remounting repositories, and orchestrating the upgrade process) works against the IProductUpgrader interface. This means the orchestration is agnostic to the specifics of where the upgrade packages are downloaded from and how they are installed.

The existing ProductUpgrader class was renamed to GitHubUpgrader, as this component works against GitHub Releases.

GitHubUpgrader implements IProductUpgrader interface.

In an upcoming PR, a NugetUpgrader component (that also implements IProductUpgrader will be created. This component will know how to download and install upgrade packages from a NuGet feed.

ProductUpgrader implements a factory method that creates an IProductUpgrader instance. It can be GithubUpgrader (or NugetUpgrader in an upcoming PR) based on Local GVFS Configuration.

gvfs upgrade using existing Github/release upgrade works. UT also work.

End-to-End
The features/upgrade_extensibility branch contains a preview of the end-to-end functionality. It includes a rough version of the upgrader that works with a NuGet feed. It can be used as a guide to see how we envision other upgraders to plug into the scaffolding being built in this PR.

Is it possible to do that as a single commit so we see the diffs there easier?

@alameenshah thanks for rearranging the patch series. Other reviewers, please go commit by commit to avoid the rename noise.

Still trying to understand a lot of these changes but wanted to bring up one big question for me. Should there be a ProductUpgrader abstract base class instead of the interface and factory class? Seems like there is going to be shared code and this should make it trivial to create the NugetUpgrader.

In this PR the goal has been to focus on re-structuring existing code to facilitate easy incorporation of upcoming NugetUpgrader changes. NugetUpgrader is coming in the next PR. Once we know the details of NugetUpgrader, we can absolutely consider consolidating redundant code either in a common base class or use composition.

[kewillford] Should there be a ProductUpgrader abstract base class instead of the interface and factory class? Seems like there is going to be shared code and this should make it trivial to create the NugetUpgrader.

[alameenshah] In this PR the goal has been to focus on re-structuring existing code to facilitate easy incorporation of upcoming NugetUpgrader changes. NugetUpgrader is coming in the next PR. Once we know the details of NugetUpgrader, we can absolutely consider consolidating redundant code either in a common base class or use composition.

If we don't know the design\details of NugetUpgrader well enough yet to decide what should be moved to a base class should we hold off on re-structuring the existing code?
Without an understanding of the design NugetUpgrader it's difficult to evaluate how well the changes in this PR are achieving their goal of making it easier to incorporate the upcoming NugetUpgrader.

There is a prototype of the NugetUpgrader in the features/upgrade_extensibilty branch, in particular commit  fbc096. It should give an idea of the code common to both upgrades (currently in ProductUpgradetupgrader.cs, but as @alameenshah mentioned, maybe composition would be a better fit) and how another upgrader can be added with no (or minimal) changes to UpgradeOrchestrater. Hopefully that gives an idea of how everything can fit together.
The idea was this change focused on the interaction between UpgradeOrchestrator and the "upgrader" implementations. The next pr will look at the details of the ypgrader and how to share common code. If there is feedback on how we  could improve the API that the "Upgrader" components expose, I think that would be a valuable.
/cc @wilbaker @kewillford

The idea was this change focused on the interaction between UpgradeOrchestrator and the "upgrader" implementations. The next pr will look at the details of the ypgrader and how to share common code. If there is feedback on how we could improve the API that the "Upgrader" components expose, I think that would be a valuable.

@jamill @alameenshah ok thanks! It sounds like I wasn't focusing on the important part of this PR.  I will focus on the UpgradeOrchestrator <-> "upgrader" interactions.

To give an idea of how much is common between Nuget and Github upgraders - adding a comparison table below of IProductUpgrader interface methods and how they are implemented in this PR vs in the Nuget prototype branch (features/upgrade_extensibilty).

IProductUpgrader  method
GitHubUpgrader
NugetUpgrader
Commonality

CanRunUsingCurrentConfig
Checks upgrade.ring config to decide
Checks feed URL, Credentials for Nuget & FeedName
No commonality

Initialize
Empty placeholder
Empty placeholder
Unused by both, can possibly be removed

TryGetNewerVersion
Uses GitHub REST API to fetch new releases Json
Uses Nuget Protocol (IPackageSearchMetadata) to get release info
No commonality

TryGetGitVersion
Version info is read from Installer filename
Version info contained in a Manifest file. (Don’t know if this implementation is final.)
No commonality

TryDownloadNewestVersion
Downloads Upgrade Assets using GitHub API
Downloads package zip using Nuget API and extracts the zip file to final destination
No commonality

TryRunInstaller
Runs Git and GVFS installers only
Iterates through all installers contained in the package
Code to run installer exes can be isolated into a utility class and used by both Upgraders

TryCleanup
Deletes the downloaded assets after successful upgrade
Not implemented
Can potentially be common

CleanupDownloadDirectory
Deletes download directory
Not implemented
Possibly Common

TrySetupToolsDirectory
Copies upgrader tool and dependent assemblies to Temporary directory
Copies upgrader tool and dependent assemblies to Temporary directory
Common