Fixes styleguide

Why:

The styleguide was not showing the styles

This change addresses the need by:

Stop requiring the font-awesome-sass, which we have stopped using a
while ago
Ignoring some of the SASS special sintax in animations, which the
linter seems to dislike

:+1:


ruleset to pervent exe download? and hide placeholder for reject_special_paths.ruleset

is this possible make an ruleset to pervent downloading exe file in firefox?
and i want hide placeholder for everything that match with this ruleset : reject_special_paths.ruleset
is this possible?
also can you extract Ghostery database?
thanks

exe
By filename only, sure. Just add something like * ".exe": REJECT to your reject_special_paths.ruleset
placeholder
futpib/policeman#153
Ghostery
Do they distribute it freely?

i try below line and work very good
-> * ".exe": REJECT
this what i see inside an addon.so
This proprietary database is protected by copyright, and is owned exclusively by Ghostery and all rights to it are expressly reserved.
If you are interested in using this database for any purpose outside of the Ghostery application, contact Ghostery at<EMAIL_ADDRESS>


Add Button to quickly clear selection

Solves issue #1091
As mentioned in the linked issue, this PR adds a new button on the send_tab element of the "Send Page". This button clears the current file selection. The reason behind this is to reduce the UX friction for that action.
See video:
https://github.com/localsend/localsend/assets/38408878/0f05dd53-e055-4a96-b5ba-65d4903b6a36

Thank you


(MAINT) Update CHANGELOG for 0.2.0

I've amended the commit in place since this is a pretty small change.

Travis is failing with:
---> syntax:manifests
---> syntax:templates
---> syntax:hiera:yaml
(WARN) dependencies: Dependency puppetlabs/stdlib has an open ended dependency version requirement
Warnings found in metadata.json
The command "bundle exec rake release_checks" exited with 1.

not sure if we care or not.

@camlow325 @haus CI has been fixed; this should be ready for merge.


[feature] make relational rule's until operator inclusive

Consider this rule
rule:
  kind: assignment_expression
  inside:
    immediate: true
    kind: parenthesized_expression
    inside:
      until:
        not:
          any:
            - kind: parenthesized_expression
            - kind: while_statement
            - kind: do_statement
            - kind: if_statement
            - kind: for_statement
      any:
        - kind: while_statement
        - kind: do_statement
        - kind: if_statement
        - kind: for_statement

It can be simplified if until operator is inclusive.

It almost always makes sense to have an inclusive until.
Consider:

If until and inside matching node do not overlap, inclusiveness does not impact matching.
If until matches strictly more nodes than inside pattern, non-inclusive until rule will never match any node. But inclusive rule will.
If until matches strictly fewer nodes than inside pattern, non-inclusive rule is equivalent to not. Inclusive rule always matches node.

Having inclusive until can enable us to support the "finding the first matching ancestor/descendant" algorithm.

Alternatively, we can have a unifying API like
inside:
  pattern: XXXX
  stopsBy: 'neighbor' | 'end' | { pattern: xx }


lib/inject.d.ts of the bundled application does not compile

Bug Report
Djinject version: 0.9.0
lib/inject.d.ts of the bundled application does not compile because ts-expect-error was removed. Does it work for consumers of djinject?
Steps To Reproduce

npm run build
Open lib/inject.d.ts

The current behavior
A compiler error occurs "A rest parameter must be of an array type."
The expected behavior
If the use-site does not receive an error and the app that uses Djinject compiles/bundles fine, then the current behavior is ok.
Otherwise, the original comment that instruct the compiler to ignore the error needs to be part of the compiler output.

Fixed with #9


dcat_theme_sm values should be capitalized

according to https://opengeometadata.org/ogm-aardvark/#theme-values

fixed via https://github.com/kgjenkins/gbl2aardvark/commit/70d1918833748da5f6f4a42c8dab831682e4c8f7


[BUG] Profile page tabs text is too small

Description
Increase tab text size
Screenshots
No response
Additional information
No response

Hello maintainers, i would like to work on this issue. Please assign it to me.

Hello, I'm interested in working on this. Please assign me this issue.

Hello, I would love to work on this. Please assign the issue to me

I came here looking for good first issues to contribute to, but there are already so many people who want to fix the issue. Guess, I'l l have to wait for my turn. xD

I came here looking for good first issues to contribute to, but there are already so many people who want to fix the issue. Guess, I'l l have to wait for my turn. xD

Me too. Let's keep hunting for good bugs to fix 🥳

Hello maintainers, i would like to work on this issue. Please assign it to me.

@Annie154 I have just assigned another issue to you: https://github.com/EddieHubCommunity/LinkFree/issues/7042
As per our Contributing Guide we only assign one issue per person.
We appreciate your enthusiasm but in future please do not ask to be assigned to various issues in the expectation that one of these will be assigned to you.  I am sure you will appreciate this creates extra work for maintainers as well as notifications and noise.

Hello, I'm interested in working on this. Please assign me this issue.

@JayK1524 please see my comments in other issues today as to why we cannot assign this to you.  I thank you in advance for not asking to be assigned to various issues

Hello, I would love to work on this. Please assign the issue to me

@Aaryan376 I will assign this to you

I came here looking for good first issues to contribute to, but there are already so many people who want to fix the issue. Guess, I'l l have to wait for my turn. xD

@ujjwalkirti here is a list of unassigned good first issues (you can also filter through these yourself in future) https://github.com/EddieHubCommunity/LinkFree/issues?q=is%3Aissue+is%3Aopen+label%3A"good+first+issue"+no%3Aassignee

I came here looking for good first issues to contribute to, but there are already so many people who want to fix the issue. Guess, I'l l have to wait for my turn. xD

Me too. Let's keep hunting for good bugs to fix 🥳

@AliMora83 you have been assigned an Issue: https://github.com/EddieHubCommunity/LinkFree/issues/7034
In future it is best to ask to be assigned one issue and only if it is not assigned to you, then move on to request another.  This  will minimise the noise, extra work and notifications for the maintainers.

I am interested on this. Please assign this to me.

I am interested on this. Please assign this to me.

@iamjayprakash04 this issue has recently been assigned to someone else.  In future it would be very helpful for maintainers if you could please check the top right of the page in the Assignees box and only request to be assigned an issue if this has not been assigned to anyone else.  I am linking our Contributing Guide here so that you can also familiarise yourself with the project's guidelines.
Please also see here for a list on unassigned good first issue if you are looking for a contribution.

Thank you for your response and guidance.
On Sun, 28 May, 2023, 7:47 AM Sara Jaoude, @.***> wrote:

I am interested on this. Please assign this to me.
@iamjayprakash04 https://github.com/iamjayprakash04 this issue has
recently been assigned to someone else. In future it would be very helpful
for maintainers if you could please check the top right of the page in the
Assignees box and only request to be assigned an issue if this has not
been assigned to anyone else. I am linking our Contributing Guide here
https://github.com/EddieHubCommunity/LinkFree/blob/main/CONTRIBUTING.md
so that you can also familiarise yourself with the project's guidelines.
Please also see here
https://github.com/EddieHubCommunity/LinkFree/issues?q=is%3Aopen+is%3Aissue+label%3A"good+first+issue"+no%3Aassignee
for a list on unassigned good first issue if you are looking for a
contribution.
—
Reply to this email directly, view it on GitHub
https://github.com/EddieHubCommunity/LinkFree/issues/7049#issuecomment-1565805245,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A5RCSKOIBOWCDJWTJNUK77LXIKYUDANCNFSM6AAAAAAYIZDPME
.
You are receiving this because you were mentioned.Message ID:
@.***>

@Aaryan376 how are you getting on with raising a PR for this Issue?

is there any screenshot of the issue? also add more description of the issue.
if there is no progress on the issue i would love to work on it

is there any screenshot of the issue? also add more description of the issue.
if there is no progress on the issue i would love to work on it

@sanyamx please avoid going through multiple issues and asking these to be assigned to you if there is no activity - this not only creates extra notifications for maintainers (who regularly review assigned issues) but also confusion given that we only assign one issue per person.  It would be good if you could please familiarise with the project's Contributing Guide.

Unassigned the issue due to lack of response

Since no one is working on this issue, I am ready to work if it is assigned to me.

@ujjwalkirti  assigning you the issue

The issue description says that the tab text size needs to be increased and from what I can understand we have to increase the text lying in the red container that I have drawn in the screenshot below:

Am I proceeding in correct way?

The issue description says that the tab text size needs to be increased and from what I can understand we have to increase the text lying in the red container that I have drawn in the screenshot below:

Am I proceeding in correct way?

This is the main navigation not the tabs. I have highlighted the profile tabs in the screenshot below

Okay @eddiejaoude sir, got it.


Implement folder setting to sort directories and files together and add option to toolbar sort flyout

Resolved / Related Issues
Items resolved / related issues by this PR.

Closes #7120.

Details of Changes

The global setting to sort directories alongside files is removed and the option is loaded/saved per-folder (like "sort by" and ascending/descending)
The option is added to the toolbar flyout

Validation
How did you test these changes?

[x] Built and ran the app

Screenshots (optional)

I've restored the global setting and it seems to work, except that already open tabs are not updated when the setting is changed.

I've restored the global setting and it seems to work, except that already open tabs are not updated when the setting is changed.

Is this somethign you can copy from the option to show/hide hidden items?

The problem is that for each folder visited if there is no custom setting, the value of the global setting is saved. So when the user changes the global setting again it will have no effect on that folder

The problem is that for each folder visited if there is no custom setting, the value of the global setting is saved. So when the user changes the global setting again it will have no effect on that folder

@manfromarce that's expected, to have the setting apply on all items you need to turn off the option to use individual preferences.

Ok, I've done some tests and the combination of global and individual settings seems to work properly

Ok, I've done some tests and the combination of global and individual settings seems to work properly

Awesome! Do you think the option to set the default value should be disabled when the option to use individual preferences is turned off?

Ok, I've done some tests and the combination of global and individual settings seems to work properly

Awesome! Do you think the option to set the default value should be disabled when the option to use individual preferences is turned off?

Other options:

the two options should be linked <-
the new option in the toolbar should be hidden

It could be that when individual settings are disabled the new toolbar command is synced with the general setting (like show hidden/dot files)

It could be that when individual settings are disabled the new toolbar command is synced with the general setting (like show hidden/dot files)

That can work, we can change it later if it gets confusing.

@yaichenbaum @gave92 The settings should now be linked and refreshed correctly when individual settings are disabled, let me know what you think

@manfromarce it's working great! We'll probably have to rearrange some options so that it's easier to see what's going on, but this is fantastic.
Do you want to add a setting to choose the default layout and default sort mode using the same logic?

OK, I think I can implement them.  We could maybe add a new group in settings because "files and folders" would have too many entries

OK, I think I can implement them. We could maybe add a new group in settings because "files and folders" would have too many entries

We can add a group for sorting preferences


GH3593: Update Microsoft.CodeAnalysis.CSharp.Scripting to 4.0.0-5.final

fixes #3593

@devlead  your changes have been merged, thanks for your contribution :+1:


Use fully qualified path in macro

Using fully qualified paths in macros reduces maintenance burden. We have one macro where we use relative path to access the psbt module.
Refactor only, no external change.

This is the first patch from #3507


pytorch gpu take 2

following up  #3 , which did not work and in fact just installed the CPU library again!

THis massively increases the image size
REPOSITORY                       TAG                                IMAGE ID       CREATED             SIZE
uwessds/seisbench                27d6d48a9eb1                       1a0d315409e8   1 second ago        9.95GB

b/c lots of large packages are added (cudatoolkit, cudnn, etc).
The smaller CPU-only image is still available from: docker pull uwessds/seisbench:2022.02.03


1.0.4 first weekday customization

Hi!,
I was using this really cool date picker, and I had the need to change the first week day (now Sunday is shown as the first week day, and I wanted to use Monday as the first)
To do so, I've added a new optional parameter firstWeekDay, with de default value of Sunday.
I'm also thinking about adding a localisation support, but this is not really urgent, since you already support customisations on weekday names and date formats.
Just let me know if I can help with anything else, and congratulations for this great plugin, I really appreciate it.

Thank you for using this plugin! I really appreciate your contribution! It's awesome feature! Actually, I'm also thinking about more localization like presenting date as 2/Jan/2021. But I need to study more and I'm implementing my applications. It could take quite long
Thank you again and Happy New Year!

What do you want for the localization support?

Hi!
Happy New Year to you too!
Thank you so much for accepting my PR. I really think you are doing a great job with this pluging, and it's a pleasure to help with anything you need.
Regardless the localization, here is the idea, but its up to you, if you like it we can implement it together.
Let's say we need to support 2 languages, english, and spanish. We could have an additional parameter in the CoolDatepicker class representing the locale we want.
Each locale should support:

Differents weekday names (for example, Monday, for english in "M", while in spanish is "Lu")
Differents month names (i.e. if we want to have January instead of 01 as month name)
Different first week day (for english the week starts on Sunday, while for Spanish it starts on Monday)
Differents ways of represent the date

You already support most of this features (in fact, I'm using this), but I would be nice to just provide my locale to the plugin and not having to worry about managing this all the time
I think we could achieve that by having a configuration class, for example, let's asume we support, by default, english and spanish, we could have a map holding

Locale("es","ES") -> All the spanish config
Locale("en","GB") -> All the english config

And so on (with all the locales we want to support). This could either be provided in a config file, or by code, we would have to think about it.
In addition, we should allow users to provide aditional locales configurations (imagine someone wants to provide a specific locale for Russian for example, or want's to override the Spanish default configuration)
It may be a little mess, idk if I make myself understand.
Let me know anything you need, and again congratulations for this great work, this is, by far, the best calendar plugin I've found in the flutter marketplace, and thank you for sharing it with the community


Low LBC fee for content creates discrepancies

The Issue
If Publishing content with a small LBC fee (I'm not sure what the breakage threshold is yet), the fee does not properly get set exactly to the desired amount. For instance, setting a fee of 0.01 LBC and then later checking the claim, the fee shows as:  0.009999999776482582 in resolve/claim_list_mine/claim_show (claimid = b0f204c4eaaed281be6e0c2f74cc02f719fe6f7b)
Another example was setting the fee to 0.1, but claim_list_mine/resolve shows: 0.10000000149011612 (claimid=6071f6d5796906c3f743393a74a3e5697866e648)
Most likely related to floating point: https://docs.python.org/2/tutorial/floatingpoint.html (thanks @hackrush01 !)
Steps to reproduce

Create a publish with small claim amount, like 0.1
Check result of resolve/claim_show/claim_list_mine afterwards

Expected behaviour
Fee should be set exactly to the desired amount
Actual behaviour
Fee is set to something slightly smaller/larger than the original amount.
System Configuration

LBRY Daemon version:
LBRY App version:
LBRY Installation ID:
Operating system:

Anything Else

Screenshots

@tzarebczan did you verify this happens via a CLI publish to eliminate any possibility that it is an app issue? (I think it is probably not, but it's good to make sure.)

I've seen this before in the daemon, yes its a floating point issue.

We could use Decimal module to represent those number as it provides accurate floating point arithmetic, just like Java's BigDecimal.

Given there is not arbitrary precision of credit amounts, shouldn't we be using Decimal type for all LBC values?

As I am given to understand LBC is divisible to 8 decimal places, and max amount possible in circulation will be 109(not sure, but still I can make my point). So that would mean the max precision should be 17 with scale of 8. So Decimal could be(and should be) used for handling all LBC values. Though I might be missing something here :-|

@kauffj just to be safe, confirmed it with a manual publish, same result.
Publish:
'{"method":"publish", "params": { "name": "testmanualpublish", "file_path": "C:\\ccsetup532.exe", "bid": 0.0011, "metadata":  { "description": "Some interesting content", "fee": {"currency": "LBC", "amount": 0.01}, "title": "Test manual upload", "language": "en", "license": "test Inc", "nsfw": false }}}'
Resolve:
fee": {
"address": "bRHR79gQTo7iHokbNqqN68tnmW6jiyp8gV",
"amount": 0.009999999776482582,
"currency": "LBC",
"version": "_0_0_1"

Too slow @tzarebczan, @kaykurokawa already opened a PR to fix this :stuck_out_tongue:

Well, at least I got to do my first publish via CLI :)

I have changed floating point to be represented with string here:
https://github.com/lbryio/lbryschema/pull/26

I believe there was already some work on this, was just never merged/finished. https://github.com/lbryio/lbry/pull/835

@tzarebczan You are right and @kaykurokawa requested a change in the lbryschema. I just wanted to point out that it is done, but I am not sure if it works.

@KamilPiekutowski just going through some old issues and noticed this one. Looks like https://github.com/lbryio/lbryschema/pull/26 was caught up in other changes. Did you want to work on the lbryschema changes required for https://github.com/lbryio/lbry/pull/835 ?

I don't think they were happy with my solution.
I got a very little feedback, so if this is fixed, no reason
for me to work on it.
Thanks for asking.
On Mon, May 14, 2018 at 4:02 PM, Thomas Zarebczan<EMAIL_ADDRESS>wrote:

@KamilPiekutowski https://github.com/KamilPiekutowski just going
through some old issues and noticed this one. Looks like
lbryio/lbryschema#26 https://github.com/lbryio/lbryschema/pull/26 was
caught up in other changes. Did you want to work on the lbryschema changes
required for #835 https://github.com/lbryio/lbry/pull/835 ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lbryio/lbry/issues/832#issuecomment-388961741, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AMb-jcGSRs5MHdyeMvpO8O1N2fGeIQ8sks5tyfDtgaJpZM4OyhV5
.

The only solution I was able to come up with was using 3rd party python
module that would generate duration of mp4.
However duration would only be added to newly uploaded videos with blry
version that supports  The videos that were uploaded with older lbry would
not support duration
unless we make lbry reload the claim info.
I think you guys did not want that solution.
I am not exactly sure how we can invoke other peers system to send us
duration info
before at least file header with all info is loaded.
I am open for suggestions,
or questions if I was not clear enough.
Thanks.
On Mon, May 14, 2018 at 4:21 PM, Thomas Zarebczan<EMAIL_ADDRESS>wrote:

@KamilPiekutowski https://github.com/KamilPiekutowski based on #835
(comment) https://github.com/lbryio/lbry/pull/835#issuecomment-327194727,
it still needs some lbryschema changes. I think the last pull was rejected
because it included some other changes (a PR should be specific to a single
change, or set of changes).
No pressure, was just trying to follow up :)
I know you said you wanted to to work on the filesize/length (
lbryio/lbryschema#20 https://github.com/lbryio/lbryschema/issues/20),
not sure if you ever had a chance to get around to that.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lbryio/lbry/issues/832#issuecomment-388967004, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AMb-jaKgtovmmyLtHI-qwZp0yKhGPU1rks5tyfVegaJpZM4OyhV5
.

no longer an issue


Report file uploads to IRC

This handles file_share message subtype which is sent when e.g. screenshot is pasted to Slack channel. It shows both Slack-internal link and public link. For the public link to work Slack config "Enable public file URL creation" must be enabled and file uploader must also click "Create external link" on the file.
Looks like this in IRC channel
20:58 < slack> <aketzu> File uploaded
             https://team.slack.com/files/aketzu/F60UD9R2L/pasted_image_at_2017_04_18_08_57_pm.png /
             https://slack-files.com/T0LK1LT6W-F60UD9R2L-8fb1c182e4 - comment here

Fixes #22

Coverage decreased (-1.6%) to 97.861% when pulling 2d8ee521795147887ca83f09ad44d91b90c2a79d on Aketzu:master into 28dd48be331445c2b13ebd4345e7335cfc045496 on ekmartin:master.

Coverage increased (+0.009%) to 99.465% when pulling 7440faf81df6ad161be24a42fc02d653f5d9f1e0 on Aketzu:master into 28dd48be331445c2b13ebd4345e7335cfc045496 on ekmartin:master.

Sorry about the slow response. This is now published in version 3.10.0 - thank you!


looking for read_structure column in samplesheet?

Description of the bug
Thank you for providing the fastquorum pipeline!
I have tried to install it and perform the test run with the command:
nextflow run nf-core/fastquorum -profile test,singularity --outdir my_test -r dev
The first issue was:
ERROR: Validation of pipeline parameters failed!
* Missing required parameter: --ref_fasta

I have provided a random (human) fasta file, but when I tried again
./nextflow run nf-core/fastquorum -profile test,singularity --outdir mike_test --ref_fasta "Homo_sapiens_assembly38.fasta" -r dev
I ran into the second issue
N E X T F L O W  ~  version 22.10.0
Launching `https://github.com/nf-core/fastquorum` [desperate_galileo] DSL2 - revision: e89ab00e02 [dev]

Core Nextflow options
  revision                  : dev
  runName                   : desperate_galileo
  containerEngine           : singularity
  launchDir                 : /gpfs/igmmfs01/eddie/bioinfsvice/fastquorum_test
  workDir                   : /gpfs/igmmfs01/eddie/bioinfsvice/fastquorum_test/work
  projectDir                : /home/mhalache/.nextflow/assets/nf-core/fastquorum
  userName                  : mhalache
  profile                   : test,singularity
  configFiles               : /home/mhalache/.nextflow/assets/nf-core/fastquorum/nextflow.config

Input/output options
  input                     : https://raw.githubusercontent.com/nf-core/test-datasets/viralrecon/samplesheet/samplesheet_test_illumina_amplicon.csv
  ref_fasta                 : /exports/igmm/eddie/BioinformaticsResources/igenomes/Homo_sapiens/GATK/GRCh38/Sequence/WholeGenomeFasta/Homo_sapiens_assembly38.fasta
  outdir                    : mike_test

Main options
  duplex_seq                : true

Read grouping options
  groupreadsbyumi_edits     : 1

Consensus reads options
  call_min_baseq            : 10

Consensus filtering options
  filter_min_baseq          : 10
  filter_max_base_error_rate: 0.1

Reference genome options
  genome                    : R64-1-1
  fasta                     : s3://ngi-igenomes/igenomes/Saccharomyces_cerevisiae/Ensembl/R64-1-1/Sequence/WholeGenomeFasta/genome.fa

Institutional config options
  config_profile_name       : Test profile
  config_profile_description: Minimal test dataset to check pipeline function

Max job request options
  max_cpus                  : 2
  max_memory                : 6.GB
  max_time                  : 6.h

!! Only displaying parameters that differ from the pipeline defaults !!
------------------------------------------------------
If you use nf-core/fastquorum for your analysis please cite:

* The nf-core framework
  https://doi.org/10.1038/s41587-020-0439-x

* Software dependencies
  https://github.com/nf-core/fastquorum/blob/master/CITATIONS.md
------------------------------------------------------
executor >  local (1)
[16/159a3d] process > NFCORE_FASTQUORUM:FASTQUORUM:INPUT_CHECK:SAMPLESHEET_CHECK (samplesheet_test_illumina_amplicon.csv) [100%] 1 of 1, failed: 1 ✘
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:FASTQC                                                                 -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:CUSTOM_DUMPSOFTWAREVERSIONS                                            -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:FASTQTOBAM                                                             -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:ALIGN_RAW_BAM                                                          -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:GROUPREADSBYUMI                                                        -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:CALLDDUPLEXCONSENSUSREADS                                              -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:COLLECTDUPLEXSEQMETRICS                                                -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:ALIGN_CONSENSUS_BAM                                                    -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:FILTERCONSENSUSREADS                                                   -
[-        ] process > NFCORE_FASTQUORUM:FASTQUORUM:MULTIQC                                                                [  0%] 0 of 1
Execution cancelled -- Finishing pending tasks before exit
-[nf-core/fastquorum] Pipeline completed with errors-
Error executing process > 'NFCORE_FASTQUORUM:FASTQUORUM:INPUT_CHECK:SAMPLESHEET_CHECK (samplesheet_test_illumina_amplicon.csv)'

Caused by:
  Process `NFCORE_FASTQUORUM:FASTQUORUM:INPUT_CHECK:SAMPLESHEET_CHECK (samplesheet_test_illumina_amplicon.csv)` terminated with an error exit status (1)

Command executed:

  check_samplesheet.py \
      samplesheet_test_illumina_amplicon.csv \
      samplesheet.valid.csv

  cat <<-END_VERSIONS > versions.yml
  "NFCORE_FASTQUORUM:FASTQUORUM:INPUT_CHECK:SAMPLESHEET_CHECK":
      python: $(python --version | sed 's/Python //g')
  END_VERSIONS

Command exit status:
  1

Command output:
  (empty)

Command error:
  INFO:    Convert SIF file to sandbox...
  WARNING: Skipping mount /exports/eddie3_apps_local/apps/SL7/singularity/3.5.3/var/singularity/mnt/session/etc/resolv.conf [files]: /etc/resolv.conf doesn't exist in container
  [CRITICAL] The sample sheet **must** contain the column headers: fastq_2, fastq_1, sample, read_structure.
  INFO:    Cleaning up image...

Work dir:
  /gpfs/igmmfs01/eddie/bioinfsvice/fastquorum_test/work/16/159a3d29d803243ed1b1e66950e9c7

Tip: when you have fixed the problem you can continue the execution adding the option `-resume` to the run command line

Any advice will be greatly appreciated!
Best,
Mike
Command used and terminal output
No response
Relevant files
No response
System information
No response

Can you post the sample sheet?  Did you make sure it has teh correct columns:

The sample sheet must contain the column headers: fastq_2, fastq_1, sample, read_structure

Hi,
Thank you for your reply and apologies for the delay (took me some time to obtain the read_structure info from the sequencing provider).
I am still struggling with parsing the sample sheet
Core Nextflow options
  revision                  : dev
  runName                   : fabulous_majorana
  containerEngine           : singularity
  launchDir                 : /gpfs/igmmfs01/eddie/ETR_BREAST_CANCER
  workDir                   : /gpfs/igmmfs01/eddie/ETR_BREAST_CANCER/work
  projectDir                : /exports/igmm/eddie/ETR_BREAST_CANCER/.nextflow/assets/nf-core/fastquorum
  userName                  : mhalache
  profile                   : singularity
  configFiles               : /exports/igmm/eddie/ETR_BREAST_CANCER/.nextflow/assets/nf-core/fastquorum/nextflow.config

Input/output options
  input                     : /exports/igmm/eddie/ETR_BREAST_CANCER/test_samples.csv
  ref_fasta                 : /exports/igmm/eddie/BioinformaticsResources/igenomes/Homo_sapiens/GATK/GRCh38/Sequence/WholeGenomeFasta/Homo_sapiens_assembly38.fasta
  outdir                    : test_results
  email                     : [xxx]
  multiqc_title             : test

Read grouping options
  groupreadsbyumi_edits     : 1

Consensus reads options
  call_min_baseq            : 10

Consensus filtering options
  filter_min_baseq          : 10
  filter_max_base_error_rate: 0.1

Execution cancelled -- Finishing pending tasks before exit
-[nf-core/fastquorum] Sent summary e-mail to [xxx] (sendmail)-
-[nf-core/fastquorum] Pipeline completed with errors-
Error executing process > 'NFCORE_FASTQUORUM:FASTQUORUM:INPUT_CHECK:SAMPLESHEET_CHECK (test_samples.csv)'

Caused by:
  Process `NFCORE_FASTQUORUM:FASTQUORUM:INPUT_CHECK:SAMPLESHEET_CHECK (test_samples.csv)` terminated with an error exit status (1)

Command executed:

  check_samplesheet.py \
      test_samples.csv \
      samplesheet.valid.csv

  cat <<-END_VERSIONS > versions.yml
  "NFCORE_FASTQUORUM:FASTQUORUM:INPUT_CHECK:SAMPLESHEET_CHECK":
      python: $(python --version | sed 's/Python //g')
  END_VERSIONS

Command exit status:
  1

Command output:
  (empty)

Command error:
  INFO:    Convert SIF file to sandbox...
  WARNING: Skipping mount /exports/eddie3_apps_local/apps/SL7/singularity/3.5.3/var/singularity/mnt/session/etc/resolv.conf [files]: /etc/resolv.conf doesn't exist in container
  [CRITICAL] The given sample sheet does not appear to contain a header.
  INFO:    Cleaning up image...

Work dir:
  /gpfs/igmmfs01/eddie/ETR_BREAST_CANCER/work/7e/e69ea9ab8ed3bd2485e60edb8494bd

Tip: when you have fixed the problem you can continue the execution adding the option `-resume` to the run command line

and here is the content of test_samples.csv
sample,fastq_1,fastq_2,read_structure
NA12878,raw_fastq/NA12878_S95_L001_R1_001.fastq.gz,raw_fastq/NA12878_S95_L001_R2_001.fastq.gz,151T12M11S128T
OncoSpan_gDNA,raw_fastq/OncoSpan_gDNA_S96_L001_R1_001.fastq.gz,raw_fastq/OncoSpan_gDNA_S96_L001_R2_001.fastq.gz,151T12M11S128T
Ref2_Quant,raw_fastq/Ref2_Quant_S31_L001_R1_001.fastq.gz,raw_fastq/Ref2_Quant_S31_L001_R2_001.fastq.gz,151T12M11S128T
Ref3_Struct,raw_fastq/Ref3_Struct_S57_L001_R1_001.fastq.gz,raw_fastq/Ref3_Struct_S57_L001_R2_001.fastq.gz,151T12M11S128T
RS102_Local,raw_fastq/RS102_Local_S36_L001_R1_001.fastq.gz,raw_fastq/RS102_Local_S36_L001_R2_001.fastq.gz,151T12M11S128T

I have also tried a tab-separated version of the sample sheet, as well as a version in which the order is "old_test_samples.csv" (as per your comment above)...
What am I doing wrong?
Thanks,
Mike

Hi again,
I think I found a solution to the problem. The problematic sample sheet was generated using the nano text editor; when I entered the information in MS Word and then copy/pasted it to nano it worked (I suppose there is some issue with the newline character?).
Also, had to modify the read_structure values, to separate (by space) the info for R1 and R2, i.e.
sample,fastq_1,fastq_2,read_structure
NA12878,raw_fastq/NA12878_S95_L001_R1_001.fastq.gz,raw_fastq/NA12878_S95_L001_R2_001.fastq.gz,151T 12M11S128T
....

I am closing this issue,
sorry and thanks.
Mike


How Can I Scrape All Hashtags of a Profile?

Hello and thanks for this hassle-free job, I have a question, is there any way to scrape all hashtags of posts from a certain profile?
Currently I am successful with scraping all captions of posts, but hashtags are mixed with other descriptions too. Sure, one way is to write a code to look into all .txt files related to captions and extract all hashtags, but just curious if there is an easy way to scrape hashtags only from captions at first hand.

Instaloader does not extract hashtags from posts. But on unix it's easy enough to do by yourself:
awk '{for (i=0; i < NF; ++i) {if (substr($i, 0, 1) == "#") print $i}}' < 2020-05..._UTC.txt
However, a user can put hashtags in comments on their posts. If you have scaped comments the following can be used to get the poster's comments, to be passed to awk for hashtag parsing:
jq --arg user USERNAMEHERE -r 'select(.[].owner.username == $user) | .[].text' < 2020-05..._comments.json

Post objects have the caption_hashtag attribute.
However,  user can put hashtags in comments on their posts aswell. If you are on unix and have scraped comments, you can use the following:
cat 2020-05..._comments.json \
| jq --arg user PROFILENAMEHERE -r 'select(.[].owner.username == $user) | .[].text' \
| awk '{for (i=1; i < NF; ++i) {if (substr($i, 0, 1) == "#") print $i}}'

To get the hashtags a user has posted in the comments.

That was a nice trick, thanks

So I have to access that caption_hashtag property through instaloader module only?

It can be accessed for metadata storage, i.e. --post-metadata-txt "{caption_hashtags}", which would save only the hashtags in your .txt-files.
(And sorry, it's caption_hashtags, plural-s at the end.)

Many thanks, very clean solution.


[Unity] Lowering of axis separator in Layout Transform

Enable lowering of AXIS_SEPARATORS in Relax Layout Transform
This change has a pre-requisite PR https://github.com/apache/tvm/pull/15315

cc: @junrushao @masahi @psrivas2 @sunggg @tqchen


Data resources are read when no changes are present

What steps did you take:
I have multiple modules with ytt data sources. On every terraform plan or apply, all the ytt resources are listed again as dirty and needing to be read.
What happened:
The data resource for ytt will always appear in the terraform plan/apply phase. This usually points to an issue with the provider not properly tracking state. Since this is files on the file system, perhaps you can save file hashes for ytt to know when a read needs to take place.
What did you expect:
Only ytt files that had changes should require being read in again. All other data sources should not need to appear in every plan.
Anything else you would like to add:
This makes it difficult to track changes in large deployments since every kapp and ytt resource is shown as being dirty we can't easily tell what actually changed.
https://github.com/hashicorp/terraform/issues/25805

Still a problem.

Issue remains

im not sure how to reproduce this. could you make a minimal example and provide steps, and output that i should be looking at.

Hey @cppforlife any suggestions?


update dockerfile with jdk

build the docker image with jdk to enable quality classifier. (Thanks @liuyanyi for providing the suggestion and solution)

LGTM


How to update Loss Function parameter during Training?

Hello,
I used  following custom loss function.

def w_categorical_crossentropy(y_true, y_pred, weights):
  nb_cl = len(weights)
  final_mask = K.zeros_like(y_pred[:, 0])
  y_pred_max = K.max(y_pred, axis=1)
  y_pred_max = K.reshape(y_pred_max, (K.shape(y_pred)[0], 1))
  y_pred_max_mat = K.cast(K.equal(y_pred, y_pred_max), K.floatx())
  for c_p, c_t in product(range(nb_cl), range(nb_cl)):
      final_mask += (weights[c_t, c_p] * y_pred_max_mat[:, c_p] * y_true[:, c_t])
  return K.categorical_crossentropy(y_pred, y_true) * final_mask

I need to change weight parameters after every epoch.
ncce = functools.partial(w_categorical_crossentropy, weights=w_array)
model.compile(loss=ncce, optimizer=sgd, metrics=['accuracy'])

However, when i call to above codes, optimizers state is lost, therefore training doesn't continue from previous epoch.
Are there any way for updating loss function without effecting training?

Maybe you can try following code after each epoch:
from keras import backend as K
K.clear_session()
Then you need recompile everything (you may also need define optimizers before every epoch) as well as update your loss function before running next epoch.
Just a thought.

@yushuinanrong, Problem is already redefining optimizers. When i done this, the state of the optimizer, allowing to resume training exactly where you left off, is lost. I shouldn' t lose optimizer state to continue training.

Are you using a dynamic optimizer? And what you mean of "state of the optimizer"?

https://keras.io/getting-started/faq/ , Under the title of "How can I save a Keras model?" , it refers state of optimizer and this is my optimizer codes:
sgd = SGD(lr=lrate, momentum=0.9, decay=0.0001, nesterov=False)

Create a new input to your Model with the weights and feed the weights for each batch.

I agree with @Dref360's solution. You can change your model architecture to incorporate a new input which corresponds to "weights" (Probably you cannot define a sequential model in this case). It should resolve your problem. Please let us know if your problem is solved.

Thank for your suggestion. I try to implement but i have still a problem.  I wrote following codes for implementing your idea, but i can not complete it because of giving multiple input.
def w_categorical_crossentropy(weights):
  def loss(y_true, y_pred)
    print(weights)
    print("----")
    final_mask = K.zeros_like(y_pred[:, 0])
    y_pred_max = K.max(y_pred, axis=1)
    y_pred_max = K.reshape(y_pred_max, (K.shape(y_pred)[0], 1))
    y_pred_max_mat = K.cast(K.equal(y_pred, y_pred_max), K.floatx())
    return K.categorical_crossentropy(y_pred, y_true)
  return loss

input = Input(shape=(10,))
w_array = Input(shape=(1,))
x1=model.add(Dense(512, activation='relu'))(input)
x2=model.add(Dropout(0.2))(x1)
x3=model.add(Dense(512, activation='relu'))(x2)
x4=model.add(Dropout(0.2))(x3)
out= model.add(Dense(num_classes, activation='softmax'))(x4)
model = Model([input,w_array], out)
model.compile(loss=w_categorical_crossentropy(w_array),
              optimizer=sgd(),
              metrics=['accuracy'])

for i in range(15):
 // following will give error probably
  history = model.fit(x_train, y_train,
                    batch_size=batch_size,
                    epochs=1,
                    verbose=1,
                    validation_data=(x_test, y_test))

How can i acces  and change  w_array? Also , how can i call fit function with two input?

@e181978 Please check the multi-input multi-output example in Keras's document:
https://keras.io/getting-started/functional-api-guide/#multi-input-and-multi-output-models
Note you need use functional API to define your model instead of constructing a sequential model.
"model.add()" is something used in sequential model.

Closing as this is resolved


Only set cookie header if cookieString isn't empty

At the moment wrappedFetch will always send a cookie header with each request, even if the header value is empty. Sending an empty cookie header differs from the implementation of most web browsers, makes requests much more recognizable and hinders use for web scraping. This PR ensures a cookie header is only set if cookieString is not empty.

hi
thanks for contributing

tagged as v5.0.4


[WFLY-7844] credential-reference into dir-context

Depends on https://github.com/wildfly-security/wildfly-elytron/pull/613
Depends (bidirectional) on https://github.com/wildfly-security-incubator/wildfly-core/pull/29 (needs to be coordinated)
https://issues.jboss.org/browse/WFLY-7844

@honza889 I am currently getting a test failure when I merge this one comparing the XML

@darranl Rebased.
Just note the mentioned core fix is needed for green tests:
https://github.com/wildfly-security-incubator/wildfly-core/pull/29

@darranl  Rebased, removed commit fixing WFCORE-2156 (which was already solved)


Shuffle Algorithm Issues

Brief Intro
The Fisher-Yates / Knuth shuffle algorithm doesn't include the first index in the array and the swap() function should be changed to the swapAt method.
More Details
The algorithm should include the first index of the array (index 0), which currently isn't accounted for (instead stopping at index 1).  Also, because of changes in Swift 4, when using the swap() function in this way, the following error occurs:
Simultaneous accesses to xxxxxxxx, but modification requires exclusive access
Therefore, I believe the following changes should be implemented as such:
extension Array {
  public mutating func shuffle() {
    for i in stride(from: count - 1, through: 0, by: -1) {
      let j = random(i + 1)
      if i != j {
        self.swapAt(i, j)
      }
    }
  }
}

You're correct about the swap but not about the array index. Read the article for why we stop at index 1.

Thank you for the reply.  I misunderstood the need for accounting for index 0 and I see now why it isn't necessary.

Closed as resolved.


Add table access rules to FileBasedSystemAccessControl

Currently FileBasedSystemAccessControl control has catalogRules, queryAccessRules, impersonationRules, principalUserMatchRules and schemaAccessRules.
The proposal here is to add table access rules to it. This will give more granular access controls over the datasets.
At high level idea is to implement/enhance the below methods of FileBasedSystemAccessControl
1. checkCanDropTable 				- Allow if user has OWNERSHIP access to table
2. checkCanRenameTable 			- Allow if user has OWNERSHIP access to table
3. checkCanGrantTablePrivilege		- Allow if user has OWNERSHIP access to table
4. checkCanRevokeTablePrivilege	        - Allow if user has OWNERSHIP access to table
5. checkCanShowCreateTable		- Allow if user has OWNERSHIP access to table
6. checkCanAddColumn				- Allow if user has OWNERSHIP access to table
7. checkCanDropColumn			- Allow if user has OWNERSHIP access to table
8. checkCanRenameColumn			- Allow if user has OWNERSHIP access to table
9. checkCanSetTableComment		- Allow if user has OWNERSHIP access to table
10. checkCanShowColumns  			- Allow if user has any the SELECT, INSERT, DELETE, OWNERSHIP, GRANT_SELECT access to table
11. filterColumns					- Allow if user has any the SELECT, INSERT, DELETE, OWNERSHIP, GRANT_SELECT access to table
12. checkCanSelectFromColumns          - Allow if user has SELECT access to table
13. checkCanInsertIntoTable			- Allow if user has INSERT access to table
14. checkCanDeleteFromTable		- Allow if user has DELETE access to table

Please find below the slack discussion on the same
https://prestosql.slack.com/archives/CFLB9AMBN/p1588921035123100?thread_ts=1507847605.000156&cid=CFLB9AMBN
@kokosing @findepi

3. checkCanGrantTablePrivilege		- Allow if user has OWNERSHIP access to table
4. checkCanRevokeTablePrivilege	        - Allow if user has OWNERSHIP access to table

How does it work with file based access control? User cannot GRANT or REVOKE anything because configuration is static (controlled by the file content, which could be modified externally)? Do you modify the file (haven't reviewed the code yet)?

@kokosing - yes you can modify the access control file and can assign TablePreviledges like SELECT, INSERT, DELETE, OWNERSHIP, GRANT_SELECT  against a user

@kokosing @electrum @findepi
Is there any thing else i need to do for this PR?


Justfile icon too small

The justfile icon is smaller than the regular icon size. File names are not aligning correctly.

In 0.6.1, 16x16 will be used as justfile icon


Grass decays in all Bioms except of Ocean

Why was this closed? Was the bug report invalid?

I have also noticed this bug.

I've checked the code and don't see why it happens... Maybe a matter of light values ?
I'll dig it more deeply.

I'm not seeing this bug anymore.

I'm seeing this again. It seems to only happen when the world has been generated using the vanilla server.

Somehow we are unable to get block light level or light opacity when the world was generated with vanilla ?

But wouldn't it generate the values if they were missing? Maybe there is a read error and it assumes the values are 0 as a default value.

Fixed in https://github.com/GlowstoneMC/GlowstonePlusPlus/commit/b4cccef350227fa7d334b823423c9c72520b8907.


[Relay] Re-run PlanDevices after LowerTE to flow new memory scope constraints.

This PR:

Makes PlanDevices consider lowered calls when solving device domain constraints.
Connects the storage scopes on PrimFunc parameters (encoded in their Buffer data
Var type annotation PointerTypes storage_scope fields) to the memory_scope
fields of the SEScopes which PlanDevices unifies over.
Allows new device_copies to be inserted on the arguments and results of lowered
calls so as to acount for any memory scope mismatches which are now apparent.

[device_planner.cc has main changes, rest is secondary.]
In the short term we'd like to use this machinery to flow memory scope choices made
during lowering back out into the overall Relay program. In the longer term we'd
also like to be able to use memory scopes to influence the lowering of
yet-to-be-lowered functions (or lowered functions which have yet to been scheduled,
a distinction now possible with TensorIR).

Memory scope constraints can flow both out of and in to PrimFuncs
introduced by LowerTE. In TIR memory scopes are represented by
'storage scopes' on the PointerType type annotations on TIR Buffer data
variables.

It is straightforward to extract memory scopes from PrimFuncs by
looking at the PrimFunc's buffer_map. We do this is 'phase 1' of
PlanDevices, which collects all the device constraints implied by
However, pushing memory constraints in to PrimFuncs is more challenging
due to buffer aliasing. This aspect is still experimental.

Allow device_copies to be inserted for both arguments and
results of PrimFunc calls, on the assumption PlanDevices has
already established a consistent device assignment prior to
lowering and any new mismatch is required to match up memory scopes.
We use the new 'free' on_device annotations to implement this.

Coming along for the ride:

To make unit tests of mixed Relay/TIR functions possible needed
to be able to supply a checked_type to GlobalVar since that's currently
the only way to give a Relay type to PrimFuncs.

Use GenSym to get unique var names in ANF & partial eval so easier
to diff debug output between passes and connect program fragments
back into the overall program. Relying on pretty-printing to
automagically unique-ify var names is certainly cute but until we
have better span support is very hard to work with.

Realized both dead_code.cc and fold_constant.cc would
happily move values into a different lexical virtual
device context since device_planner.cc was being
'clever' and eliding on_devices for let-bound values
when there's no change. Fixed so that every let-bound
value has an on_device. Will be much better after
https://github.com/apache/tvm-rfcs/pull/45 is implemented.

Make build -Werror clean for clang-12 (mostly move fixups).

Address post-submit comments from #9693.

Thanks @mbs-octoml @jroesch


No destinationBucket support in storage copy?

Is your feature request related to a problem? Please describe.
Yes, the current storage_client package (version 2.0.3) does not support copying files between different buckets. While the supabase-js library includes an option to specify a destinationBucket when copying a file, the Flutter version only allows copying files within the same bucket. This inconsistency between the platforms leads to frustration when working with Supabase storage in Flutter, especially when there is a need to move files across buckets. It becomes inconvenient to download the file from one bucket and re-upload it to another, which introduces unnecessary complexity and performance issues.
For example, the Flutter SDK code in storage_client-2.0.3/lib/src/storage_file_api.dart currently looks like this:
Future<String> copy(String fromPath, String toPath) async {
  final options = FetchOptions(headers: headers);
  final response = await _storageFetch.post(
    '$url/object/copy',
    {
      'bucketId': bucketId,
      'sourceKey': fromPath,
      'destinationKey': toPath,
    },
    options: options,
  );
  return (response as Map<String, dynamic>)['Key'] as String;
}

Whereas supabase-js supports copying across buckets, as seen here:
async copy(
  fromPath: string,
  toPath: string,
  options?: DestinationOptions
): Promise<
  | {
      data: { path: string }
      error: null
    }
  | {
      data: null
      error: StorageError
    }
> {
  const data = await post(
    this.fetch,
    `${this.url}/object/copy`,
    {
      bucketId: this.bucketId,
      sourceKey: fromPath,
      destinationKey: toPath,
      destinationBucket: options?.destinationBucket,
    },
    { headers: this.headers }
  );
  return { data: { path: data.Key }, error: null };
}

This inconsistency severely limits the functionality of the Flutter SDK when compared to other platforms, and it results in a fragmented experience across different languages (such as TypeScript and Swift) for developers working with Supabase storage.
Describe the solution you'd like
I would like the supabase-flutter package to support the destinationBucket parameter in the copy method, just as it is supported in supabase-js and supabase-swift. This would enable developers to copy files across different buckets within Supabase storage without the need for workarounds like downloading and re-uploading files.
The new copy method signature in the Flutter package should look like this:
Future<String> copy(String fromPath, String toPath, {String? destinationBucket}) async {
  final options = FetchOptions(headers: headers);
  final response = await _storageFetch.post(
    '$url/object/copy',
    {
      'bucketId': bucketId,
      'sourceKey': fromPath,
      'destinationKey': toPath,
      'destinationBucket': destinationBucket,
    },
    options: options,
  );
  return (response as Map<String, dynamic>)['Key'] as String;
}

This will provide a consistent and unified experience across different SDKs, and make file management more efficient and straightforward in Flutter.
Describe alternatives you've considered
The alternative I have considered involves manually downloading the file from the source bucket and then uploading it to the destination bucket, followed by potentially deleting the original file. While this workaround is technically possible, it is cumbersome and inefficient. It increases bandwidth usage, introduces additional code complexity, and results in poor performance for large files or when performing many file operations.
Here’s an example of the workaround:
Future<void> copyFileBetweenBuckets(String sourceBucket, String sourcePath, String destinationBucket, String destinationPath) async {
  try {
    // Download the file from the source bucket
    final response = await Supabase.instance.client.storage.from(sourceBucket).download(sourcePath);
    if (response == null) {
      throw Exception('Failed to download file from $sourceBucket/$sourcePath');
    }

    // Upload the file to the destination bucket
    await Supabase.instance.client.storage.from(destinationBucket).upload(destinationPath, response);

    debugPrint('File successfully copied to $destinationBucket/$destinationPath');
  } catch (e) {
    debugPrint('Error during file copy: $e');
  }
}

This alternative is not ideal as it is error-prone and involves additional steps that should be handled internally by the SDK.
Additional context

This feature is crucial for developers managing multiple buckets for different purposes, such as separating public and private content.
It is important to maintain parity between the various Supabase SDKs (JavaScript, Swift, Flutter, etc.) so developers can expect the same functionality across platforms.
The Swift implementation also supports the destinationBucket option, as shown here:

public func copy(
  from source: String,
  to destination: String,
  options: DestinationOptions? = nil
) async throws -> String {
  struct UploadResponse: Decodable {
    let Key: String
  }

  return try await execute(
    HTTPRequest(
      url: configuration.url.appendingPathComponent("object/copy"),
      method: .post,
      body: configuration.encoder.encode(
        [
          "bucketId": bucketId,
          "sourceKey": source,
          "destinationKey": destination,
          "destinationBucket": options?.destinationBucket,
        ]
      )
    )
  )
  .decoded(as: UploadResponse.self, decoder: configuration.decoder)
  .Key
}

It would greatly benefit the Flutter community to have this feature available as soon as possible to align with the functionality provided by the other SDKs.

@Vinzent03  thanks for taking care of this. will we have this on the next release? any ETA?


Be a little more permissive in emoji grapheme literals.

The user experience with extended grapheme literals is currently:

Strict: we hard error on "invalid" grapheme literals.

Complete: we validate all literals to either be
known-single-grapheme or not.

Incorrect: we have Unicode 8 semantics implemented but applications
will have some other version of Unicode as dictated by the OS they are
running on.

In Swift 4.0, this incorrectness mostly crops up in obscure corner
case areas, where we are overly restrictive in some ways and overly
relaxed in others. But, there is one particularly embarrassing area
where it does come up: we reject emoji introduced after Unicode 8 as
grapheme literals, counter to common user expectations.
In a future (sub-)version of Swift we should completely re-evaluate
this user story, but doing so in time for Swift 4.0 is untenable. This
patch attempts to tweak the way in which we are incorrect in the most
minimally invasive way possible to preserve the same user experience
while permitting many post-Unicode-8 emoji as valid grapheme literals.
This change overrides processing of ZWJ and emoji modifiers to not
declare a grapheme break after/before, respectively.

Resolves SR-4546.

@swift-ci please test

@jrose-apple can you review? Otherwise, do you know someone else who would be able to?


Heroku 20 doesn't ship with Ruby 2.6.5

I tried to set this up using the deploy to Heroku button but it looks like the default Heroku 20 doesn't have Ruby 2.6.5 on it.
I was able to deploy my own fork by updating things to 2.6.6 without much issue, though I do have a few Harvest users that don't come through in the time report query for some reason - I'm unsure if that's related or not.

Just to follow up on this, it looks like my secondary issue is actually because if you report no time at all, the Harvest API call for the team's time report won't return any entry for you effectively skipping you.


Pin buildpack

Jira link
n/a
What?
I have added/removed/altered:

[ ] Pining the CloudFoundry build pack version

Why?
I am doing this because:

We want the build pack ruby and bundler versions to match the ones were pinned in the repo.

Moved into #36


Clean up the [un]structured conversions a bit

I think this is "The Right Way" to do it, but I could be wrong. Makes
the code a bit smaller anyway.

Fixes https://github.com/knative/serving-operator/pull/20#discussion_r297817556

Thanks for doing this!
/lgtm
/approve

/lgtm


wait for test hub to be responsive in install-hub

The testing/minikube/install-hub script is used to launch jupyterhub with helm. Currently, it waits for the pods to be running, but it doesn't wait for the hub socket to accept connections.
The fixture in conftest.py checks for a running hub with a timeout, but will fail immediately with ConnectionRefused if nothing is there. This has caused the main tests to fail sometimes on Travis when jupyterhub is slow to warm up.
As a band-aid in #305 I added a sleep after running install-hub on Travis because I didn't want to hold up that PR for a fix.
The fix should be: in install-hub, after waiting for the pod to be running, wait for the Hub to accept connections. With that, the sleep in ci/test-main ought to be removed.

Hmm, perhaps we can add a readiness check to the hub deployment, which will make it not be Running until it passes the check? (I think)

I'm assuming this has been fixed since the CI has had quite a few changes in the past few years.


image_buffer size differs from size passed to SimulatorDisplay

Version of embedded-graphics in use (if applicable): [version here]

embedded-graphics = "0.6"
embedded-graphics-simulator = "0.2"

Target: [simulator] / [real hardware]
ImageBuffer for use with imgui on glium

Description of the problem
The image_buffer size differs from the size passed to SimulatorDisplay (content_region_size).
This is bad because the texture is much larger than I want and thus uses more mem, and I use many textures. (But it renders fine with imgui.)
Output:
content_region_size width: 800, height: 52
image_buffer width: 3199, height: 207

Test case (if applicable)
pub fn draw_texture(
	gl_ctx: &impl Facade,
	content_region_size: [f32; 2],
	m_texture_id: &mut Option<TextureId>,
	textures: &mut Textures<Rc<Texture2d>>,
) {
	fn draw_into_buffer(
		(width, height): (u32, u32),
	) -> Result<ImageBuffer<Rgb<u8>, Box<[u8]>>, core::convert::Infallible> {
		let mut display: SimulatorDisplay<BinaryColor> = SimulatorDisplay::new(Size::new(width, height));
		Text::new("Hello World!", Point::new(5, 5))
			.into_styled(TextStyle::new(Font6x8, BinaryColor::On))
			.draw(&mut display)?;

		let output_settings = OutputSettingsBuilder::new().theme(BinaryColorTheme::OledBlue).build();
		Ok(display.to_image_buffer(&output_settings))
	}

	let (width, height) = (content_region_size[0] as u32, content_region_size[1] as u32);
	println!("content_region_size width: {}, height: {}", width, height);
	let image_buffer = draw_into_buffer((width, height)).unwrap();

	// image_buffer size differs from content_region_size
	let (width, height) = (image_buffer.width(), image_buffer.height());

	println!("image_buffer width: {}, height: {}", image_buffer.width(), image_buffer.height());
	let data = image_buffer.into_raw().into_vec();

	let raw = RawImage2d { data: Cow::Owned(data), width, height, format: ClientFormat::U8U8U8 };
	let gl_texture = Texture2d::new(gl_ctx, raw).unwrap();
	let gl_texture = Rc::new(gl_texture);

	if let Some(texture_id) = *m_texture_id {
		textures.replace(texture_id, gl_texture);
	} else {
		*m_texture_id = Some(textures.insert(gl_texture));
	}
}

I'm not quite sure what you're getting at here. For the two numbers you mentioned, is (800, 52) the pixel size of the text and (3199, 207) the size of the entire canvas? Are you somehow trying to just get the sub-buffer with only the text in it?

@jamwaffles No, what I mean is: I'm getting content_region_size from imgui, it's the available area, and I want to render a texture that is exactly that size, so I pass it to this function. I create the SimulatorDisplay with this size. BUT the ImageBuffer that it returns has the size (3199, 207). Any idea why?
Maybe it's related to my other issue? https://github.com/jamwaffles/embedded-graphics/issues/299

Because the simulator is primarily used for simulating small displays like on a PC monitor, some scaling is automatically applied when selecting a BinaryColorTheme. If you add .scale(1).pixel_spacing(0) when calling the output settings builder the ImageBuffer should be the same size as the SimualtorDispay.

@rfuest Thanks, that solved it :)
I thought the default values would lead to equal size of the output buffer..


Include esy fallback for unsupported platforms

@aantron added in bisect_ppx a really nice fallback approach where after downloading, the ppx will build with esy if the user platform is not supported by the prebuilt binaries.
Would be nice to add this to the hello-ppx-esy example.

Bisect_ppx is set up so that this fallback approach is actually the primary build system for release binaries. Since the binaries are missing in master, this triggers the "fallback", and the CI caches the result of the binary build to create the binary release (branch binaries).


Cannot switch palettes in Storybook preview

Could maybe use #9 or make something custom using the Storybook controls api

This is now integrated in main. Closing issue.


Azure DevOps Calendar not visible

I have the calendar plugin for Azure DevOps.  I am an Admin in the instance/on the project.  I am unable to use the calendar function in one of our project while others on my team are.  I am able to access other projects.  Just not this one.  Photo attached.

Thanks for reporting, can you describe your environment? Can you see any error in the console or network logs in the browser (using F12, debug tools)?

Calendar renders the same as the screenshot in my environment.  I'm running Azure DevOps Server 2019, extension version 2.0.17.
Console shows getQueryParams is not a function

@UrsulaConley @MangliB , we decided to revert the latest change to resolve the issue it caused for Azure DevOps 2018 and 2019. Can you check that the Calendar look ok for you again with the 2.0.22 version?

@MOlausson  Calendar is working again with 2.0.22

Perfect, thanks for confirming @MangliB! Closing this as resolved.


EarlyStopping is ignoring my custom metrics defined

Hi there, I am trying to classify Credit Card Fraud with a nn Keras  model.
Because the dataset is imbalanced, I need to use f1_score to improve the recall.
Apparently, is not accepting the f1s definition.
How to monitor my new metrics in each epoch? The early stopping works fine if with val_loss but not with the defined ones
I would appreciate your help to solve my issue.
df = pd.read_csv('creditcard.csv')
X = df.iloc[:, :-1].values
y = df.iloc[:, -1].values
X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=0.3, random_state=1)
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)
import keras
import numpy as np
import sklearn.metrics as sklm
class Metrics(keras.callbacks.Callback):
def on_train_begin(self, logs={}):
self.confusion = []
self.precision = []
self.recall = []
self.f1s = []
self.kappa = []
self.auc = []
def on_epoch_end(self, epoch, logs={}):
    score = np.asarray(self.model.predict(self.validation_data[0]))
    predict = np.round(np.asarray(self.model.predict(self.validation_data[0])))
    targ = self.validation_data[1]

    self.auc.append(sklm.roc_auc_score(targ, score))
    self.confusion.append(sklm.confusion_matrix(targ, predict))
    self.precision.append(sklm.precision_score(targ, predict))
    self.recall.append(sklm.recall_score(targ, predict))
    self.f1s.append(sklm.f1_score(targ, predict))
    self.kappa.append(sklm.cohen_kappa_score(targ, predict))
    return

metrics = Metrics()
clf51 = Sequential([
Dense(units=128, kernel_initializer='uniform', kernel_regularizer=regularizers.l2(0.05), input_dim=30, activation= 'relu', name='layer1_In'),
Dropout(0.5),
Dense(units=128, kernel_initializer='uniform', activation='relu', name='layer2'),
Dropout(0.5),
Dense(128, kernel_initializer='uniform', kernel_regularizer=regularizers.l2(0.03), activation='relu', name='layer3'),
Dropout(0.5),
Dense(1, kernel_initializer='uniform', activation='sigmoid', name='layer6_Out')
])
Define callbacks
baselogger = BaseLogger()
earlystop = EarlyStopping(monitor='f1s', min_delta=1e-4, patience=5, verbose=0, mode='max')
reduce_lr = ReduceLROnPlateau(monitor='recall', factor=0.2, patience=5, min_lr=0.001)
setting up the optimization of our weights and compile
sgd51 = SGD(lr=0.00825, decay=1e-6, momentum=0.9, nesterov=True)
clf51.compile(optimizer=sgd51, loss='binary_crossentropy', metrics=["accuracy"])
with tf.Session(config=tf.ConfigProto(
intra_op_parallelism_threads=12)) as sess:
K.set_session(sess)
clf51.fit(X_train, Y_train, batch_size=384, epochs=10, callbacks=[earlystop, metrics], validation_split=0.30, verbose=2)
score = clf51.evaluate(X_test, Y_test, batch_size=128, verbose=1)
y_pred = clf51.predict(X_test)
checkpoint = ModelCheckpoint('model_CLF51.hdf5', save_best_only=True, monitor='f1s', mode='max')
I receive this mesagge:
Train on 139554 samples, validate on 59810 samples
Epoch 1/10

7s - loss: 0.3585 - acc: 0.9887 - val_loss: 0.0560 - val_acc: 0.9989
/home/libardo/anaconda3/lib/python3.6/site-packages/keras/callbacks.py:526: RuntimeWarning: Early stopping conditioned on metric f1s which is not available. Available metrics are: val_loss,val_acc,loss,acc
(self.monitor, ','.join(list(logs.keys()))), RuntimeWarning

That's not how you define a metric. You defined a Callback which is not the same thing.
This issue isn't related to a bug/enhancement/feature request or other accepted types of issue.
To ask questions, please see the following resources :

https://keras.io/
https://keras.io/#support
https://gitter.im/Keras-io/Lobby

Thanks!
If you think I made a mistake, please re-open this issue.

I have the same problem.
I'm using a custom metric:
#https://stackoverflow.com/a/45305384/5210098
def f1_metric(y_true, y_pred):
    def recall(y_true, y_pred):
        true_positives = K.sum(K.round(K.clip(y_true * y_pred, 0, 1)))
        possible_positives = K.sum(K.round(K.clip(y_true, 0, 1)))
        recall = true_positives / (possible_positives + K.epsilon())
        return recall

    def precision(y_true, y_pred):
        true_positives = K.sum(K.round(K.clip(y_true * y_pred, 0, 1)))
        predicted_positives = K.sum(K.round(K.clip(y_pred, 0, 1)))
        precision = true_positives / (predicted_positives + K.epsilon())
        return precision
    precision = precision(y_true, y_pred)
    recall = recall(y_true, y_pred)
    return 2*((precision*recall)/(precision+recall+K.epsilon()))

and use EarlyStopping like this:
early_stop = keras.callbacks.EarlyStopping(monitor='val_f1_metric', patience = 5)
and compile with the new metric:
model.compile( loss="categorical_crossentropy", optimizer='adam', metrics=['acc', f1_metric])
    print("Model Size = "+str(eval_act.count_params()))

and put it in callbacks of fit function. The output is fine:
Epoch 5/50
 - 28s - loss: 0.5225 - acc: 0.9530 - f1_metric: 0.9533 - val_loss: 0.4911 - val_acc: 0.9401 - val_f1_metric: 0.9403

But it never goes further 6 epochs, because the patience is 5, eventhough there still progress.


Aurora GSI config File could not be installed Dota2

Aurora tells my my game is not installed
Trying to get game path for: 570  (<-- Dota2)
SteamUtils: GetGamePath(570) exception: System.Collections.Generic.KeyNotFoundException: Der angegebene Schlüssel war nicht im Wörterbuch angegeben.
bei System.Collections.Generic.Dictionary`2.get_Item(TKey key)
:/ i tried reinstalling aurora too
wierd is Dota2 actually is recognized by Aurora (default lighting changes)
but i cant get the GSI to work

i will reinstall Dota cause i think i moved it around once


Adding aldryn-faq

added aldryn-faq
also adapt some settings which were improved during the aldryn-faq implementation

Can't be merged before new aldryn-faq release!

:+1:

LGTM


HiFiC (WIP)

Useful links:
https://github.com/tensorflow/compression
https://github.com/google/compare_gan
https://github.com/Justin-Tan/high-fidelity-generative-compression

@mmuckley closing, will open feature PRs


__response is considered when checking if a result is identical to the previous one

In lib/builtin/stream_table_ops.js : isNewTuple,  we also pass __result, which means that if the result string displayed to the user is not deterministic it will throw off our event deduplication logic and trigger excessive notifications.
Found accidentally while debugging something else.

I think we fixed this one.


Bump to recent pangeo image version

For an upcoming LEAP workshop we require a version bump of the images. I hope this is the right way to request that.

I think the problem is with the sops hook pre-commit is running. The code of the hook itself is using a YAML parser to try and read a JSON file that contains a hard tab character \t (which interestingly is the only case where valid JSON is not also valid YAML). So the fix needs to happen upstream, not in this repo.
I opened https://github.com/yuvipanda/pre-commit-hook-ensure-sops/issues/9 to track.


"Catalog Dataset with Attributes" Form

Catalog a workspace with a set of attributes so it can easily be searched from the FireCloud dataset workspace library. This is the form we talked about, it's ok being single page instead of multi part. We should use the same permissions level(s) as required in FireCloud.
AC: Form exists and permissions level(s) same as required in FireCloud.
Implementation Note: OK (maybe preferable) to inline the data that drives this from the FC version. (Ask Brett). Other information (such as the disease ontology) should not be inlined. Endpoints exist for this.

@bradtaylor were you going to look into requirements on this one given that it's such a large/complicated task? We should probably start this one sooner rather than later to leave time for the anticipated questions/risks.


[CARBONDATA-2545] Fix some spell error in CarbonData

intialize => initialize
Idnentifier => Identifier

[ ] Any interfaces changed?
NA
[x] Any backward compatibility impacted?
NO
[x] Document update required?
No
[x] Testing done
change some spell
[x] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

No

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/5415/

LGTM


official image lacks apk-install

is this by accident or on purpose?
if accident, then a big :+1: for https://github.com/gliderlabs/docker-alpine/issues/14
user@wormhole:~$ docker pull alpine:latest
511136ea3c5a: Already exists
b0b08730b93c: Already exists
alpine:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
Status: Image is up to date for alpine:latest
user@wormhole:~$ docker run --rm -t alpine:latest find / -name apk-install
user@wormhole:~$

official image maintainers wouldn't allow it. our version gliderlabs/alpine will continue to be available built from same source but with apk-install

ack, thx!

Please ignore the last reference – had a typo 17 vs 137 when referencing issues.


Is it possible to Attack barbarians for multiple levels?

Hi in function 22 Attack barbarians of the readme is mentioned that "You can send your troops in many rounds and repeat the attack as many times as you want." but it seems that the bot stops after one level is beaten.
Am i understanding something wrong? because i understood that the bot is able to send the same amount of units and ships for the next barbarian level with the same units and ships

Right now you can't attack the barbarians many times, the text in the readme is misleading, I will fix it. Thanks
Note:
If you want you can automate the orders to attack using pre-defined input as described here.


add recycle_arena macro

This fixes #25.

Thank you for the PR. Would you like to add recycle macros for Tiny- and NanoArena, too?

Can I do this in a followup, please?

Fine with me. :+1:


When deleting Metal Gateway 404 is seen as error instead of success

When deleting Metal Gateway 404 is seen as error instead of success
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 me too comments, 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.

Terraform Version

Affected Resource(s)

equinix_metal_gateway

Terraform Configuration Files

# Copy-paste your Terraform configurations here.
#
# For large Terraform configs, please use a service like Dropbox and share a link to the ZIP file.
#
# If reproducing the bug involves modifying the config file (e.g., apply a config,
# change a value, apply the config again, see the bug), then please include both:
# * the version of the config before the change, and
# * the version of the config after the change.

Debug Output

Panic Output

Expected Behavior

Actual Behavior

Steps to Reproduce

terraform apply

References

#0000

@displague There is some code that guards the HTTP response codes when deleting metakk gateway:
https://github.com/equinix/terraform-provider-equinix/blob/main/equinix/resource_metal_gateway.go#L162
What's the scenario when the tf delete fails?


Why does Facebook ask to approve login from China? Should I be worried?

Operating system: macOS 10.12
Messenger for Desktop version: <IP_ADDRESS>

Nvm, it seems it was an issue with a VPN.


mutating linear_velocity() causes problems with gravity and collisions

    query(driven_power()).each_frame(|driven_bodies|{
        for (body,power) in driven_bodies {
            // (!!!) at any nonzero value, this cancels out gravity
            // (!!!) when moving into collision, this causes weird behaviour
            entity::mutate_component(body, linear_velocity(), |linvel|linvel.x -= power * delta_time());
        }
    });

See ember here
(P.S> please note it has as dependency another ember in the same repo, in a different folder, so you really need the whole thing)
https://github.com/droqen/23-08Blue/tree/main/Sketchbook/saa-physics-momentum-err
gif of saa-physics-momentum-err illustrating the problem:

There are actually two separate problems being illustrated

When linear_velocity is being mutated each frame, it seems to prevent gravity from updating properly (but it does not completely stop gravity)

When linear_velocity is being mutated each frame, it seems to override the effect a collision should have on velocity (i.e. when moving into something, it should slow/stop your velocity, but here it seems to not to that)

I could not find any good examples of how physics objects are intended to be accelerated, so maybe I'm doing something wrong?

Hmm. I can probably close this. I found the functions in physics:: that I suppose I must be intended to use! Like add_force.

I'll leave this up for posterity - maybe there should be some kind of warning? Not sure.

Yeah, linear_velocity changes are discontinuous - you can't really update it every frame because the physics system needs to update it, too.
I've updated the description of the components in https://github.com/AmbientRun/Ambient/commit/4b173090a78ac3f7788f7769bf38d9aaf56ce94e - do you think that sufficiently clarifies the issue?

Shows up when you mouse over the component, or when you look at it in the API docs:


Fix v1.x.0 version reconcile logic in script

What type of PR is this?
/kind ci
What this PR does / why we need it:
The script thinks the version already exists but we need a dedicated path for .0 releases.
Which issue(s) this PR fixes:
None
Special notes for your reviewer:
None
Does this PR introduce a user-facing change?

None

/lgtm


Caching API calls using Rails low level cache

I am using the google-api-client gem to connect to the Google Analytics API and request data from my analytics account for pageviews for a 30-day period.
I am authenticating and retrieving data just fine. The catch is making that many API calls, which slows my view down. So, I tried to cache the API calls using
 result = Rails.cache.fetch('google_analytics_api/#{cache_key}', expires_in: 2.hours) { client.execute(:api_method => analytics.data.ga.get, :parameters => parameters) }
and I got a no _dump_data is defined for class OpenSSL::PKey::RSA
I would really like to cache my API calls or else the page I displaying the analytics data, loads really slow. Is caching possible using google-api-client gem?
Pertinent code:
https://gist.github.com/rishighan/dc63d225e1ef63ce72e0

I would suggest making calls like that in a background process and storing the data, rather than on-the-fly. Even using the API Explorer I get >500ms response times so this would be a really slow response.
That said, have you tried just caching the data? Does your view need anything else from the Result object?

I only need the results of the query. In my understanding though, I am caching just the result. Or am I not ?
If I were to run that in a background process, what should I be looking at in terms of implementation?
Are there any gems for that purpose? I am new to the concept of caching, hence the naïveté
Sent from my iPhone

On Mar 18, 2015, at 3:57 PM, Jeremy Wadsack<EMAIL_ADDRESS>wrote:
I would suggest making calls like that in a background process and storing the data, rather than on-the-fly. Even using the API Explorer I get >500ms response times so this would be a really slow response.
That said, have you tried just caching the data? Does your view need anything else from the Result object?
—
Reply to this email directly or view it on GitHub.

The Result object returned by execute contains a reference to the original request, the Faraday response, and the data. It may also retain references to the analyitcs API discovery object and your parameters. It clearly is storing a reference to some RSA key for authentication which you likely don't want to keep around. In any event that's a lot of things to store in the cache if you don't need them.
When you cache something it needs to convert it to a form that can be stored in the cache, which may require it to be serialized to write to disk. Also, the cache is probably storing things in memory so you want to make that as small as possible – especially if you'll be caching a lot of different data sets.
Look at how you use the data in your view and determine if you can slim that cached data down. For example this would be a table of data with the first row being the column headers:
data = Rails.cache.fetch('google_analytics_api/#{cache_key}', expires_in: 2.hours) do
  result = client.execute(:api_method => analytics.data.ga.get, :parameters => parameters)
  [r.data.column_headers.map(&:name)] + r.data.rows

For background processing look at ActiveJob in Rails 4 which you'll still need to enable with a client library like Resque, Sidekick or DelayedJob. In Rails 3 you would just use one of those libraries directly.

@jeremywadsack Thanks for that excellent response.
I will definitely look into that approach to caching selectively.
I am also going to experiment with sidekiq along with ActiveJob
I originally opened this issue thinking that this particular gem did not allow caching of the request.
That is clearly not the case, so I am marking this as closed.

Well, I'm just showing you how to sidestep the gem. :)
Good luck.
p.s. as long as you are caching you might want to use the cache for the discovered API. It's suggested in the sample code (using a file), but would be dead simple using your Rails cache.
      analytics = Rails.cache.fetch(API_CACHE_KEY) do
        client.discovered_api('analytics', API_VERSION)
      end

I ended up with this solution:
interim = Rails.cache.fetch('google_analytics_api/#{cache_key}', expires_in: 2.minutes) do        result = client.execute(:api_method => analytics.data.ga.get, :parameters => parameters)        result.data.rows.map{|hit| hit[1].to_i}.join(', ')      end
Since I am trying to get pageviews per blog post, I get the same result for every single blog post.
What's the way to fix this?

What's your cache key? It needs to be distinct for each blog post so that the metrics don't overwrite each other.
As the parameters define the data, you could use them to make the key:
cache_key = parameters..map { |k,v| "#{k}:#{v}" }.join(':')

I didn't know that. (karma--)
cache_key = parameters.map { |k,v| "#{k}:#{v}" }.join(':')
    interim = Rails.cache.fetch('google_analytics_api/#{cache_key}', expires_in: 2.minutes) do
       result = client.execute(:api_method => analytics.data.ga.get, :parameters => parameters)
       result.data.rows.map{|hit| hit[1].to_i}.join(', ')

    end

What happens is:

On my home page, I click on a blog post.
I have set up each single blog post page to display the pageviews for that particular post.
With the code I listed above, I get the pageviews correctly for the first post.
After that, if I go to any other blog post, the pageviews are the same for every other post.

The cache is just a name-value store. Like a file system if you save lots of things with the same filename you'll read back the last thing your wrote.
Not sure why that's happening without looking at the rest of your code. Are you sure that you are passing in the correct URL?
You could simplify things by making the cache key just the URL for the blog post rather than all the parameters. I just figured the list of parameters to that API distinctly identifies the data.
Steps I would try:

Remove the cache temporarily and make sure each page gets it's own results.
Use the debugger or logging to inspect the cache key on each request and make sure it represent the correct page.
Log cache misses (within the fetch block) and see if it's hitting the Analytics API for each new blog post.

Thanks @jeremywadsack
I made a gist for the pertinent code:
https://gist.github.com/rishighan/dc63d225e1ef63ce72e0
I have the credentials in a helper file and pageviews.rb has the method that makes the query request.


Change x-axis to 5 regularly-spaced ticks

Plotext has a sane default of displaying five regularly-spaced ticks on the x-axis when using plt.hist. However, since uproot-browser uses hist.Hist to do the histogramming (and for good reason), Plotext changes to insane plot ticks for some reason - irregularly spaced ticks with long mantissas. This PR restores the default plt.hist behavior of showing five regularly-spaced ticks.

Thank you! Merged.


docs: added documentation for installing vue-router-next

If this is about adding contribution guidelines, we should add them to the contributing.md file. IIRC there are already a few instructions.
About installing vue-router, the instructions should be added to docs (WIP at https://vue-router-next-preview.netlify.app) but it's still a private repo

Gotcha, I'll dig into the contributing.md file to see if I can add anything anywhere and as for the vue-router-next docs. Any idea when that'll be public?


Implement the Dataframe Type

Summary
For a language intended for data cleaning, processing, analysis and manipulation, no collection type is more key to its success than the dataframe. A dataframe is a tabular representation of data, consisting of (named) columns of a given type, that can be filtered, manipulated, processed, and calculated upon.
This is, clearly, a crucial addition to Enso, and has to be done properly.
Value
Every language that is used for data processing today has some concept of a dataframe, making it crucial that Enso provide an implementation. However, the Enso implementation has the potential to be significantly more performant than many existing implementations (e.g. Python's Pandas), providing a major selling point for working with huge amounts of data.
Specification

Create a design for implementing the new version of the Dataframe type.
This design must be congruent with the future plans for the type-checker and structural typing in order to minimise breaking changes in future.
The design must account for retaining and improving much of the functionality that already exists in Luna dataframes.
The backing structure for the new Enso Dataframe type should be based on binding Apache Arrow natively in Java for performance reasons. This will allow us to rapidly prototype and implement the collection type, as well as far more easily provide performant operations on it than if we had used C++.
Once types come along, dataframes will be parametrised over a list of types Dataframe [T1, T2, T3, ...], so the design in the dynamic case needs to be congruent with this.
Once the design is complete, it should be rapidly prototyped into a usable state.
The accompanying library functions should implement the minimal amount of functionality.

Acceptance Criteria & Test Cases

The type has been comprehensively designed.
The implementation is congruent with this design.
The implementation is rigorously tested and benchmarked, both at the Enso level and the backing language (Java) level.

No longer relevant.


Fix after dcos.util.temptext disappeared

Fixes https://github.com/mesosphere/dcos-kubectl/issues/8

/cc @sur ptal

lgtm

Tested successfully locally using Python 3.5


Show hierarchical tags when showing tag list

Currently when you do a search for tags it doesn't show any hierarchy - it would be great to include that along with the individual terms. e.g. if you have a tag of blog/idea ideally in the list it would have:
blog
blog/idea
idea

Fixed now.


[Issue]: nvm list shows node version but nvm use claims its not installed

What happened?
This happened:

I resolved it by using nvm install 17.3 but how did it appear in the list of installed versions?
What did you expect to happen?
Not to show versions that are not installed
Version
1.1.11 or newer (Default)
Which version of Windows?
Windows 11+
Which locale?
English (Default)
Which shell are you running NVM4W in?
PowerShell
User Permissions?
Administrative Privileges, Elevated
Is Developer Mode enabled?
No (Default)
Relevant log/console output
No response
Debug Output
No response
Anything else?
No response

Please provide the output of nvm debug. This looks like a path issue. The debug feature identifies most of these.

I am sorry, unfortunatelly I can't because now the state is lost.  I thought to create a ticket after the fact and just then saw a debug related question...
nvm is installed via chocolatey
 Install procedure

I run the same code on tens of machines on our CI runners and developer machines, this failed on 1 machine.

@majkinetor the chocolatey installer is maintained by a different group. I recommend reaching out to them.
I will close this for now since there isn't a way to troubleshoot. If you're able to recreate the error in the future, just open a new issue.

Its not MSI, I was hasty, its setup.exe from this repo github downloads.
I did scan the wiki and made sure that I uninstall any existing nodejs before installing nvm. Apart from other things, with it, install is not really silent due to the popup about existing node management. So everything is by the book.

BTW @coreybutler, the other shown versions did work, I forgot to say that. This IMO makes it less likely its about path. Looks like there is possibility that maybe some previous installation was terminated in the middle of it, while I was testing CI.

@majkinetor - It does sound like perhaps there was an aborted/incomplete installation. I've already updated the nvm debug code (in master) to validate each version of node, so that will be in v1.1.12. I wouldn't want to run this check in the list command though, due to latency (this can be a problem for users who run with mapped drives), but it makes sense to verify each version during debugging.

Maybe you should add extra option to list, like nvm list --check-node-validity, so there is no latency involved unless you want it.


Scene2D - Stage calling Batch.begin() & Batch.end() on an instance it doesn't own.

Hey!
I was passing in a Batch object into the Stage as I wanted to reduce my draw calls, but I found that if the Stage doesn't own the Batch instance it will still call begin() and end() on it.
In the draw() method.
if (batch != null) {
    batch.setProjectionMatrix(camera.combined);
    batch.begin();
    root.draw(batch, 1);
    batch.end();
}

It would be awesome if the Stage instance didn't own the Batch it just assumed that the Batch was ready to render.
if (batch != null) {
    if (!ownsBatch) batch.setProjectionMatrix(camera.combined);
    if (!ownsBatch) batch.begin();
    root.draw(batch, 1);
    if (!ownsBatch) batch.end();
}

Is this by design or an oversight? I could well be doing something really wrong here and there maybe a better way for me to do this?

I think that would be nice to have. But changing it now might break quite some existing code and I doubt it would really be a noticeable gain in a typical game (unless you have more than one stage (which you shouldn't)). I guess it would be possible to make it configurable and disable it by default, but personally I don't think it's worth to make spritebatch more complicated for this.
Either way, I arguable don't think that not owning a batch should imply that it is properly setup using the correct projection matrix. Although not owning the batch implies not owning the viewport, there is no obvious relationship between the two other than the stage itself. Of course, not assuming the correct projection matrix required to flush the batch and thus defeats the whole purpose of this feature request.
So, while I think it might be useful, personally I'm not in favor for adding this. Especially because you could easily work around this, e.g. something like:
batch = new SpriteBatch() {
    int nestCount;
    void begin() { if (nestCount++ == 0) super.begin(); }
    void end() { if (--nestCount == 0) super.end(); }
    void setProjectionMatrix(Matrix4 v) { if (nextCount == 0) super.setProjectionMatrix(v); }
};

sorry, hit the wrong button

You are completely right.

Sorry!