SRRS experiencing disconnect from server

Describe the bug
Hannah Schumann at SRRS reported trouble submitting metadata

I updated the HTAN15_300007 file and it passed validation, but It’s having trouble uploading. It’s taking much longer than it should for such a small data file it’s only 18 KB. I attached it above. I’ve tried three times now and it keeps disconnecting from the SYAPSE Server after about a minute or so. I’m not quite sure what is going on. We might have to reach out to them tomorrow to see if we can figure out what the issue is.

@adamjtaylor pulled the Shiny logs from this event (below).
2022-09-27T05:18:48.453695+00:00 shinyapps[5806160]: https://python-docs.synapse.org/build/html/news.html
2022-09-27T05:18:48.453731+00:00 shinyapps[5806160]: Welcome, goerg!
2022-09-27T05:18:48.453775+00:00 shinyapps[5806160]:
2022-09-27T05:18:48.453811+00:00 shinyapps[5806160]:
2022-09-27T05:18:48.453850+00:00 shinyapps[5806160]: INFO: [2022-09-27 05:18:47] synapseclient_default - Welcome, goerg!
2022-09-27T05:18:48.453885+00:00 shinyapps[5806160]:
2022-09-27T05:18:48.453918+00:00 shinyapps[5806160]:
2022-09-27T05:18:48.453979+00:00 shinyapps[5806160]: Listening on http://<IP_ADDRESS>:41223
2022-09-27T05:19:56.455645+00:00 shinyapps[5806160]: Warning: Setting row names on a tibble is deprecated.
2022-09-27T05:20:07.453382+00:00 shinyapps[5806160]: Warning: Setting row names on a tibble is deprecated.
2022-09-27T05:20:39.458481+00:00 shinyapps[5806160]: Warning: Error in py_call_impl: KeyError: 'AdjacentBiospecimenIDs'
2022-09-27T05:20:39.458580+00:00 shinyapps[5806160]: Detailed traceback:
2022-09-27T05:20:39.458533+00:00 shinyapps[5806160]:
2022-09-27T05:20:39.458627+00:00 shinyapps[5806160]:   File "/srv/connect/apps/HTAN-data-curator/.venv/lib/python3.8/site-packages/schematic/store/synapse.py", line 843, in associateMetadataWithFiles
2022-09-27T05:20:39.458674+00:00 shinyapps[5806160]:     annos = self.format_row_annotations(se, row, entityId, useSchemaLabel, hideBlanks)
2022-09-27T05:20:39.458786+00:00 shinyapps[5806160]:   File "/srv/connect/apps/HTAN-data-curator/.venv/lib/python3.8/site-packages/schematic/schemas/explorer.py", line 431, in get_class_validation_rules
2022-09-27T05:20:39.458817+00:00 shinyapps[5806160]:     class_info = self.explore_class(class_label)
2022-09-27T05:20:39.458856+00:00 shinyapps[5806160]:   File "/srv/connect/apps/HTAN-data-curator/.venv/lib/python3.8/site-packages/schematic/schemas/explorer.py", line 332, in explore_class
2022-09-27T05:20:39.458935+00:00 shinyapps[5806160]:   File "/srv/connect/ap [... truncated]
2022-09-27T05:20:39.458720+00:00 shinyapps[5806160]:   File "/srv/connect/apps/HTAN-data-curator/.venv/lib/python3.8/site-packages/schematic/store/synapse.py", line 684, in format_row_annotations
2022-09-27T05:20:39.458977+00:00 shinyapps[5806160]:   [No stack trace available]
2022-09-27T05:20:39.458895+00:00 shinyapps[5806160]:     if "subClassOf" in self.schema_nx.nodes[schema_class]:
2022-09-27T05:20:39.458754+00:00 shinyapps[5806160]:     elif isinstance(anno_v,str) and re.fullmatch(csv_list_regex, anno_v) and 'list' in se.get_class_validation_rules(anno_k):
2022-09-27T05:51:02.453405+00:00 shinyapps[5806160]: Container event from container-6952126: stop

Priority (select one)

[x] Critical 🆘

Screenshots
If applicable, add screenshots to help explain your problem.
Screen shot provided by Hannah

I think this is a duplicate of #22, fixed in #26  - however this hasn't been deployed to prod yet because of the table conversion scheduled for next week.

Currently manifest fails validation with error procesing days from index cannot be 'unknown'
It is required and validated by an int validation rule
In manifest there are unknown high numbers eg 24030 and 0 -  which could be a valid value if processed on day of patients birth but seems unlikely

Closing this issue as I think it has been resolved.


dict.get(key[, default]) not implemented ?

dict.get seems to not being implemented.
I suppose this is a choice, but it is useful when a default value is needed. There is a recommended code replacement ?
choices = {
    'a':1,
    'b':2,
    'c':3
}

choices.get('d', 4) # => TypeError: choices.get is not a function

Thanks for the suggestion, dict.get will be added in the next commit.

Committed and pip-installable as 3.5.232


chore(main): release 1.1.0

:robot: I have created a release beep boop
1.1.0 (2023-11-15)
Features

improvement basalt-helper more SOLID (4c28d7b)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/Basalt-Lab/basalt-helper/releases/tag/v1.1.0 :sunflower:


how can I combine 2 dataset with different/same features?

to combine 2 dataset by one-one map like ds = zip(ds1, ds2):
ds1: {'text'}, ds2: {'text'}, combine ds:{'src', 'tgt'}
or different feature:
ds1: {'src'}, ds2: {'tgt'}, combine ds:{'src', 'tgt'}

Hi ! Currently we don't have a way to zip datasets but we plan to add this soon :)
For now you'll need to use map to add the fields from one dataset to the other. See the comment here for more info : https://github.com/huggingface/datasets/issues/853#issuecomment-727872188

Hi ! Currently we don't have a way to zip datasets but we plan to add this soon :)
For now you'll need to use map to add the fields from one dataset to the other. See the comment here for more info : https://github.com/huggingface/datasets/issues/853#issuecomment-727872188

Good to hear.
Currently I did not use map , just fetch src and tgt from the 2 dataset and merge them.
It will be a release if you can deal with it at the backend.
Thanks.

Good to hear.
Currently I did not use map , just fetch src and tgt from the 2 dataset and merge them.
It will be a release if you can deal with it at the backend.
Thanks.


err

[root@k8s-node5 ~]# docker logs 6672c9ad9c7b
Watching for file changes with StatReloader
[INFO][2023-04-11 22:07:40,701][autoreload.py:637]Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
April 11, 2023 - 22:07:40
Django version 3.2.18, using settings 'stealer.settings'
Starting development server at http://<IP_ADDRESS>:8000/
Quit the server with CONTROL-C.
[11/Apr/2023 22:07:56] "GET / HTTP/1.1" 200 638
[11/Apr/2023 22:07:56] "GET /static/js/manifest.2ae2e69a05c33dfc65f8.js HTTP/1.1" 200 857
[11/Apr/2023 22:07:56] "GET /static/js/app.b1580297df35fe4dd0fb.js HTTP/1.1" 200 8914
[11/Apr/2023 22:07:56] "GET /static/css/app.4188e923994bfdb7fc8221bd72a8a5f9.css HTTP/1.1" 200 241564
[11/Apr/2023 22:07:57] "GET /static/js/vendor.e4fa7f252e45c6d3ca11.js HTTP/1.1" 200 939253
[11/Apr/2023 22:07:57] "GET /static/img/logo.dc93bc7.png HTTP/1.1" 200 47972
[11/Apr/2023 22:07:57] "GET /static/fonts/element-icons.535877f.woff HTTP/1.1" 200 28200
Not Found: /favicon.ico
[WARNING][2023-04-11 22:07:57,408][log.py:230]Not Found: /favicon.ico
[11/Apr/2023 22:07:57] "GET /favicon.ico HTTP/1.1" 404 2343
[11/Apr/2023 22:07:57] "GET /static/favicon.ico HTTP/1.1" 200 7219
[INFO][2023-04-11 22:09:12,456][controller.py:31]get douyin video info ==> https://v.douyin.com/Avr3Bpf.
[DEBUG][2023-04-11 22:09:12,460][connectionpool.py:1007]Starting new HTTPS connection (1): v.douyin.com:443
[DEBUG][2023-04-11 22:09:12,554][connectionpool.py:465]https://v.douyin.com:443 "GET /Avr3Bpf HTTP/1.1" 302 358
[DEBUG][2023-04-11 22:09:12,556][connectionpool.py:1007]Starting new HTTPS connection (1): www.iesdouyin.com:443
[DEBUG][2023-04-11 22:09:12,632][connectionpool.py:465]https://www.iesdouyin.com:443 "GET /share/video/7212918206074309899/?region=CN&mid=7199918425762335546&u_code=0&did=MS4wLjABAAAAg7fuuuOV7SlhjO-EnMaKX7xPL2mDy0SLBn2fer9kOrY6qVhxLD-72lg5uDn2dHm4&iid=MS4wLjABAAAANwkJuWIRFOzg5uCpDRpMj4OX-QryoDgn-yYlXQnRwQQ&with_sec_did=1&titleType=title&from_ssr=1&from=web_code_link HTTP/1.1" 200 None
[DEBUG][2023-04-11 22:09:12,645][connectionpool.py:1007]Starting new HTTPS connection (1): www.douyin.com:443
[DEBUG][2023-04-11 22:09:12,849][connectionpool.py:465]https://www.douyin.com:443 "GET /video/7212918206074309899?previous_page=app_code_link HTTP/1.1" 200 None
[11/Apr/2023 22:09:13] "GET /video/info?url=0.02%20qEu:/%20%E7%BC%A0%E4%BD%8F%E5%90%BB%E4%BD%8F%E6%98%A5%E9%A3%8E%E5%90%B9%E4%BD%8F%E6%88%91%E5%90%97%20%E6%98%A5%E9%A3%8E%E5%90%B9%E4%BD%8F%E4%BA%86%E6%85%A2%E5%8A%A8%E4%BD%9C%20%20https://v.douyin.com/Avr3Bpf/%20%E5%A4%8D%E5%88%B6%E6%AD%A4%E9%93%BE%E6%8E%A5%EF%BC%8C%E6%89%93%E5%BC%80Dou%E9%9F%B3%E6%90%9C%E7%B4%A2%EF%BC%8C%E7%9B%B4%E6%8E%A5%E8%A7%82%E7%9C%8B%E8%A7%86%E9%A2%91%EF%BC%81 HTTP/1.1" 200 456
[INFO][2023-04-11 22:09:15,686][controller.py:58]download douyin ==> 缠住吻住春风吹住我吗#春风吹住了慢动作.
Internal Server Error: /video/download
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/django/core/handlers/exception.py", line 47, in inner
response = get_response(request)
File "/usr/local/lib/python3.7/site-packages/django/core/handlers/base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/code/route/controller.py", line 59, in download_file
return vid_download.download(info)
File "/code/core/vid_download.py", line 20, in download
file = store.find_file(info.platform, info.filename)
File "/code/tools/store.py", line 30, in find_file
filename = make_path(vtype.value, filename)
File "/code/tools/store.py", line 25, in make_path
os.mkdir(path)
FileNotFoundError: [Errno 2] No such file or directory: 'video/douyin'
[ERROR][2023-04-11 22:09:15,750][log.py:230]Internal Server Error: /video/download
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/django/core/handlers/exception.py", line 47, in inner
response = get_response(request)
File "/usr/local/lib/python3.7/site-packages/django/core/handlers/base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/code/route/controller.py", line 59, in download_file
return vid_download.download(info)
File "/code/core/vid_download.py", line 20, in download
file = store.find_file(info.platform, info.filename)
File "/code/tools/store.py", line 30, in find_file
filename = make_path(vtype.value, filename)
File "/code/tools/store.py", line 25, in make_path
os.mkdir(path)
FileNotFoundError: [Errno 2] No such file or directory: 'video/douyin'
[11/Apr/2023 22:09:15] "GET /video/download?token=douyinbad68c2f088d773d37815a33787d9616 HTTP/1.1" 500 72029

1

改好了，自动创建


Choosing Data from an array of  objects

Hi,
This is a question. If I have an array of objects, how can I retrieve the entire object. Say, if I have data like
[
{ value: 'a', associated_data: { name: 'PSG', type: 'Mbappe} },
{ value: 'b', associated_data: { name: 'PSG', type: 'Neymar} }
]
So, the primary functionality I am looking for is if I select say 'a' from the dropdown, it should retrieve its associated_data for me. Can that be done?
Thanks

Nevermind. Got it.


Board Version is Blank

For my motherboard, the /sys/devices/virtual/dmi/id/board_version file is blank.
# python3 generate_data.py
request error: Bad Request
{"board":{"version":["This field may not be blank."]}}

# cat /sys/devices/virtual/dmi/id/...
board_name
B550 Phantom Gaming 4
board_vendor
ASRock
board_version

bios_date
08/02/2021
bios_release
5.17
bios_vendor
American Megatrends International, LLC.
bios_version
P2.10

Thanks for raising the issue, I'll get a fix out soon. Having blank or missing fields in the hardware is more common than I expected.

Could you please send the output of ls /sys/devices/virtual/dmi/id/
and if there are product keys send  cat /sys/devices/virtual/dmi/id/product_*

sorry @mkoreneff, I sold this PC over the weekend.

I will be setting up a new one with another B550 motherboard. Will raise an issue if one comes up, or otherwise be posting to the database!

Not a problem, I can work with the board_name as shown. Should be fine to
use that instead of board_version
On Mon, 28 Nov 2022, 00:07 Vincent Saelzler, @.***>
wrote:

I will be setting up a new one with another B550 motherboard. Will raise
an issue if one comes up, or otherwise be posting to the database!
—
Reply to this email directly, view it on GitHub
https://github.com/mkoreneff/iommu_info_generate/issues/2#issuecomment-1328376826,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACCQDJLT4ZRYE3K3YADA3MLWKPZUNANCNFSM6AAAAAARWZHQMQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

I made a release on the API, board_version is now optional


What about latency? Can it be done in realtime?

Thank you for your work. I couldn't find any information about the algorithm's running speed, so I would like to ask

A single forward pass of the HaMeR network on a crop of a hand requires ~32ms on an RTX 3090. This doesn't include the hand detection part or the rendering of the demo.

A single forward pass of the HaMeR network on a crop of a hand requires ~32ms on an RTX 3090. This doesn't include the hand detection part or the rendering of the demo.

What is the overall fps actually? I have been running this on a single Tesla T4, but it seems it takes around 3.8~4 seconds to process one image.

A single forward pass of the HaMeR network on a crop of a hand requires ~32ms on an RTX 3090. This doesn't include the hand detection part or the rendering of the demo.

What is the overall fps actually? I have been running this on a single Tesla T4, but it seems it takes around 3.8~4 seconds to process one image.

Hi! Have you solved this problem, cuz I got like 0.5Hz generation speed on 3090. Thx in advance!


[Bug] A patch for a DoS vulnerability needs to be applied

There is a critical Move VM vulnerability that has been fixed by Sui move and Aptos move, but this project has not fix that vulnerability.
In addition to Sui and Aptos, some blockchains are also using the Move virtual machine.
Sui move patch link
https://github.com/MystenLabs/sui/commit/8b681515c0cf435df2a54198a28ab4ef574d202b
Aptos move patch link
https://github.com/aptos-labs/aptos-core/commit/47a0391c612407fe0b1051ef658a29e35d986963
credit : poetyellow from Beosin

Thanks for the report @poetyellow! Patch has been landed so closing this out.


disabling logging complete tasks

There is no setting for disabling logging complete tasks on DB.

python manage.py process_tasks --settings vc1_project.settings --traceback --log-file log/worker.log --log-level DEBUG

I think the OP wants to set it so that completed tasks are not saved on the db in the tasks completed table.
We have a similar issue in that we have lots of tasks... we're on 12000+ completed tasks already. It's going to start clogging up our database...

+1

+1

django-redis comes with compression support out of the box, but is deactivated by default. You can activate it setting up a concrete backend:
But it is not deactivated by default.

Why not creating a repetitive task that removes the completed tasks from time to time?


Trophy case has been going on for long enough: enough people have tried fuzzing now?

Hi. Near the top of the README, you wrote:
"These bugs aren't nearly as serious as the memory-safety issues afl has discovered in C and C++ projects. That's because Rust is memory-safe by default, but also because not many people have tried fuzzing yet!" [Emphasis mine]
This was added back in April 2017, which is almost two years and a half ago, now. I personally think that would start being long enough (plus, the list is getting pretty long too) to remove that "not many people have tried fuzzing yet" and potentially add some comment instead on the effectiveness (it seems) of Rust's memory safety guarantees for security bugs. (If not, then at least some kind of discussion here on when will be "long enough" for that would be valuable...)

Yep, good catch. Thanks!


Removing the limit of 75 fields on Payment object to be used in Donations > Payment Mappings

Critical Changes
Changes
We removed a control that limited the quantity of fields in Payment Object to 75.
Issues Closed
Community Ideas Delivered
New Metadata
Deleted Metadata

@dcaballeroSf Did you mean to close this PR and delete the branch?


Add gpx as application/gpx+xml

Thank you!

Thank you for merging! When do you expect a new NuGet release?


Allows re-ordering of data providers in the main menu

with implementation of Add an option to remember last opened data provider #65 and ability to disable data providers completely (#60 ), this is no longer adding any real value hence closing


Application zip package is too large for AWS Lambda.

Context
I'm testing a deployment to Lambda for a flask app. I created a new flask app with one file run.py and ran zappa init and then zappa deploy dev. I receive the following client error:
ClientError: An error occurred (InvalidParameterValueException) when calling the CreateFunction operation: Unzipped size must be smaller than 262144000 bytes

Zappa says the zipped package is 156.5MB, however, the unzipped directory is only 15MB.
My requirements.txt contains one entry Flask==0.10.1.
Any ideas about what's going on here would be super helpful.

Are you in a venv?

You should check out the slim_handler setting now.


Fix Octavia typo

What this PR does / why we need it:
Fixes a typo in the Octavia logs, specifically replacing  listenserID with listenerID
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): N/A
Special notes for your reviewer:
None
Release note:

NONE

/test cloud-provider-openstack-acceptance-test-e2e-conformance-stable-branch-v1.11

/approve


Small description change

Small description change to avoid confusion because is not made using 'deployer'

Thanks again for your contributions 👍


Updated packages, case sensitive rename, configuration overloads

I've corrected the casing on everything - including assembly name and nuget.

Thanks!


Make PromptNode and PromptElement types more React-like

This PR makes PromptNode and PromptElement  types more similar to React.ReactNode and React.ReactElement, respectively. That is, the PromptElement type now encapsulates all the internal object representations of elements created through Prompt.createElement and JSX transpilation, and PromptNode now encapsulates all types that can be rendered (the PromptElement type in addition to literal types like strings and numbers).
Fixing these types allows some Array.prototype.flat() calls that were used to wrangle with Typescript to be removed.
NOTE: This change may require changing the return types of Priompt components from PromptElement to PromptNode. For example, the following would cause a type error because the PromptElement type does not include strings, even though ExamplePrompt is a renderable component.
function ExamplePrompt(): PromptElement {
  return "Hello!";
}

Changing the PromptElement type to PromptNode would fix this type error.

looks good otherwise i think!
in general a bit worried about refactors since every single part of our production code relies on priompt, and even well-intentioned and well-thought-through refactors have a risk of introducing bugs (sometimes just because the previous implementation was buggy and other code unintentionally relied on that specific bugginess!)

looks good otherwise i think!
in general a bit worried about refactors since every single part of our production code relies on priompt, and even well-intentioned and well-thought-through refactors have a risk of introducing bugs (sometimes just because the previous implementation was buggy and other code unintentionally relied on that specific bugginess!)

Understand this completely! I've tried to keep the changes as minimal as possible and focused on just making Priompt's element types more similar to React's. There aren't any significant logic changes other than removing .flat() from some children props and the bugs in computePriorityLevels, validateNotBothAbsoluteAndRelativePriority, and validateNoChildrenHigherPriorityThanParent you highlighted.


Add compute-to-data example code

This will help as part of stabilizing Compute to Data.
Improve onboarding for compute-to-data by reviving the README flow.
https://github.com/oceanprotocol/ocean.py/blob/master/READMEs/compute-flow.md

Doing this will also help for #8 "Epic: datatokens demo showing data science flow"

Doing this will also help for #8 "Epic: datatokens demo showing data science flow"

no, please not more READMEs. There should be a proper compute-to-date example, see https://github.com/oceanprotocol/ocean.py/issues/113

no, please not more READMEs. There should be a proper compute-to-date example, see https://github.com/oceanprotocol/ocean.py/issues/113

please not more README
I'm fine with not forcing this to be a README. it could be in docs.oceanprotocol.com. Though if it's there it will be harder to maintain and keep accurate than in here. And if in here, how do you do it if it isn't a README?

see #113
I don't see the connection with #113. That is for developers wanting to improve ocean.py itself. Whereas this issue is for people wanting to simply use ocean.py.

please not more README
I'm fine with not forcing this to be a README. it could be in docs.oceanprotocol.com. Though if it's there it will be harder to maintain and keep accurate than in here. And if in here, how do you do it if it isn't a README?

see #113
I don't see the connection with #113. That is for developers wanting to improve ocean.py itself. Whereas this issue is for people wanting to simply use ocean.py.

added 2 use cases to #113, but agree it should focus on the develop ocean.py instructions.
Think the main issue is that mixup of docs & examples. As a developer I expect example code to run, so having that in markdown is not that useful. Also makes it hard to auto-verify it on code changes and then we end up quickly with wrong code examples as the codebase progresses.
So my suggestion would be that every example file can be run, with instructions on how to do so in one readme in examples folder. So all the various documents in the READMEs folder should be extracted into the example folder.
As for only compute-to-data, we kinda have this here https://github.com/oceanprotocol/ocean.py/blob/master/READMEs/compute-flow.md
But in the end it should be a runnable example referenced from the main examples readme. Then we do not need a dedicated compute flow doc with code examples in it

added 2 use cases to #113, but agree it should focus on the develop ocean.py instructions.
Think the main issue is that mixup of docs & examples. As a developer I expect example code to run, so having that in markdown is not that useful. Also makes it hard to auto-verify it on code changes and then we end up quickly with wrong code examples as the codebase progresses.
So my suggestion would be that every example file can be run, with instructions on how to do so in one readme in examples folder. So all the various documents in the READMEs folder should be extracted into the example folder.
As for only compute-to-data, we kinda have this here https://github.com/oceanprotocol/ocean.py/blob/master/READMEs/compute-flow.md
But in the end it should be a runnable example referenced from the main examples readme. Then we do not need a dedicated compute flow doc with code examples in it

but agree it should focus on the develop ocean.py instructions.

:)

As for only compute-to-data, we kinda have this here
https://github.com/oceanprotocol/ocean.py/blob/master/READMEs/compute-flow.md

Yep. But it's obsolete. The original name of this ticket was about reviving exactly that code:)

Think the main issue is that mixup of docs & examples ... [more]

This is the crux of the issue, I think.

One extreme is simply a .md with a mix of text and code. Pro: ease of understanding, which is the main point of a README. Con: can't easily copy-and-paste all code. Con: hard to keep code up-to-date / maintained.
Opposite extreme: separate .py code files and markdown files. Pro: can easily copy-and-paste all code, easier to keep code up-to-date / maintained. Con: not easy to follow because text and code is in two separate places, which hurts understanding / onboarding, the whole point of READMEs.

Is there a good technical way to solve this? E.g. is there markdown which can refer to specific sections of code that gets auto-updated?

but agree it should focus on the develop ocean.py instructions.

:)

As for only compute-to-data, we kinda have this here
https://github.com/oceanprotocol/ocean.py/blob/master/READMEs/compute-flow.md

Yep. But it's obsolete. The original name of this ticket was about reviving exactly that code:)

Think the main issue is that mixup of docs & examples ... [more]

This is the crux of the issue, I think.

One extreme is simply a .md with a mix of text and code. Pro: ease of understanding, which is the main point of a README. Con: can't easily copy-and-paste all code. Con: hard to keep code up-to-date / maintained.
Opposite extreme: separate .py code files and markdown files. Pro: can easily copy-and-paste all code, easier to keep code up-to-date / maintained. Con: not easy to follow because text and code is in two separate places, which hurts understanding / onboarding, the whole point of READMEs.

Is there a good technical way to solve this? E.g. is there markdown which can refer to specific sections of code that gets auto-updated?

@trentmc

Is there a good technical way to solve this? E.g. is there markdown which can refer to specific sections of code that gets auto-updated?

We can use Jupyter Notebooks. Github Supports markdown and its executable.

We can use Jupyter Notebooks. Github Supports markdown and its executable.

I don't understand how Jupyter would refer to specific sections of code that get auto-updated.
I just googled around. This is more what I was hoping would exist - it seems that it does:)
https://github.com/BurdetteLamar/markdown_helper#whats-a-markdown-helper
"File inclusion: to include text from other files, as code-block or markdown."

More comments.
I like Jupyter. But I'm on the fence whether we should use it here.
For this, I see it as a tradeoff of: extra friction to go to Jupyter (vs Github readme), versus how much better experience the user has once in Jupyter (vs readme). (edited)
Here's a couple datapoints to compare

scikit learn: https://scikit-learn.org/stable/modules/linear_model.html#lars-lasso
tensorflow: https://www.tensorflow.org/tutorials/quickstart/beginner (edited)

Another datapoint: we are hoping to move from README-heavy docs to proper readthefile type docs. Here's the issue. Scikit-learn and tensorflow follow that shape as well a bit.

I now have enough to do the next issue. We can close this one.


⚠ ClamAV has degraded performance

In 6243634, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 192 ms

Resolved: ClamAV performance has improved in 3365962 after 6 minutes.


Microsoft/Typescript directory in home directory

VSCode Version: 1.7.2
OS Version: Ubuntu 16.04

I have yet to find out how to reproduce this, but VS Code creates a Microsoft/TypeScript/node_modules/ directory with the types-registry npm module in it in the home directory.
The package readme says

This is the source code for the types-publisher service, which publishes the contents of DefinitelyTyped to npm.

I never set anything to be shared or published. So what exactly is this and what does it do?

Steps to reproduce:

open VS Code
open any JavaScript file

It only happens for the first JS file that is opened. Could be a bug, too.

I guess this is from the automatic typings acquisition in recent versions of TypeScript. @Instagit Are you saying the folder is under ~/Microsoft?

@chrmarti is correct - this is location of global cache for acquired type declarations. These files are downloaded on user machine to power JavaScript intelligence and never uploaded anywhere.

@vladima What are the paths that are used for this cache on the different platforms? I think on Linux it might make sense to used a folder name with a leading '.' to hide it from default ls and file explorer behavior - like other tools do. /cc @Tyriar

Now that you mention this I have this too. We should absolutely not be putting the types in ~/Microsoft. $XDG_CACHE_HOME/typescript would probably make the most sense, where $XDG_CACHE_HOME defaulting to $HOME/.cache if it is not defined as per the XDG Base Directory Specification.
@vladima this is actually quite bad imo, is this a purely upstream problem?

This issue was moved to Microsoft/TypeScript#12674

Let's keep this open on vscode to track it. I'd like to mention the fix in release notes when it comes.

This is going into TypeScript 2.2, so we will not be picking it up in VSCode 1.8. You can install a TS 2.2 insiders build to your workspace to work around this for now.


When a single-node cluster reboots, mongo vanishes

Similarly to https://github.com/flynn/flynn/issues/3552 my MongoDB dies when I restart a single node cluster. I've an app requiring MongoDB and would really love to continue using Flynn.
However, I think a node should withstand a reboot without having to rebuild the entire stack.
flynn -a appname mongodb mongo results in the following:
connecting to: leader.mongodb.discoverd:27017/f1716ca9bbaa2ac8e3ced9c306f0226e
2016-10-25T06:15:32.412+0000 I NETWORK  [thread1] getaddrinfo("leader.mongodb.discoverd") failed: Name or service not known
2016-10-25T06:15:32.420+0000 E QUERY    [thread1] Error: couldn't initialize connection to host leader.mongodb.discoverd, address is invalid :
connect@src/mongo/shell/mongo.js:231:14
@(connect):1:6```

This is the collect-debug-info gist from immediately after the reboot: https://gist.github.com/6d445d26b52847cfc5aac7950bc99a2b

I've tried applying flynn-host fix -n 1. Unfortunately, some segmentation violation occurs upon that process:

root@ubuntu-2gb-fra1-01:~# flynn-host fix -n 1
INFO[10-25|06:18:59] found expected hosts                     n=1
INFO[10-25|06:18:59] ensuring discoverd is running on all hosts
INFO[10-25|06:19:00] checking flannel
INFO[10-25|06:19:00] flannel looks good
INFO[10-25|06:19:00] waiting for discoverd to be available
INFO[10-25|06:19:00] checking for running controller API
INFO[10-25|06:19:00] found running controller API instances   n=1
INFO[10-25|06:19:00] found controller instance, checking critical formations
INFO[10-25|06:19:00] checking status of sirenia databases
INFO[10-25|06:19:00] checking for database state              db=postgres
INFO[10-25|06:19:00] checking sirenia cluster status          fn=FixSirenia service=postgres
INFO[10-25|06:19:00] found running leader                     fn=FixSirenia service=postgres
INFO[10-25|06:19:00] found running instances                  fn=FixSirenia service=postgres count=1
INFO[10-25|06:19:00] getting sirenia status                   fn=FixSirenia service=postgres
INFO[10-25|06:19:00] cluster claims to be read-write          fn=FixSirenia service=postgres
INFO[10-25|06:19:00] checking for database state              db=mariadb
INFO[10-25|06:19:00] skipping recovery of db, no state in discoverd db=mariadb
INFO[10-25|06:19:00] checking for database state              db=mongodb
INFO[10-25|06:19:00] checking sirenia cluster status          fn=FixSirenia service=mongodb
INFO[10-25|06:19:00] no running leader                        fn=FixSirenia service=mongodb
INFO[10-25|06:19:00] found running instances                  fn=FixSirenia service=mongodb count=3
INFO[10-25|06:19:00] getting sirenia status                   fn=FixSirenia service=mongodb
INFO[10-25|06:19:00] getting service metadata                 fn=FixSirenia service=mongodb
INFO[10-25|06:19:00] getting primary job info                 fn=FixSirenia service=mongodb job.id=ubuntu2gbfra101-1b4397fc-163d-4a51-8523-f986dbab606b
INFO[10-25|06:19:00] terminating unassigned sirenia instances fn=FixSirenia service=mongodb
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x729021]
goroutine 1 [running]:
panic(0xb20da0, 0xc4200100a0)
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/util/_toolchain/go/src/runtime/panic.go:500 +0x1a1
github.com/flynn/flynn/pkg/shutdown.(*handler).exit(0xc420015410, 0x0, 0x0, 0x0, 0xb20da0, 0xc4200100a0)
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/pkg/shutdown/handler.go:69 +0x222
github.com/flynn/flynn/pkg/shutdown.Exit()
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/pkg/shutdown/handler.go:40 +0x6a
panic(0xb20da0, 0xc4200100a0)
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/util/_toolchain/go/src/runtime/panic.go:458 +0x243
github.com/flynn/flynn/host/fixer.(*ClusterFixer).FixSirenia(0xc42016ec90, 0xbeb8ce, 0x7, 0x0, 0x2)
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/host/fixer/sirenia.go:111 +0xbe1
github.com/flynn/flynn/host/fixer.(*ClusterFixer).Run(0xc42016ec90, 0xc42028b060, 0xc42028b0c0, 0x0, 0xc42028b0c0)
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/host/fixer/fixer.go:122 +0x1089
github.com/flynn/flynn/host/fixer.(*ClusterFixer).Run-fm(0xc42028b060, 0xc42028b0c0, 0xc4200d7170, 0x3)
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/host/cli/fix.go:8 +0x3e
github.com/flynn/flynn/host/cli.Run(0x7ffc633898cf, 0x3, 0xc420209ba0, 0x2, 0x2, 0xc4201d7c01, 0xc68ce8)
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/host/cli/cli.go:57 +0x3ca
main.main()
/tmp/tmp.Qxrkc8u1kZ/src/github.com/flynn/flynn/host/host.go:149 +0x4d4

And this is the collect-debug-info gist AFTER I've tried to use ```flynn-host fix``` command:
https://gist.github.com/4d8089d8eaed06dafd7643a0ef1a40c0

Maybe this helps to identify the issue? I've been able to reproduce it on my local VMWare machine and DigitalOcean instances...

In that other ticket, one reply states

> I think I have identified the issue. It seems that there is a bug in the MongoDB appliance which >is only hit when both of the existing Sync and Primary peers go down and when resurrected >have different IP addresses.
>
>Thanks for reporting!

Which is also the same case here, if I am not mistaking?

@Shigawire I am looking at this now, I think it's likely the same root cause but will keep this issue open incase I discover differently. Thanks.

@josephglanville thank you! I can give you access to the DO instance that has this issue, as I just set it up to reproduce this issue.

@Shigawire that shouldn't be necessary, I will let you know if it would be useful however. Thanks for offering. :)

I'm experiencing the same problem with mariadb.

@hugoleodev didn't check that, however my dashboard status shows MariaDB and MongoDB as unavailable.


How I can get email address current login user?

How I can get email address current login user using devise library?

Please use the mailing list or StackOverflow for questions/help, where a wider community will be able to help you. We reserve the issues tracker for issues only.


unit tests for modules, added req.txt

Issue #, if available:
Unit Tests for modules
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

where are the dummy modules. please put them back

added

OpenSearch is really a storage component, isn't it? Shouldn't the OS module be in storage?

IMO, its a search component, but not strongly opinionated. Can move it if we feel so

where are the dummy modules. please put them back

done


Add protected environments processor

@gdubicki , sorry for the sloppy code, but I thought it best to ask for feedback 😬
I left TODO comments on things I was not sure about or where you'll probably have a better idea on how to solve the issue I face.
I tested it against a live Gitlab installation, it works, I'll look into writing the tests next.

Hey @zanella! Thanks for the PR! I added some comments. We can try jumping on our Slack if you prefer to chat about it. Let me know!

Yeah, sounds good, do you need to generate an invite link for that ?

Hey @zanella! Thanks for the PR! I added some comments. We can try jumping on our Slack if you prefer to chat about it. Let me know!

Yeah, sounds good, do you need to generate an invite link for that ?

https://join.slack.com/t/gitlabform/shared_invite/zt-1i5h4dds0-NO4x63W5_GWL~WWrWy9DQg

Codecov Report

Merging #423 (5254fbb) into main (2ea89b6) will decrease coverage by 4.97%.
The diff coverage is 53.73%.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #423      +/-   ##
==========================================
- Coverage   85.36%   80.38%   -4.98%
==========================================
  Files          60       62       +2
  Lines        2228     2422     +194
==========================================
+ Hits         1902     1947      +45
- Misses        326      475     +149

Impacted Files
Coverage Δ

gitlabform/gitlab/projects.py
60.97% <ø> (-13.84%)
:arrow_down:

...essors/project/protected_environments_processor.py
0.00% <0.00%> (ø)

gitlabform/processors/abstract_processor.py
61.42% <50.00%> (-24.29%)
:arrow_down:

...itlabform/gitlab/project_protected_environments.py
63.63% <63.63%> (ø)

gitlabform/gitlab/__init__.py
97.95% <100.00%> (-2.05%)
:arrow_down:

...tlabform/processors/multiple_entities_processor.py
62.50% <100.00%> (-33.89%)
:arrow_down:

gitlabform/processors/project/__init__.py
88.88% <100.00%> (-11.12%)
:arrow_down:

... and 4 more

What will the config syntax be for protected environments when this is merged?

What will the config syntax be for protected environments when this is merged?

"group_name/project_name":
  protected_environments:
    foo:
      name: foo
      deploy_access_levels: &an_anchor_can_be_used_to_reuse #
        - access_level: 40
          #group_inheritance_type: 1
        - user_id: 123
          #group_inheritance_type: 0
        - user: john_doe
    blah:
       name: blah
       deploy_access_levels: *an_anchor_can_be_used_to_reuse

Final is not compatible with Python 3.7, @zanella...

I did a fix (there would be a missing link to the new article in the docs' index) and some updates to the docs and now I think we are good to go. Thank you for all the work on this feature, @zanella!

This code has been pre-released in v3.3.0rc1. Please feel free to check it out before a final release with this that should come within a few days.

I'm away from work next few weeks. So I can't test it out at the moment but really looking forward to it. Do we want visit the config syntax before this feature is released out of RC?
https://github.com/gitlabform/gitlabform/pull/423#issuecomment-1279287453
There's a redundant key name, which is treated as a label instead of the actual name of the env. Also the parent config, protected_environments is a departure from protected branch config, which is called branches.

There's a redundant key name, which is treated as a label instead of the actual name of the env.

Yes, on second thought it would be nice for this to be cleaned. We could do this relatively easy with a config transformation where:
    protected_branches:
      foo:
        (...)

...would internally be converted to:
    protected_branches:
      foo:
        name: foo
        (...)

Wdyt, @zanella?

Also the parent config, protected_environments is a departure from protected branch config, which is called branches.

I think you are right. It would be better to rename this to just environments, it would be more consistent.
But until we would also implement #164 it might be disappointing to some users that you cannot really manage all the envs but only protect them.
Also it's a bit of a problem with how enforce: true would work - now it unprotects all undefined envs while if this section would be called environments I would expect it to delete all undefined envs...

Also it's a bit of a problem with how enforce: true would work - now it unprotects all undefined envs while if this section would be called environments I would expect it to delete all undefined envs...

Ahh... I see. Didn't know the current implementation detail about this feature. I think you're right. I would also expect enforce: true under environment to delete all the other envs that are not in the config and I can see how that can also be unexpected. We probably need to hash out the details for regular environment config.

But until we would also implement https://github.com/gitlabform/gitlabform/issues/164 it might be disappointing to some users that you cannot really manage all the envs but only protect them.

This made me think perhaps we should have a separate key under environments to indicate whether an env should be protected or not. For example: protected: true. This also follows the config syntax for branch protection. Protected env is a subset of overall environment feature. So, we can implement the rest of it for #164  later if/as needed.


Update to recent version of several dependencies

ledger specs, ledger, network, shell
Minor code update to the ToObject MuxTrace instance

This includes the necessary changes from #762

bors merge

bors merge

bors merge


switch to snapshots cmd for checking repo exists

Signed-off-by: Steve Kriss<EMAIL_ADDRESS>#1171 switched from using restic check to restic stats for determining if a restic repository existed.  It turns out that restic stats is still not the optimal choice, as it can be slow on very large repositories.
Per https://restic.readthedocs.io/en/stable/075_scripting.html#check-if-a-repository-is-already-initialized, the recommended command to use is restic snapshots. This PR makes that switch.  I'm also using the --last flag to minimize the amount of data returned from the command, but this is just a small optimization.

manual testing LGTM.


Investigate Jenkins passing incorrectly

Model resnext101_32x8d_wsl passed Jenkins tests (see PR) but should not have due to invalid ssl dependency (and possibly other issues).
Investigate why this passed Jenkins tests and fix any problems.

All tests passed, so the run is marked as a successful run. The dependency error doesn't actually cause any failures. If this is something we would like to catch in the future, we could perhaps implement some sort of dependency check test within the generic plugin testing.


Update main.yaml

Update to Origin 1.5.0

aos-ci-test

aws-origin-test

aws-origin-test

aws-origin-test

passes local testing. Still need to iron out process of ci for origin


As a user, I want to be able to receive a webhook whenever there is a new applicant or a current applicant advances through a stage

This should be broken down a bit.

[x]  Send all INSERT, MODIFY, & DELETE  events  for applicants to a URL of the Org

[x] Add ability to have multiple webhooks

[x]  Add adjacent item deletion in DeleteChild step function

[x]  Add ability to set webhooks on each stage individually

[ ]  Add ability to view webhook history (30 days)

[ ]  Add retries & error handling

[ ]  Add signed webhooks to verify integrity

Edit: pattern using step functions
https://medium.com/@pubudusj/manage-webhooks-at-scale-with-aws-serverless-1adb315dd089

Closed / grooming in other issues


Write automated tests: Android Basics with Compose

Hey there.
I believe in the documentation you missed to explain implementation of the following and its also not present in the solution code as well.  Can you please update documentation accordingly?
@Test     fun createComposeRule() { }
Thanks,

It was my mistake, I created the issue wrongly.


Updates to query vulnerabilities response with grype provider

Change the shape of references to be inline with legacy results - a list of objects where each object contains source and url attributes
Construct a link to the vulnerability when one is not available
Change the shape of cvss data to be inline with with legacy mode results
Assign the cvss data to nvd_data or vendor_data depending on vulnerability namespace

Signed-off-by: Swathi Gangisetty<EMAIL_ADDRESS>

LGTM, +1 on some unit tests if there is time.

Thanks @dspalmer99 pushed a few unit tests that verify the changes


[Feature Request] ability to re-enable repo if it was disabled

Sometimes builds get disabled and there's no simple way to re-enable and get the past history and next build.
It would be great to have the ability to re-enable a past repo and have the build history come back. Right now it looks like it keeps it in the database but when enabling it just creates a "new" project.
@bradrydzewski this is another one I'm down to take a stab at if you think it's worth it and have an idea of the best way to do it.

check out http://docs.drone.io/cli-repository-repair/ :)

@bradrydzewski I was meaning when you disable builds from drone in the accounts tab.  Then when you re-enable it loses the history (even though it's still in the db) and starts the build over.

Ah ok, this will be resolved with https://github.com/drone/drone/issues/2036

Ah sweet! Good to know


Implement codecov format for unreachable tool

Resolves #15058
I ended up only marking the method definition line as missed. Primarily because it's not clear how many lines of the method are actually executable. This'll still get the job done, but without bloating the report with mostly useless information without actually running the method itself to know what lines would and would not be executed.
Open to ideas on how to best add test coverage to this. But for now here's an example from one of the Athena components:
$ ccrystal tool unreachable coverage/bin/image_size.cr --format=codecov | oq .
Using compiled compiler at /home/george/dev/git/crystal/.build/crystal
{
  "coverage": {
    "src/components/image_size/spec/athena-image_size_spec.cr": {
      "49": 0,
      "108": 0,
      "142": 0
    },
    "src/components/image_size/src/extractors/extractor.cr": {
      "2": 0
    },
    "src/components/image_size/src/image.cr": {
      "68": 0
    }
  }
}

And with --tallies:
{
  "coverage": {
    "src/components/image_size/spec/athena-image_size_spec.cr": {
      "5": 1,
      "27": 1,
      "39": 1,
      "49": 0,
      "67": 1,
      "88": 1,
      "108": 0,
      "120": 1,
      "130": 1,
      "142": 0,
      "160": 1,
      "180": 2
    },
    "src/components/image_size/src/extractors/abstract_ico.cr": {
      "4": 2
    },
    "src/components/image_size/src/extractors/abstract_png.cr": {
      "7": 2,
      "37": 2
    },
    "src/components/image_size/src/extractors/abstract_tiff.cr": {
      "25": 2
    },
    "src/components/image_size/src/extractors/bmp.cr": {
      "6": 2,
      "32": 1
    },
    "src/components/image_size/src/extractors/cur.cr": {
      "4": 1,
      "8": 1
    },
    "src/components/image_size/src/extractors/extractor.cr": {
      "2": 0,
      "4": 2
    },
    "src/components/image_size/src/extractors/gif.cr": {
      "5": 2,
      "19": 1
    },
    "src/components/image_size/src/extractors/ico.cr": {
      "4": 1,
      "8": 1
    },
    "src/components/image_size/src/extractors/ii_tiff.cr": {
      "4": 1,
      "8": 9
    },
    "src/components/image_size/src/extractors/jpeg.cr": {
      "40": 2,
      "83": 1,
      "87": 1,
      "118": 3
    },
    "src/components/image_size/src/extractors/mm_tiff.cr": {
      "4": 1,
      "8": 9
    },
    "src/components/image_size/src/extractors/mng.cr": {
      "4": 2,
      "15": 1
    },
    "src/components/image_size/src/extractors/psd.cr": {
      "4": 2,
      "15": 1
    },
    "src/components/image_size/src/extractors/svg.cr": {
      "6": 2,
      "32": 1,
      "38": 2
    },
    "src/components/image_size/src/extractors/swf.cr": {
      "4": 2,
      "17": 1,
      "21": 5
    },
    "src/components/image_size/src/extractors/webp.cr": {
      "13": 2,
      "42": 1
    },
    "src/components/image_size/src/image.cr": {
      "28": 21,
      "37": 3,
      "43": 1,
      "49": 4,
      "59": 2,
      "68": 0
    }
  }
}

Only thing I'm not sure about is if the file needs to be absolute or relative. I created https://github.com/codecov/feedback/discussions/530 to get some clarity on that.

Got confirmation that:

It is the exact filename and path from the root of your repo. (not root of machine)

So I think we're good as long as we assume the tool will be ran from the root of the repo (which it has to in order to for the compiler to find shards anyway).


add missing pod annotations parameter to istio charts.

merge https://github.com/istio/istio/pull/16886

Do we need to have a default podAnnotations in global.yaml?

This is a perfect use case for kustomize or operator overlay. Do we need to
add another API for this?
On Sun, Sep 8, 2019, 6:11 PM Chunlin Yang<EMAIL_ADDRESS>wrote:

Do we need to have a default podAnnotations in global.yaml?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/istio/installer/pull/387?email_source=notifications&email_token=AAEYGXNOHADG5CK254DX5KLQIWPE5A5CNFSM4IUQJBM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6F7SIA#issuecomment-529266976,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEYGXKGZZGEVLGWAVJW3SLQIWPE5ANCNFSM4IUQJBMQ
.

@howardjohn Istio operator API already support this in k8s overlay, see: https://github.com/istio/operator/blob/master/pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto#L437-L439

Great to see. If we can support this via kustomize and operator I don't think we should add this to helm values. I believe the goal is to aggressively reduce the amount of config exposed by values.yaml?

@clyang82 not yet, currently many global values, eg. defaultToleration, defaultNodeSelector haven't been translated to operator API, we may don't want to add another field like that, let's keep it in each single chart.


Should be possible to use shortcuts keys when miniplayer has focus.

Is something wrong with my pc or miniplayer doesn't listen to key events?

Keyboard shortcut keys are not global by default. You may want to adjust this in chrome://extensions/shortcuts if it's available on your platform.

I have the same problem, there is a default shortcut when I install the extension, and I can find it in the shortcut setting page, as you said, but it does not work anymore, there is no picture-in-picture window appears when I press Alt+p, whether I move the mouse on or not the video which is playing, how to deal with it?

I find that only can be active when the video is in Html5


fix quoting in attribute dicts

Previously HTML representations looked like that:
<input data-lona-node-id="1" type="checkbox" />

This was because the whole attribute string was quoted and not every attribute
value individually.
Signed-off-by: Florian Scherf<EMAIL_ADDRESS>

Codecov Report

Merging #195 (13c812d) into master (49ca314) will decrease coverage by 0.14%.
The diff coverage is 50.00%.

@@            Coverage Diff             @@
##           master     #195      +/-   ##
==========================================
- Coverage   59.92%   59.77%   -0.15%
==========================================
  Files          69       69
  Lines        4753     4753
  Branches      922      785     -137
==========================================
- Hits         2848     2841       -7
- Misses       1644     1659      +15
+ Partials      261      253       -8

Impacted Files
Coverage Δ

lona/html/attribute_dict.py
65.42% <50.00%> (ø)

lona/server.py
69.62% <0.00%> (-1.03%)
:arrow_down:

lona/view_runtime.py
67.88% <0.00%> (-0.57%)
:arrow_down:

lona/view.py
53.63% <0.00%> (-0.56%)
:arrow_down:

lona/html/widget_data.py
32.38% <0.00%> (-0.48%)
:arrow_down:

lona/html/node.py
59.37% <0.00%> (ø)

lona/html/widget.py
57.40% <0.00%> (ø)

lona/html/node_list.py
57.14% <0.00%> (ø)

lona/html/abstract_node.py
66.98% <0.00%> (ø)

lona/shell/commands/lona_server_state.py
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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

@maratori thanks for reviewing! :)


Infinite recursion when enabling enlightenment as DE

Describe the bug
I get infinite recursion when enabling enlightenment as my DE with the latest 20.03 nixpkgs:
error: while evaluating the attribute 'activationScript' of the derivation 'nixos-system-cyrus-20.03.3122.ff6fda61600' at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/system/activation/top-level.nix:103:5:
while evaluating the attribute 'system.activationScripts.script' at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/system/activation/activation-script.nix:68:9:
while evaluating 'textClosureMap' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/strings-with-deps.nix:70:35, called from /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/system/activation/activation-script.nix:89:18:
while evaluating 'id' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/trivial.nix:14:5, called from undefined position:
while evaluating the attribute 'text' at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/system/activation/activation-script.nix:9:5:
while evaluating the attribute 'text' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/strings-with-deps.nix:77:38:
while evaluating the attribute 'sources' of the derivation 'etc' at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/system/etc/etc.nix:12:5:
while evaluating anonymous function at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/system/etc/etc.nix:20:20, called from undefined position:
while evaluating the attribute 'source' at undefined position:
while evaluating anonymous function at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:84:45, called from undefined position:
while evaluating the attribute 'value' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:379:9:
while evaluating the option `environment.etc.dbus-1.source':
while evaluating the attribute 'mergedValue' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:411:5:
while evaluating anonymous function at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:413:22, called from /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:413:9:
while evaluating 'check' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/types.nix:251:15, called from /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:414:14:
while evaluating the attribute 'serviceDirectories' of the derivation 'dbus-1' at /nix/store/bhbwzy0p7jhpnxy0ivax9ck9sx3kk1lh-nixos-20.03.3122.ff6fda61600/nixos/pkgs/build-support/trivial-builders.nix:7:14:
while evaluating anonymous function at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/types.nix:263:14, called from undefined position:
while evaluating the attribute 'value' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:425:27:
while evaluating anonymous function at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:413:22, called from /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:413:9:
while evaluating 'check' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/types.nix:251:15, called from /nix/var/nix/profiles/per-user/root/channels/nixos/lib/modules.nix:414:14:
while evaluating the attribute 'passAsFile' of the derivation 'system-path' at /nix/store/bhbwzy0p7jhpnxy0ivax9ck9sx3kk1lh-nixos-20.03.3122.ff6fda61600/nixos/pkgs/build-support/trivial-builders.nix:7:14:
while evaluating the attribute 'buildCommand' of the derivation 'desktops' at /nix/store/bhbwzy0p7jhpnxy0ivax9ck9sx3kk1lh-nixos-20.03.3122.ff6fda61600/nixos/pkgs/build-support/trivial-builders.nix:7:14:
while evaluating 'concatMapStrings' at /nix/var/nix/profiles/per-user/root/channels/nixos/lib/strings.nix:31:25, called from /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/services/x11/display-managers/default.nix:124:9:
while evaluating anonymous function at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/services/x11/display-managers/default.nix:124:27, called from undefined position:
while evaluating the attribute 'text' of the derivation 'Enlightenment-xsession' at /nix/store/bhbwzy0p7jhpnxy0ivax9ck9sx3kk1lh-nixos-20.03.3122.ff6fda61600/nixos/pkgs/build-support/trivial-builders.nix:7:14:
while evaluating the attribute 'text' of the derivation 'xsession' at /nix/store/bhbwzy0p7jhpnxy0ivax9ck9sx3kk1lh-nixos-20.03.3122.ff6fda61600/nixos/pkgs/build-support/trivial-builders.nix:7:14:
while evaluating the attribute 'start' at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/services/x11/desktop-managers/default.nix:73:11:
while evaluating the attribute 'start' at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/services/x11/desktop-managers/enlightenment.nix:55:7:
infinite recursion encountered, at undefined position

To Reproduce
services.xserver.desktopManager.enlightenment.enable = true;
Expected behavior
Enlightenment works
Additional context
Used to work in a previous 20.03 nixpkgs...
Notify maintainers

Metadata

system: "x86_64-linux"
host os: Linux 5.4.56-ck1, NixOS, 20.03.2913.4bd1938e03e (Markhor)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.3.6
channels(root): "nixos-20.03.3122.ff6fda61600, unstable-21.03pre246543.24c9b05ac53"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute: enlightenment
# a list of nixos modules affected by the problem
module: services.xserver.desktopManager

related to #87678 maybe?

@romildo have you seen this?

Duplicate of #100464

@romildo have you seen this?

See https://github.com/NixOS/nixpkgs/commit/8fa9a8aa02298d738d552cc36af2e816cf03badb


Fix for #200 and others

This PR includes:

A docker compose example file for issue #200
Separation of database creation and startup into scripts
Renamed example for starterset inside a container

LGTM


MSVC compile error C2051: case expression not constant

Was trying to compile pt.h and pt_test.c on windows when i hit this compile error.
This line is likely causing the error: https://github.com/zserge/pt/blob/master/pt.h#L91
The error's probably about case LINE: not being compatible with MSVC. Is there a workaround of some sort?

I think the issue you discovered is discussed here. Sounds like you can avoid the compile error by changing a setting in your Visual C++ compiler related to debug information.


Invoke JUnit assertEquals with Argument Order (expected, actual)

The JUnit API documents assertEquals as taking the expected argument
before the actual argument.  Failure to adhere to this can result in
very confusing test failure messages.
For example in testTransformOneValue 'old' contains 'A' and 'expected'
contains 'a'.  If the implementer does not lower-case the key, the
failure message is as follows if the argument order is
(actual, expected):
EtlTest > testTransformOneValue FAILED
java.lang.AssertionError: expected:<{A=1}> but was:<{a=1}>
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.failNotEquals(Assert.java:834)
at org.junit.Assert.assertEquals(Assert.java:118)
at org.junit.Assert.assertEquals(Assert.java:144)
at EtlTest.testTransformOneValue(EtlTest.java:27)
This is very confusing as "was:<{a=1}>" is exactly what we were hoping
the result would be.

Good catch; thanks! Let's get this merged on CI success :)


node 18 support

What problem does this feature solve?
It solve the issue that vue cli can't be installed on node 18 because @achrinza/node-ipc@9 doesn't support it
$ yarn
yarn install v1.22.10
[1/4] Resolving packages...
[2/4] Fetching packages...
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "8 || 10 || 12 || 14 || 16 || 17". Got "18.0.0"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

What does the proposed API look like?
Allow @achrinza/node-ipc@10

got the same issue when trying to install:
yarn global add @vue/cli@next

Im getting an issue with node-ipc and so I tried to upgrade vue/cli with yarn global upgrade-interactive and i get

<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "8 || 10 || 12 || 14 || 16 || 17". Got "18.0.0"

I think requiring 9.2.4 (released two days ago, so after this issue has been created) instead of 9.2.3 will do the trick - no need to bump the major version.

The temporary solution is:
yarn --ignore-engines

How do I even create a project with vue-cli? It seems to run yarn automatically

How do I even create a project with vue-cli? It seems to run yarn automatically

yarn config set ignore-engines true

Ok thanks! Do you know if there a permanent solution in the works? Considering this breaks new installs it seems weird it isnt a higher priority. Also I don't like setting to ignore other things as there may be other conflicts etc.

I admit, I am wondering too that this topic does not get much more attention. But perhaps Node.js 18 does not have too much Adoption yet? But I hardly believe that...

Please update the dependency to<EMAIL_ADDRESS>I need vue@cli in my work and I must use only NPM (not yarn) & can't downgrade to node 16 easily :/

The current version range is already @9 so a fresh install will give you 9.2.24. You need to remove the lockfile though.

got the same issue when trying to install:
yarn global add @vue/cli@next

saved my life.

test('top level test', async (t) => {
await t.test('subtest 1', (t) => {
assert.strictEqual(1, 1);
});
await t.test('subtest 2', (t) => {
assert.strictEqual(2, 2);
});
});

Now it's the same with node 20 - please support this version

Yes same problem right now, even with ignore-engines is giving us problems. Is this problem solve already for you team?

Unfortunately, the problem is relevant for me.
I get this error when installing dependencies at the moment
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "8 || 10 || 12 || 14 || 16 || 17". Got "18.19.0"
error Found incompatible module.

Any updates on this issue?

Still facing the same problem , anybody have any update
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "8 || 10 || 12 || 14 || 16 || 17". Got "18.19.0" error Found incompatible module.

Yeah actually the only problem I could solve with this is changing the version an check dependencies to create a stable version. What works for me its either change the node version:
nvm i 17
Or install with this command after.
"what you want to install" --ignore-engines
Hope that helps!


Temporary solution for SocketTimeoutException

This is a temporary fix for #1876 as a stopgap measure for the high crash rates experienced by users. It removes the sole entry point for QuizChecker, which calls getRevertRespObjectSingle() upon loading ContributionsActivity.
Ideally we should find a proper fix for that issue so we can reinstate the quiz.
Tested on API 24 Nexus S emulator. Set a breakpoint on setRevertCount(); in QuizChecker, which is not called when logging in and out or accessing ContributionsActivity otherwise.
(Sorry for the messy commit history, I forgot to rebase instead of merge. :/ However the files changed looks correct.)

@misaochan Can we wait for a couple of days before landing this PR. @ashishkumar468 is working on a permanent fix. :)

Not needed after @maskaravivek 's PR. :)


TC.2.2 If the move is valid the card should be displayed on the discard pile

73219c8a89f46d84d06ebf4ed879c0cb8b6287ca
This was worked on in a coprogramming/codeWithMe setting


Send another docker container DISPLAY to vnc-desktop container $DISPLAY

Does anyone know if it might be possible to open a GUI app docker container window in the docker-ubuntu-vnc-desktop container running on the same host machine?
i.e
docker run -ti --rm -e DISPLAY=$VNC_DESKTOP_DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix firefox
Maybe some ssh with X11 forwarding ?

One solution might be to use --link (e.g docker run --name appname --link runningvncapp:appname ...) then you can ssh -X myusername@appname -e appexe from the vnc container but this is not optimal.


Remove EFS CSI Driver as it is an EKS add-on now

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

What is the outcome that you are trying to reach?

Now that EFS CSI driver is an EKS add-on we should remove it from blueprints. https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html#workloads-add-ons-available-eks
Describe the solution you would like

Remove it from main.tf.
Describe alternatives you have considered

Additional context

@askulkarni2 do you have more details about the "how to use" the addon with eks module directly?

The implementation is the same between the EKS module and this module; any EKS addon listed here can be enabled by specifying the addon configuration under cluster_addons in the EKS module, or eks_addons for this module, with the name as the key to addons respective configuration map. To enable the addon with the default values/settings, just simply specify an empty map as the value:
module "eks" {
  source  = "terraform-aws-modules/eks/aws"
  version = "~> 20.0"

  # Truncated for brevity ...

  cluster_addons = {
    coredns = {
      most_recent = true
    }
    kube-proxy = {
      most_recent = true
    }
    vpc-cni = {
      most_recent = true
    }
    aws-efs-csi-driver = {}
  }
}

module "eks_blueprints_addons" {
  source  = "aws-ia/eks-blueprints-addons/aws"
  version = "~> 1.0"

  # Truncated for brevity ...

  eks_addons = {
    coredns = {
      most_recent = true
    }
    kube-proxy = {
      most_recent = true
    }
    vpc-cni = {
      most_recent = true
    }
    aws-efs-csi-driver = {}
  }
}

The EKS module has the ability to let users specify before_compute = true to ensure the addon is provisioned before any dataplane compute resources which is helpful for configuring the VPC CNI daemonset. Otherwise, the implementations are identical so its really up to how users and how they wish to manage their addons


Update test generated code  with model interfaces

Generation based on https://github.com/microsoft/kiota/pull/1559

This PR is up-to-date reflecting the generation. Marking this as draft to merge it after https://github.com/microsoft/kiota/pull/1559 is merged.


Grand unified closures

unify async execution locks (now combiners) and workqueues to work on the same things but be complementary in concept:

combiners merge work onto one thread
workqueues distribute work across many threads

built on #6737 #6407
adapts chttp2 transport's custom scheme for combiner locks to use this new uniform scheme - this forced stream ops and transport ops to be heap allocated (but we had a convenient pre-allocated place for them for frequent ops in grpc_call, which was a relief)
the next stage of this work will be to move to using a combiner lock at the client_channel level, and share that lock with lb_policy, resolver, and friends.

test this please

test this please

Just a pre-emptive pong: about 30% reviewed.

Pre-emptive pong: more than 50% done.

I have now made it through reviewing all changes to include and src. Only test remains.

Reviewed.

Ok, I have now gone over mpscq.c with a fine-toothed comb and comparison chart. Please let me know when the other issues are addressed. Thanks!

Updated addressing review comments

LGTM.
Will wait for tests.

There are some tsan races on combiner_test and mpscq_test related to malloc and free.

Reverting the barrier change in mpscq fixes it.

LGTM.

Oops, this fails sanity. Can you fix sanity, resolve conflicts, and let's hopefully get this merged?

test this please


Fix size_t conversion error on MinGW

Example error: "third_party/spirv-tools/test/CMakeFiles/test_bit_stream.dir/bit_stream.cpp.obj.d" -o third_party/spirv-tools/test/CMakeFiles/test_bit_stream.dir/bit_stream.cpp.obj -c ../third_party/spirv-tools/test/bit_stream.cpp
../third_party/spirv-tools/test/bit_stream.cpp: In member function ‘virtual void {anonymous}::ReadWriteWord64_ReadWriteLotsOfBits_Test::TestBody()’:
../third_party/spirv-tools/test/bit_stream.cpp:808:36: error: conversion to ‘size_t {aka unsigned int}’ from ‘uint64_t {aka long long unsigned int}’ may alter its value [-Werror=conversion]
const size_t num_bits = i % 64 + 1;

Giving myself +2


Extend logging of cluster state transition to include derived bucket …

…space transitions.
@vekterli please review

Failed unit test in config-model was not related to this PR.

@vekterli PTAL


[1.12.2] No water color if the texture is used with certain mods.

Minecraft; 1.12.2
Forge: <IP_ADDRESS>60
Mods: 7* (Varies, depends on the mod that grabs the water textures)
_MixinBootstrap-1.1.0
AquaAcrobatics-1.6.2
Baubles-1.12-1.5.2
Botania+r1.10-362
Chisel-MC1.12.2-<IP_ADDRESS>
CTM-MC1.12.2-<IP_ADDRESS>
jei_1.12.2-<IP_ADDRESS>2

Due to Aqua Acrobatics replacing the water texture with a grey scaled one so it can change color... this affects other mods that use this water texture, such as blocks from Chisel, the water inside a Botania's Petal Apothecary. The water texture for these is supposed to be blue.
These aren't the only listed mods that are affected. The Thermal Expansion's Reservoirs lack a colored water texture when filled with water. I dunno how many other mods are affected by this.

Please update to the latest version, this should be fixed there.

I... should've checked for an update first before opening up an issue in case it was fixed.

Looks to be fixed. My apologizes.

No problem. :slightly_smiling_face: I discovered, as you did, that a lot of mods apparently depend on the water texture actually being blue, and don't bother to color it, so I ended up hacking the in-world water to use a different texture that allows recoloring. A side effect of this is that the texture can't be affected by resource packs unless they use the aquaacrobatics namespace instead. Also, JourneyMap still shows water in the old color, even though it looks modern when in the world.

I didn't know that JourneyMap has a issue with the water colors. Speaking of which... that occurs with Xaero's Minimap as I do recall that the map actually used the updated water colors from Aqua Acrobatics however with the version I'm using right now... it shows the old colors.

As seen here, the minimap is updating to show the water colors. Left side is prob around the time with me using "AquaAcrobatics-1.5.2" and with using "AquaAcrobatics-1.7.1"... the map sees it using the regular water so it's updating to reflect that.

In the next version after 1.10.0, compatibility will be added for Xaero's and JourneyMap so they display the modern colors again.


Feature Request : tailwindcss

Would be nice to have the choice of css framework for the views instead of restyling the stubs manually

It would be really difficult for me to handle every framework. So if you want to build with Tailwind then you have to customize the stubs once.


Manga Hanta

I think Manga Hanta is closed. When i tried to go to their website there was an ad and nothing else.

looks like it's dead, it should be removed


postgres: Create PgInterval type

This PR creates a new type binding for PostgreSQL INTERVAL type.
Fixes #197
Some notes:

The PR exposes a new type: sqlx::postgres::types::PgInterval which is fully compatible with PG INTERVAL type
I did not implemented to support for https://crates.io/crates/pg_interval since the project does not seems to be actively maintained.
I've implemented TryFrom for chrono::Duration and time::Duration, theses conversions fail if there is an overflow, if using incompatible fields (PG days and month fields) or if there is loss of precision by using nanoseconds.

Can you add some tests to postgres-types ?

theses conversions fail [...] if there is loss of precision by using nanoseconds.

This may actually cause a lot of errors if people are inserting Durations based on precise timers. Maybe instead of/in addition to a TryFrom<Duration> for PgInterval we need to have like a PgInterval::truncate_nanos(Duration) constructor or something.

That is a good idea, I think that replacing the TryFrom behavior by silencing this type of issue could generate even more bugs that go unnoticed. So I would think that, as you said, adding a new constructor would be better. And I should add a bit of documentation to highlight the difference between the two.
I have one question however, I not that seasoned in Rust and I'm not sure how to create a function PgInterval::truncate_nanos(Duration) that could either take a chrono::Duration or a time::Duration, do you have any idea how I should do that?
Thank you

I've created two functions chrono_truncate_nanos and time_truncate_nanos in bd27d0e.
I'm not sure if it is the right thing to do. Please let me know how I can improve that.

@dimtion Sorry for the delay, would you mind providing impls for std::time::Duration as well? It seems fitting.
As for truncate_nanos, there's a few options I see:

only define the constructor for std::time::Duration and expect the user to convert their chrono::Duration or time::Duration first
define a trait TruncateNanos and implement it for all of [chrono, std::time, time]::Duration, then have the constructor take impl TruncateNanos
keep the separate constructors but add the crate name as a postfix, i.e. truncate_nanos_chrono, truncate_nanos_time, truncate_nanos_std

I don't think this impl is a good idea. As the Interval type is a proper interval and not just a duration, attempting to treat a Duration as such is error-prone at best. In the future, the time crate will provide for a Period type that could be properly mapped to the Interval appropriately. There's no timeframe on this, but I thought it would be best to make my thoughts known before this potentially lands.

@jhpratt what you says makes a lot of sense, and is indeed the core of the issue I faced. An interval/period is not the same duration, and converting between the two must not be an implicit thing.
@abonander do you think creating a PR only providing the PgInterval  type could be enough? This would allow to make sqlx work with PostgreSQL Interval type, something is impossible right now. All the other type compatibility are only here to be handy in the end, and could be postponed if deemed error prone.

To be clear, I don't think converting a Period to a Duration directly will ever be allowed in the time crate. I'll almost certainly implement From<Duration> for Period when the latter is created, but only because some number of seconds would be a strict subset of what is storable in a period type.
Obviously you're free to do as you wish, but that's my perspective from the time crate.

I have to agree with @jhpratt here about the Period type and the concerns around conversion. As for this PR, I think we should accept a minimal useful surface for now.

A PgInterval type that is explicitly those three fields that fully supports the protocol and has Type + Encode + Decode.

Type + Encode for time::Duration, chrono::Duration, and std::time::Duration where Encode fails if we cannot express the duration as a PgInterval.

(in a later PR) Type + Encode + Decode for time::Period when that type is available.

Ok, so I've rebased this branch with master:

The first commit is the creation of the PgInterval type that fully supports Type + Encode + Decode
The second commit adds a compatibility layer for std::time::Duration, time::Duration &  chrono::Duration. It implements TryFrom<Duration> for PgInterval, and fails if there is an overflow or if there is loss of precision
I've implemented Type + Encode for time::Duration, chrono::Duration, and std::time::Duration
Following @abonander idea, I did not remove the truncate_nanos_* methods since they  might be useful in some cases.

Let me know if this implementation is better.

Looking at the overall diff, it looks good to me. I just checked the bits relevant to the time crate, though.
One but, I believe it would be more efficient to check if the nanos % 1000 == 0 instead of performing more complicated arithmetic.

@dimtion Thank you ❤  for sticking with this. I merged it and narrowed down the public API further. We can always add methods to it if it becomes a pattern people want ( the truncate approach ) but I think we're probably best off waiting for a cleaner type like time::Period.


Bug: Adding a primary key to an existing table not working

PHP Version
8.1
CodeIgniter4 Version
4.3.1
CodeIgniter4 Installation Method
Composer (using codeigniter4/appstarter)
Which operating systems have you tested for this bug?
Linux
Which server did you use?
apache
Database
MySql 8
What happened?
When trying to add a primary key to an existing table, it does not work:
$this->forge->addPrimaryKey('id', 'pk_actions');
$this->forge->processIndexes('actions');

Steps to Reproduce
Create a migration to add a primary key to an existing table with the following rows:
$this->forge->addPrimaryKey('id', 'pk_actions');
$this->forge->processIndexes('actions');

Expected Output
Primary key should be added.
Anything else?
The problem seems to lie in the processIndexes() function as it only processes primary keys when a non primary key is added:
        if (! empty($this->keys)) {
            $sqls = $this->_processIndexes($this->db->DBPrefix . $table, true);

            $pk = $this->_processPrimaryKeys($table, true);

            if ($pk !== '') {
                $sqls[] = $pk;
            }
        }

Thank you for reporting. Try #8031


some recommended css updates

I was playing around with the CSS a little last night, let me know what you guys think. I feel like it makes the site look a little more cohesive.

@michaelharrisonroth
I made a shit-ton of changes that I haven't pushed up yet and they'll probably conflict with yours. Let me get it sorted out and then I'll take a look-see.

@michaelharrisonroth
Ok I checked it out and yeah there will be a lot of conflicts so I will just accept the pull request and sort out the mess on my end.
Some of my changes to the home page panels are pretty similar to yours (larger font, more space, etc.), so I think we are on the same page with that.
As for colors, I do like your white banner better than the light blue so we can try that. In terms of links, though, I think all the text links should be blue and the hover some variation of that. And if you're not married to those red links in the top bar, I say we reserve the red for buttons.
I'll do some integration shortly and push it up.

@abettermap
Awesome sounds good. I am not married to any of it, feel free to do what you think is best.


Joshua Binary Review Ticket

What I did:
During this project, I was supposed to add a color picker that people can manually change. I was also in charge of adding images and functionality to the images. Toward the end, I helped find out some of the things within the website to get better code.
Buttons and images:
I added a feature where a line of the button displays an on and off button and a light that turns on or off depending on what button is being shown, either on or off. I also added a moving image to the back of the website to make the page less boring. I encountered a problem when doing this code: the on and off buttons weren't working. It would only show the on button and not change to off. I was able to fix the functionality to complete this code.
Color picker:
I added a color picker that was underneath the main color display. The purpose of this color picker was for the user to manually change the color of the main color display to the color of their liking. This is because finding a color you want using binary is hard. When changing this color picker, it would change the binary numbers to match the same color. A problem faced in this project was that the color picker wasn't updating the color display immediately, which meant it had a delay. I was able to fix this by adding another function that made sure to update all pieces of code.
Hex color display:
This code was very short and took the binary numbers being changed and converted them into hexadecimal form.
Key Commits:
Color picker
button function
Hexidecimal

Demonstrates proficiency with JS and contributed to various areas of the code functionality. 0.9/0.9


ERROR in : Error: Internal error: unknown identifier undefined

Bug Report or Feature Request
- [x] bug report
- [ ] feature request

There are already similar bug reports, for example https://github.com/angular/angular-cli/issues/11359, but such errors seem complicated and difficult to solve enough to justify individual tracking of each problem.
Area
- [ ] devkit
- [ ] schematics

Versions
> node --version
v8.11.1
> npm --version
5.6.0
> yarn list @angular/cli @angular/core
├─<EMAIL_ADDRESS>└─<EMAIL_ADDRESS>
Windows 10.
Repro steps
I have prepared a demo:
https://github.com/earshinov/angular-demo-polymorphic-content-children
Reproduction steps:

git clone the repo
Install node_modules:

npm install -g yarn;
cd demo-app;
yarn;
cd ../demo-lib;
yarn;

(from now on, this is a copy of instructions from the demo repo) Build the library:

cd demo-lib;
npm run build;
cd ..;

Install the built library into the demo app:

cd demo-app;
yarn add file:../demo-lib/dist;
cd ..;

Try building the demo app:

npm run -- ng build --prod;

The log given by the failure
ERROR in : Error: Internal error: unknown identifier undefined
    at Object.importExpr$$1 [as importExpr] (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:31063:23)
    at tokenExpr (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:20063:39)
    at providerDef (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:19966:20)
    at ViewBuilder._visitProviderOrDirective (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:28177:18)
    at ViewBuilder._visitProvider (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:28110:36)
    at demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:27931:23
    at Array.forEach (<anonymous>)
    at ViewBuilder._visitElementOrTemplate (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:27916:23)
    at ViewBuilder.visitElement (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:27820:23)
    at ElementAst.visit (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:925:24)
    at visit (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:1366:37)
    at demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:1368:42
    at Array.forEach (<anonymous>)
    at templateVisitAll (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:1367:10)
    at ViewBuilder.visitAll (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:27615:9)
    at ViewCompiler.compileComponent (demo-app\node_modules\@angular\compiler\bundles\compiler.umd.js:27539:17)

Mention any other details that might be useful

Please take a look at git log. Note that the problem appears after introducing an intermediate module with imports and re-exports (demo-lib/src/util/index.ts) in 4c68f491.

The problem is probably somewhere in the AOT compiler because it does not occur when running ng serve or ng build without the --prod flag.

The problem might be related to the approach taken by the library to allow for different kinds of children in a container component. This approach is illustrated in this blog post: http://www.mcrook.com/2016/10/angular-2-contentchildren-with-abstract.html

This seems to be an error with the Angular compiler's lexer/tokenizer itself. I don't think the CLI is at fault here.
@alxhub ?

This is happening to me as well in two different angular 5 projects.  Was fine with Angular 4

angular 7 has same issues


Make Attribute instances immutable and slotted.

If this looks good to you, I'll add something to the changelog. Since the docs already define Attributes are read-only, this should be backwards compatible.

Current coverage is 100% (diff: 100%)

Merging #51 into master will not change coverage

@@           master   #51   diff @@
===================================
  Files           7     7
  Lines         364   365     +1
  Methods         0     0
  Messages        0     0
  Branches       86    86
===================================
+ Hits          364   365     +1
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update a673093...1e3e5b4

Yeah, I was always very explicit about this stuff being read-only so I’m not concerned.  As for changelog, maybe just add the function names and the PR# to the existing “faster” entry?

Ping.

I’m conflicted about _fast_attrs_iterate.  Maybe kill it off but don’t use fields in internal functions and just grab __attrs__attrs__ ?  Because the new version is a slowdown due to the safety checks which we don’t need internally…
By which I mean: asdict → use fields.  _convert → __attrs_attrs__. Does that make sense?

Agreed. (Pushed the change.)
fields() will give a proper error message if junk is passed in, but with a tiny slowdown. _convert can avoid the check. Other internal functions were already using the field directly.

Thanks!

❇❤


[Bug] CPU and Memory not showing on the dashboard

We're having the same issue as this person: https://github.com/cloudnative-pg/grafana-dashboards/issues/14
The response mentions:
Those [graphs] are calculated as a percentage of the value from the resources.requests.cpu. If one is not set, you see the missing request message. Below that, you can see an absolute value, but not a relative percentage as it's not relevant in this case.

It's strongly recommended you set both resources and limits, and you set both to the same value to ensure you get a Guaranteed QoS.

We do have resource limits set, but this is still not working:
  resources:
    requests:
      memory: "512Mi"
      cpu: "1"
    limits:
      memory: "1Gi"
      cpu: "2"

Are we doing something wrong? I copied and pasted these resource limits directly from the documentation here:  https://cloudnative-pg.io/documentation/1.20/samples/cluster-example-full.yaml.
Also, apologies for double posting. I was unclear if responding to a closed bug report or opening a new bug report was the best option, so I did both. I can delete one or the other, depending on which is preferred.
Thanks
Brad

I think I may have this working.
For the CPU metric I had to make the following changes to the promql query:
From:
sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{namespace="$namespace", pod=~"$instances"}) / sum(kube_pod_container_resource_requests{job="kube-state-metrics",  namespace="$namespace", resource="cpu", pod=~"$instances"})

To:
sum(rate(container_cpu_usage_seconds_total{namespace="$namespace", pod=~"$instances"}[1m]))/ sum(kube_pod_container_resource_requests{job="prometheus-kube-state-metrics",  namespace="$namespace", resource="cpu", pod=~"$instances"})

job="kube-state-metrics" seems to be job="prometheus-kube-state-metrics" on my environment - I don't know why. GPT says "The Prometheus Community Helm Chart for kube-state-metrics often uses the prometheus-kube-state-metrics job name, while a standalone installation might use kube-state-metrics."
Also, on my system, node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate doesn't seem to work. I have to use sum(rate(container_cpu_usage_seconds_total{namespace="$namespace", pod=~"$instances"}[1m]))
In fact any equation with sum_irate doesn't work. :-\
For the memory I had to make the following changes:
From:
sum(container_memory_working_set_bytes{job="kubelet", metrics_path="/metrics/cadvisor", namespace="$namespace",container!="", image!="", pod=~"$instances"}) / sum(max by(pod) (kube_pod_container_resource_requests{job="kube-state-metrics", namespace="$namespace", resource="memory", pod=~"$instances"}))

To:
sum(container_memory_working_set_bytes{job="kubelet", namespace="$namespace",container!="", image!="", pod=~"$instances"}) / sum(max by(pod) (kube_pod_container_resource_requests{job="prometheus-kube-state-metrics", namespace="$namespace", resource="memory", pod=~"$instances"}))

I had to remove metrics_path="/metrics/cadvisor" and I had to change kube-state-metrics to prometheus-kube-state-metrics again
Maybe I missed it somewhere, but I don't see any mention of kube-state-metrics being required, nor do I see any references to cadvisor being required. These are certainly common in a Kubernetes environment, but it would be nice if this were mentioned somewhere, like the readme file.
I'd certainly appreciate input from someone more experienced than me to validate that the above changes are correct and reasonable. They seem to result in reasonable and expected values, but I'm a Grafana/Prometheus/Promql newbie, so take the query changes above with a lump of salt.

Make sure you specify the following parameters in your kube-prometheus-stack installation:
prometheus:
  prometheusSpec:
    podMonitorSelectorNilUsesHelmValues: false
    ruleSelectorNilUsesHelmValues: false
    serviceMonitorSelectorNilUsesHelmValues: false
    probeSelectorNilUsesHelmValues: false

I really cannot debug what is missing or why in your cluster and/or kube-prometheus-stack installation. That being said should you be able to diagnose it yourself and identify an actual problem with the dashboard, I'll patch it.


Fixes #6133 - Add support for Team Hiearchy

Describe your changes :

See #6133 for details

Type of change :

[x] New feature

Checklist:

[x] I have read the CONTRIBUTING document.
[x] I have commented on my code, particularly in hard-to-understand areas.
[x] I have added tests that prove my fix is effective or that my feature works.
[x] All new and existing tests passed.

@vivekratnavel and @pmbrull, need help with the test failures. Not able to figure it out from the logs.

@sureshms teams api changed and sample-data cannot be ingested
File "/Users/harsha/Code/OpenMetadata/ingestion/src/metadata/ingestion/sink/metadata_rest.py", line 547, in write_users
    raise APIError(
metadata.ingestion.ometa.client.APIError: Creating a new team Cloud_Infra

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/harsha/Code/OpenMetadata/ingestion/env/bin/metadata", line 33, in <module>
    sys.exit(load_entry_point('openmetadata-ingestion', 'console_scripts', 'metadata')())
  File "/Users/harsha/Code/OpenMetadata/ingestion/env/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/harsha/Code/OpenMetadata/ingestion/env/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)

@pmbrull this is only happening on the python side. When a field is used by "$ref" , referenced type defaults are not getting applied. This method works in Java

@ShaileshParmar11 to fix the above test we need to display TeamType filed from createTeamRequest

@ShaileshParmar11 to fix the above test we need to display TeamType filed from createTeamRequest

@harshach, TeamType is defaulted to Department. So that should not be the issue...

@sureshms so python code generation running into issues, its not generating the teamType default value which in turn causing the sample data to fail. I've to pass it manually until we figure out python issue

@pmbrull this is only happening on the python side. When a field is used by "$ref" , referenced type defaults are not getting applied. This method works in Java

Thanks for the fix @harshach . Opened https://github.com/open-metadata/OpenMetadata/issues/6173 to track this. It would be interesting to have these defaults properly propagated

@pmbrull this is only happening on the python side. When a field is used by "$ref" , referenced type defaults are not getting applied. This method works in Java

Thanks for the fix @harshach . Opened #6173 to track this. It would be interesting to have these defaults properly propagated

we may need to look into the lib and patch it https://github.com/koxudaxi/datamodel-code-generator

@harshach and @pmbrull, I am setting the default value where the type is defined. Perhaps the default value where the type is "$ref" referenced might work for Python?


Upgrading to amazonka 1.3.2

@charleso @EduardSergeev Any objections?

No qualms here. :+1:
https://github.com/brendanhay/amazonka/compare/1.3.1...1.3.2


Travis/QA: always check that all sniffs are feature complete

The new phpcsstandards/phpcsdevtools package includes a script which can check whether sniffs are feature complete, i.e. whether all sniffs have unit tests and documentation.
By adding this check to the Travis script, we prevent untested and/or undocumented sniffs from entering the repo.
For now, the documentation check is silenced.
Ref: https://github.com/PHPCSStandards/PHPCSDevTools#checking-whether-all-sniffs-in-a-phpcs-standard-are-feature-complete
P.S.: the PHPCSDevTools package contains a few more goodies, have a look at the readme for more information.

Neat 👌🏼


can't set boolean flags from config file

identifiers, literals, and colors can't be set from the config file.
Because:

colors is missing from the options looked at
any --no- flag is set to true by default, and the code only replaces undefined values.

@danielstjules any chance of looking at this?


Upgrade to pgrx 0.9.7

A critical bug concerning handling arrays with an initial null element was discovered in pgrx versions 0.8.0 to 0.9.6, recommending an upgrade to 0.9.7 as soon as is possible. I was not able to run the necessary commands to update the lockfiles, my apologies.

Thanks @workingjubilee. Tests pass for me with your changes. What lockfile updates were you prevented from making? We don't typically cargo update every time we update a dependency.

Fair enough! I was trying to run cargo update -p pgrx on the relevant crates, but if it's not a big deal it's not a big deal.


Chapter references break with mapref

The DITA-OT docs use <chapter> references in a bookmap to pull in content from submaps for the PDF output, as in userguide-book.ditamap Line 33:
<chapter href="topics/customization.ditamap" format="ditamap"/>

The referenced chapter submap pulls in content for each section via <mapref> elements, as on Line 8:
<mapref href="html-customization.ditamap"/>

Up to 3.0, these references worked fine, and maprefs were rendered as chapters in the ToC
(see  docs/userguide.pdf in the 3.0 distribution package — ToC Page 4, Part V):

As of 3.0.1, these maprefs are no longer treated as chapters:

The error is apparently related to <mapref> processing, as it works fine if one of the maprefs is replaced with the content of the referenced map:

The issue is still present in 3.0.2.

May be a rare UNIX-only issue, as @robander was unable to reproduce on Windows, though it appears consistently on multiple macOS systems and our own UNIX-based CI servers that generate the distribution builds.

@jelovirt The hotfix/3.0.4 branch of the docs repo cannot be used to reproduce this issue, as the failing markup was removed there in 497eb66 to work around the issue for the 3.0.3 release.
If you temporarily set the docsrc submodule pointer to the hotfix/3.0.4 branch of the docs repo @ 747b135 and then git revert 497eb66, you should be able to reproduce the issue with the core repo code from the hotfix/3.0.4 branch by running ant pdf in the docsrc folder.

I tested with dita-ot repo  hotfix/3.0.4 branch  and docs repo develop branch, that still uses the nested maprefs. I did not use the docs build scripts, rather ran OT directory through Ant.

But are you able to reproduce the issue with hotfix/3.0.4 code when running with Ant, not docs scripts?

Verified with latest code from develop, no longer reproducible, closing.