Book reviews

Book reviews are quite problematic, and not only for BBT:

Zotero is limited to one set of reviewed-authors and one reviewed-title (so there’s no way to format reviews of two or more books properly), and there’s no way to input reviewed-editors rather than reviewed-authors.
vanilla biblatex and biblatex-chicago (and bibtex, too) have no special functionality for book reviews, so all details have to be included in the title field.
biblatex-apa has the most flexible approach, using biblatex’s “related” functionality.

In any case, BBT’s current biblatex output (and the output formatted by latex) is unsatisfactory since it lists reviewed authors as “collaborators” and fails to indicate that an item is a book review at all.
Actual BBT output (from one of the Z58T9QFH examples):
@review{kamp_deconstructing_2006,
  abstract = {Example from CMoS, 16e, 14.125},
  author = {Kamp, David},
  date = {2006-04-23},
  editora = {Pollan, Michael},
  editoratype = {collaborator},
  langid = {american},
  title = {Deconstructing Dinner},
  url = {http://www.nytimes.com/2006/04/23/books/review/23kamp.html}
}

Expected output:
@review{kamp_deconstructing_2006,
  abstract = {Example from CMoS, 16e, 14.125},
  author = {Kamp, David},
  date = {2006-04-23},
  editora = {Pollan, Michael},
  editoratype = {collaborator},
  langid = {american},
  title = {Deconstructing Dinner},
  titleaddon = {\bibstring{reviewof} \mkbibemph{The Omnivore’s Dilemma: A Natural History of Four Meals}, \bibstring{by} Michael Pollan},
  url = {http://www.nytimes.com/2006/04/23/books/review/23kamp.html}
}

So, it seems the following would be needed for vanilla biblatex and biblatex-chicago:

If there is a “Reviewed Author” in a Zotero entry, treat it as a review.
If the “Extra” field contains “type: review” or “type: review-book”, treat it as a review, too.
If there is no “reviewed-title: Blah” or “{:reviewed-title:Blah}” in the “Extra” field:

Assume that the “Title” field contains the BOOK TITLE.
Construct a biblatex title field as follows: \bibstring{reviewof} \mkbibemph{ BOOK TITLE }, \bibstring{by} { LIST OF AUTHORS }

If there is a “reviewed-title: Blah” or “{:reviewed-title:Blah}” in the “Extra” field:

Assume that the “Title” field contains a separate, non-generic title.

This should become the biblatex title.

Assume that the “reviewed-title” variable contains the BOOK TITLE.

Construct a biblatex titleaddon field as follows: \bibstring{reviewof} \mkbibemph{ BOOK TITLE }, \bibstring{by} { LIST OF AUTHORS }`

In both cases:

Titlecase the BOOK TITLE
Wrap the LIST OF AUTHORS in {}
If there is more than one author, use \bibstring{and}, e.g., John Doe, Ron Roe, \bibstring{and} Mike Moe

(For reviews of edited books, I have started using [Doe][John,!ed.] in Zotero’s reviewed-author field. It’s a hack, sure, but maybe BBT could try to parse ,!ed. or ,!eds. and use \bibstring{byeditor} instead of \bibstring{by} in such cases. Anyway, that's strictly optional, and does not solve all of Zotero’s problems either – there seems to be no hack that would allow you to input two or more reviewed books …)
The same should work for bibtex (if you want to implement that at all), but all bibstring elements would have to be replaced by their plain English counterparts.
The approach outlined so far would also work (sort of, at least) for biblatex-apa.
Specifically for biblatex-apa something else could be tried, but it would involve tapping into the “Related” functionality of Zotero by checking whether a “review-book” entry has one or more “related” book entries, constructing a suitable biblatex @review entry that contains the citekeys of the book(s), and exporting all items involved. – You’ll have to decide whether you want to try that.

Something like the latter is already being worked on in #529, so it's not too much of a stretch. The rest I'll have to look at later -- I need to get the release out.

@njbart are you interested in picking this back up?

Yep, still interested – and happy to answer any questions (as always), but apologies for not being able to test-drive anything Z5-related for the time being. Much of my daily work has been depending on an uninterrupted Zotero- and pandoc-centered workflow for some time now, so with neither BBT nor zotxt completely ready, I can’t really afford to upgrade to Z5 just yet.

Understandable. Most of BBT is done though, with just these open issues.
It is perhaps better to hold off this issue until the 5.0 port is complete; It'd work best if I can get source samples + corrected output, and the source sample format (the stuff that the debug report submits) has changed.

BBT is ready. I think I've seen moves in zotxt indicating it was either ready or close to it.

zotxt is now Z5 compatible.

We could pick this back up now.

Zotero doesn't really have a place for this info. The desired result can be achieved currently by adding
tex.titleaddon= \bibstring{reviewof} \mkbibemph{The Omnivore’s Dilemma: A Natural History of Four Meals}, \bibstring{by} Michael Pollan

to the extra field.


Error when trying to view Sms in debug toolbar

Neither the property "service" nor one of the methods "service()", "getservice()"/"isservice()" or "__call()" exist and have public access in class "ScayTrase\SmsDeliveryBundle\DataCollector\MessageDeliveryDataCollector" in SmsDeliveryBundle:DataCollector:data_collector.html.twig at line 70

Thanks for reporting, looks like I've just forget to remove this after refactoring and haven't checked the profiler panel inside. I'll try to fix it soon


AVRO-3273: Support older versions of maven

Make sure you have checked all steps below.
Jira

[X] My PR addresses the following Avro Jira issues and references them in the PR title. For example, "AVRO-1234: My Avro PR"

https://issues.apache.org/jira/browse/AVRO-3273
In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

Tests

[X] My PR does not need testing for this extremely good reason:  Manually tested with different maven versions

Commits

[X] My commits all reference Jira issues in their subject lines. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters (not including Jira issue reference)
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Documentation

[ ] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain Javadoc that explain what it does

See https://github.com/apache/flink/pull/18133 for the necessary workaround when building with Avro 1.11.0 and Maven 3.2.5.


[ko] guide/keras/custom_callback

Migrate https://github.com/tensorflow/docs/pull/1214 by @ghdalsrl0708
CLA signed in that PR

@lamberta Thank you for the quick review. I was aware of the list, but I was under the impression that "do no translate" meant "do not use a Korean word to substitute the original." 콜백, pronounced as something like "kol-beck," is a transliteration and is thus technically not a translation; the same goes for 에폭, which is pronounced as "ae-pok." Do you think we need to use original English words instead of transliterations? Thanks again.

Ah. Well, that sounds like a matter of style for the Korean translation community to decide. How is this handled in the other guides? (Let's say something that was translated a while back) cc: @rickiepark

Thanks @lamberta, @jaketae
All english words is translated except abbreviations, because Korean has the loanword orthography. Please check this link (http://kornorms.korean.go.kr/regltn/regltnView.do?regltn_code=0003&regltn_no=425#a425).
Thank you! :)

@rickiepark Thank you for the heads up!
@lamberta Seems like transliteration is the accepted practice here, so I'll stick with the suggestions I've made. Thank you for double checking though! Perhaps I'll edit the README to help clarify what "do not translate" entails, possibly along with the link @rickiepark posted in his comments.


Microsoft FBL messages with "from" addresses surrounded by angle brackets slip through

From<EMAIL_ADDRESS>Subject: complaint about message from <IP_ADDRESS>

$mfrom regexp in Sisimai::ARF->is_arf() does not match addresses surrounded by angle brackets. Is this a bug or a feature?
# Microsoft (Hotmail, MSN, Live, Outlook) uses its own report format.
# Amazon SES Complaints bounces
my $title = 'complaint about message from ';
my $mfrom = qr{(?:
<EMAIL_ADDRESS><EMAIL_ADDRESS>    )\z
}x;

Sisimai v4.24.1

@lewa Hello, sorry for lately response.
We have released v4.24.1p5 including code to fix this issue at https://github.com/sisimai/p5-Sisimai/tree/v4.24.1p5.
Thanks,

Works like a charm. Thank you!


Update to Java 8

Hibersap is still built with language level 5. We would like to move on and use Java 8 as a basis.
This effectively means new Hibersap versions will not run on Java versions 5, 6 and 7. Developers still using older Java versions will be restricted to use the older versions of Hibersap.
This should come without any API breaks for existing applications.

update Maven plugins to current version
update libraries to current versions
throw out Easymock


feat(prettier): print getter/setter function in PropertyKey

Current dependencies on/for this PR:

main

PR #1411   👈

PR #1412

This stack of pull requests is managed by Graphite.

Merge activity

Nov 18, 8:59 AM: @Boshen started a stack merge that includes this pull request via Graphite.


Not loading CSS or JavaScript when on subpath.

See http://kareman.github.io/swiftdoc.org/
I cloned this repository, changed the url setting in the config file, built the site with Jekyll and pushed it to the gh-pages branch of the clone.
I think the solution is to add baseurl to _config.yml
 as recommended in http://jekyllrb.com/docs/github-pages/ , and then update _includes/head.html (amongst others) to use the
“baseurl” setting, not "url".

@natecook1000
I think the problem lies in https://github.com/SwiftDocOrg/swiftdoc.org/blob/master/_plugins/jekyll_asset_pipeline.rb#L20 and https://github.com/SwiftDocOrg/swiftdoc.org/blob/master/_plugins/jekyll_asset_pipeline.rb#L25 .
I've tried
     "<link href=\"#{site.baseurl}/#{@path}/#{@filename}\" rel=\"stylesheet\" type=\"text/css\" />"

<EMAIL_ADDRESS>and #{@baseurl} but no luck.
The settings are:
baseurl:            "/swiftdoc.org"
url:                "http://kareman.github.io"

I worked around the problem by not using jekyll_asset_pipeline, see https://github.com/kareman/swiftdoc.org/tree/enable-site-in-sub-path . The result can be seen here. It looks good, but none of the links work because the parser makes them absolute (and obviously has no idea about the baseURL).
One solution is to make all the links relative (remove the leading "/") and use a <base> tag in <head>.

I tried passing the parameter --url-prefix  "" to the parser but it doesn't seem to have any effect.

Sorry to leave you hanging on this one, @kareman—the real solution to this is to move from having the parser generate HTML that lives in the Jekyll instance to having it generate a simple data format that Jekyll can parse and render in its own templates. Then there'd be a single source of configuration. I've been too busy to get to that, but it's on my list—hopefully I'll have time to take care of it soon.

Hey no problem, I knew you were busy with this, amongst other things.
A better separation between the parser and the website seems like a good idea; the parser can already output JSON, presumably Jekyll will turn that into the website. Looking forward to it.


Made LocalAddr and RemoteAddr to return addresses of real writer

Method RemoteAddr of dns.ResponseWriter is used by forward plugin to decide which protocol UDP or TCP to use with upstream server. This convention isn't easy to find so I also suggest to make other methods of policy plugins' writer to panic instead of silently return:
func (w *writer) Close() error                  { panic(errors.New("not implemented") }
func (w *writer) TsigStatus() error             { panic(errors.New("not implemented") }
func (w *writer) TsigTimersOnly(b bool)         { panic(errors.New("not implemented") }
func (w *writer) Hijack()                       { panic(errors.New("not implemented") }
func (w *writer) LocalAddr() (la net.Addr)      { return w.w.LocalAddr() }
func (w *writer) RemoteAddr() (ra net.Addr)     { return w.w.RemoteAddr() }
func (w *writer) WriteMsg(m *dns.Msg) error     { w.Msg = m; return nil }
func (w *writer) Write(buf []byte) (int, error) { panic(errors.New("not implemented") }

Closing as more proper way to use writer from coredns/plugin/pkg/nonwriter.


Set first day of week

Can I somehow modify the first day of the week in month view?
I need the weeks of the month to start on Monday.
In week view Monday is the first day of week, but in month view it's Sunday.

This is a feature of v-calendar which is a component I'm working on for Vuetify. Once that component is done, this library will use it. That functionality will exist then.


Add bitwise operations to make creation of bitfields possible

Add:

bitwise AND (& operator)
bitwise OR (| opeator)
bitwise XOR (^ operator)
bitwise left shift (<< operator)
bitwise right shift (>> operator)
bitwise unsigned right shift (>>> operator)
bitwise inversion (~value)

what's the point of this PR? is there a problem that needs to be solved?

Yes, it's to make "more or less advanced" creators avoid using more than 5, 10 (or maybe even 15) boolean or number variables (used in a way to serve the same purpose as boolean) both globally and as unit variables, which not only makes quite a mess in the editor, but as well makes the variables part, depending on where the variable "chunk" has been assigned, more difficult to maintain. Using bitfields can solve that as you can test one numeric value against certain bits and check if the result is larger than 0, which makes that numeric variable easily behave as a boolean value array.


Fix typo of weather

Fixed the spelling mistake. It should be "whether" instead of "weather".

thanks!


Creating the manifest should check for language and checking level 2

The language attribute in the manifest   is important for tC updates dialog. Also the checking level must be set to level 2
DOD:
When a manifest is created for a new repo, the language attribute is set and checking level is at level 2.

v0.9.0-rc.1 build 53752e1.
Looks good in the newly created Repo.


Avoid deadlocking when installing with a lockfile missing dependencies

Closes #5378.
Closes #5480.
Closes #5519.
Closes #5526.
Closes #5529.
Closes #5549.
Closes https://github.com/bundler/bundler/issues/5572.
Not the ideal fix (the error message could be more helpful in pointing out which issue is being faced), but overall better than deadlocking.

Looks good 👍 @bundlerbot r+

@bundlerbot r+

I'll rebase and fix the tests as soon as I get a chance

@indirect please review

(╯°□°）╯︵ ┻━┻ old rubygems printing the type in Dependency#to_s strikes again

This is passing, r?

I tried to validate this using:
Gemfile:
source "https://rubygems.org"
gem "rspec"

Gemfile.lock:
GEM
  remote: https://rubygems.org/
  specs:
    diff-lcs (1.3)
    rspec (3.5.0)
      rspec-core (~> 3.5.0)
      rspec-expectations (~> 3.5.0)
      rspec-mocks (~> 3.5.0)
    rspec-expectations (3.5.0)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.5.0)
    rspec-mocks (3.5.0)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.5.0)
    rspec-support (3.5.0)

PLATFORMS
  ruby

DEPENDENCIES
  rspec

BUNDLED WITH
   1.14.6

I removed a few deps from the Gemfile.lock:
       rspec-core (~> 3.5.0)
       rspec-expectations (~> 3.5.0)
       rspec-mocks (~> 3.5.0)
-    rspec-core (3.5.4)
-      rspec-support (~> 3.5.0)
     rspec-expectations (3.5.0)
       diff-lcs (>= 1.2.0, < 2.0)
       rspec-support (~> 3.5.0)

But i am continue to get the Deadlock:
fatal: No live threads left. Deadlock?
2 threads, 2 sleeps current:0x0000000135d6c0 main thread:0x0000000135d6c0
* #<Thread:0x00000001391f10 sleep_forever>
   rb_thread_t:0x0000000135d6c0 native:0x007f7870943700 int:0
   /bundler/bundler/lib/bundler/worker.rb:43:in `pop'
   /bundler/bundler/lib/bundler/worker.rb:43:in `deq'
   /bundler/bundler/lib/bundler/installer/parallel_installer.rb:132:in `process_specs'
   /bundler/bundler/lib/bundler/installer/parallel_installer.rb:103:in `call'
   /bundler/bundler/lib/bundler/installer/parallel_installer.rb:77:in `call'
   /bundler/bundler/lib/bundler/installer.rb:199:in `install_in_parallel'
   /bundler/bundler/lib/bundler/installer.rb:166:in `install'
   /bundler/bundler/lib/bundler/installer.rb:80:in `run'
   /bundler/bundler/lib/bundler/installer.rb:24:in `install'
   /bundler/bundler/lib/bundler/cli/install.rb:70:in `run'
   /bundler/bundler/lib/bundler/cli.rb:187:in `block in install'
   /bundler/bundler/lib/bundler/settings.rb:100:in `temporary'
   /bundler/bundler/lib/bundler/cli.rb:186:in `install'
   /bundler/bundler/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
   /bundler/bundler/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
   /bundler/bundler/lib/bundler/vendor/thor/lib/thor.rb:369:in `dispatch'
   /bundler/bundler/lib/bundler/cli.rb:21:in `dispatch'
   /bundler/bundler/lib/bundler/vendor/thor/lib/thor/base.rb:444:in `start'
   /bundler/bundler/lib/bundler/cli.rb:11:in `start'
   bundler/exe/bundle:35:in `block in <main>'
   /bundler/bundler/lib/bundler/friendly_errors.rb:121:in `with_friendly_errors'
   bundler/exe/bundle:27:in `<main>'
* #<Thread:0x00000001d739c0@Parallel Installer Worker #0@/bundler/bundler/lib/bundler/worker.rb:89 sleep_forever>
   rb_thread_t:0x000000020e83a0 native:0x007f786bed3700 int:0
   /bundler/bundler/lib/bundler/worker.rb:56:in `pop'
   /bundler/bundler/lib/bundler/worker.rb:56:in `block in process_queue'
   /bundler/bundler/lib/bundler/worker.rb:55:in `loop'
   /bundler/bundler/lib/bundler/worker.rb:55:in `process_queue'
   /bundler/bundler/lib/bundler/worker.rb:89:in `block (2 levels) in create_threads'

  /bundler/bundler/lib/bundler/worker.rb:43:in `pop'
  /bundler/bundler/lib/bundler/worker.rb:43:in `deq'
  /bundler/bundler/lib/bundler/installer/parallel_installer.rb:132:in `process_specs'
  /bundler/bundler/lib/bundler/installer/parallel_installer.rb:103:in `call'
  /bundler/bundler/lib/bundler/installer/parallel_installer.rb:77:in `call'
  /bundler/bundler/lib/bundler/installer.rb:199:in `install_in_parallel'
  /bundler/bundler/lib/bundler/installer.rb:166:in `install'
  /bundler/bundler/lib/bundler/installer.rb:80:in `run'
  /bundler/bundler/lib/bundler/installer.rb:24:in `install'
  /bundler/bundler/lib/bundler/cli/install.rb:70:in `run'
  /bundler/bundler/lib/bundler/cli.rb:187:in `block in install'
  /bundler/bundler/lib/bundler/settings.rb:100:in `temporary'
  /bundler/bundler/lib/bundler/cli.rb:186:in `install'
  /bundler/bundler/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /bundler/bundler/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /bundler/bundler/lib/bundler/vendor/thor/lib/thor.rb:369:in `dispatch'
  /bundler/bundler/lib/bundler/cli.rb:21:in `dispatch'
  /bundler/bundler/lib/bundler/vendor/thor/lib/thor/base.rb:444:in `start'
  /bundler/bundler/lib/bundler/cli.rb:11:in `start'
  bundler/exe/bundle:35:in `block in <main>'
  /bundler/bundler/lib/bundler/friendly_errors.rb:121:in `with_friendly_errors'
  bundler/exe/bundle:27:in `<main>'

Let me know if i'm not doing something correctly 👍

The lockfiles weren't corrupted in that particular way (they just had missing dependencies, not entire specs removed that still had dependencies elsewhere)

i figured 😄  I'm trying to recreate the bug so i can test this using the Gemfiles from the reported issues but replicating it is proving it difficult.
This looks good too btw 👍

No worries, I ended up fixing that case anyways ;)

@indirect r?

@bundlerbot r+

Starting to get worried about the growing bucket of options that gets passed to for, but this looks good! 👍

It'll get better once we can use named parameters


user.folllow not follow actually

rettiwt.user.follow('1451773004')
it's returning true even though it didn’t follow actually
note: for some user it give me unknown error with different status codes
edit: the 344 error code is for this message when you try to follow "You have reached your daily limit for this action. Please add a phone to your account to remove the limit."

the 344 error code is for this message when you try to follow "You have reached your daily limit for this action. Please add a phone to your account to remove the limit."

This might be the issue. How many users were you trying to follow in a day?

the 344 error code is for this message when you try to follow "You have reached your daily limit for this action. Please add a phone to your account to remove the limit."

This might be the issue. How many users were you trying to follow in a day?

nah i already try different account with different ip but still same
i take the curl request for the follow api it worked fine.

Any chances you might be subject to these regulations?: https://help.x.com/en/using-x/x-follow-limit

nah i bearly have 10 following
found that certain accounts never gonna follow
like i follow 5 different account 2 or 1 of theme gonna actually follow
i already added a phone number but still same
i could do anything i want without follow
here is my post request i get from browser i hide the auth_key but if you like i could give it to you for test use
"curl --path-as-is -i -s -k -X $'POST'
-H $'Host: x.com' -H $'Content-Length: 307' -H $'Sec-Ch-Ua: "Chromium";v="127", "Not)A;Brand";v="99"' -H $'X-Twitter-Client-Language: en' -H $'X-Csrf-Token: hidden' -H $'Accept-Language: en-US' -H $'Sec-Ch-Ua-Mobile: ?0' -H $'Authorization: Bearer AAAAAAAAAAAAAAAAAAAAANRILgAAAAAAnNwIzUejRCOuH5E6I8xnZz4puTs%3D1Zv7ttfk8LF81IUq16cHjhLTvJu4FA33AGWWjCpTnA' -H $'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.6533.100 Safari/537.36' -H $'Content-Type: application/x-www-form-urlencoded' -H $'Accept: /' -H $'X-Client-Transaction-Id: Vnz7EyFgqTMY3eOneOIjgFWFzRkey9tT1BHXsO45uRX5VDWLIcRJXzTG2JDdcGEWsmFBx1TDnhpLsyKZmJ6z3PlE4KnlVQ' -H $'X-Twitter-Auth-Type: OAuth2Session' -H $'X-Client-Uuid: 631409a4-9f47-44d8-ba9b-bd96011b4317' -H $'X-Twitter-Active-User: yes' -H $'Sec-Ch-Ua-Platform: "macOS"' -H $'Origin: https://x.com' -H $'Sec-Fetch-Site: same-origin' -H $'Sec-Fetch-Mode: cors' -H $'Sec-Fetch-Dest: empty' -H $'Referer: https://x.com/SFNloubnan' -H $'Accept-Encoding: gzip, deflate, br' -H $'Priority: u=1, i'
-b $'guest_id=172597803001915399; night_mode=2; guest_id_marketing=v1%3A172597803001915399; guest_id_ads=v1%3A172597803001915399; kdt=tOa3toTewo9w8oix5GosG8oGNhhwaaWEGZrWwRlC; att=1-87pUNFU5FTcUApI7uwgZG0ScAI8diZ9XmQPO7YTd; lang=en; gt=1833547103831765125; auth_token=hidden; twid=u%3D1830235616526610432; ct0=hidden; personalization_id="v1_PhG/nebb6Gqab5F1HzMo0Q=="'
--data-binary $'include_profile_interstitial_type=1&include_blocking=1&include_blocked_by=1&include_followed_by=1&include_want_retweets=1&include_mute_edge=1&include_can_dm=1&include_can_media_tag=1&include_ext_is_blue_verified=1&include_ext_verified_type=1&include_ext_profile_image_shape=1&skip_status=1&user_id=352004499'
$'https://x.com/i/api/1.1/friendships/create.json'"
it's really weird situation didn’t get any logic


support dual LICENSE

I've noticed that a lot of crates use dual LICENSE like MIT and Apache.
We want to support dual LICENSE.
Tasks

[ ] Accept variable  arguments
[ ] Output multiple LICENSE file

license-generator MIT Apache --author "azu"
# OUPUT: LICENSE_MIT and LICENSE_APACHE

closed by https://github.com/azu/license-generator/pull/14
released in 0.7.0
https://github.com/azu/license-generator/releases/tag/v0.7.0


[INLONG-5598][Manager][DataProxy] Mask sensitive data in logs

Prepare a Pull Request

[INLONG-5598][Manager][Dataproxy] Mask sensitive data in logs

Fixes #5598

Motivation
Mask sensitive data in logs
Modifications
Add MaskDataUtils and define a LogMaskConverter to format logged message
Verifying this change

Add MaskDataUtils
Add LogMaskConverter
Modify log4j.xml

@e-mhui please add UTs for this PR, and add more details about the features.

@e-mhui please add UTs for this PR, and add more details about the features.

done


Add pad_to_bounding_box & crop_to_bounding_box image ops

Both of these layers are used in many keras.io/examples. I think it would be nice to have this features in Keras 3.0.
Reference:

pad_to_bounding_box: link
crop_to_bounding_box: link

Hi, Since the linked PR is merged, is this issue good to close?

Hi, actually half part is done as corp_to_bounding box is yet to be added. I will start working on it soon.


Cached item conflict with change tracker.

Hello. Face into an issue. Was investigate and found steps to reproduce.
Summary of the issue
Simple test to reproduce with any entity:
            var dbContext = ServiceProvider.GetRequiredService<DbContext>();

            await dbContext.Tags.AddAsync(new Tag()
            {
                Code = "123"
            });
            await dbContext.SaveChangesAsync();

            var tag = await dbContext.Tags.Cacheable().FirstOrDefaultAsync(x => x.Code == "123");
            dbContext.Attach(tag);

And you will get
The instance of entity type 'Tag' cannot be tracked because another instance with the same key value for {'Id'} is already being tracked. When attaching existing entities, ensure that only one entity instance with a given key value is attached. Consider using 'DbContextOptionsBuilder.EnableSensitiveDataLogging' to see the conflicting key values.
If you remove Cachable() change tracker attach item without any problem.

Hm. This issue related to not tracked items. No cachable itself.

Because this how the 2nd level caching works:
1st call: read from the database -> LINQ to entities
2nd call: read from the cache -> LINQ to objects
.
.
.
nth call: read from the cache -> LINQ to objects
You should use it for reporting scenarios only. For the 1st time it will be retrieved from the context, for 2nd time, it will be retrieved from the cache directlty. that's why it can't be tracked and it shouldn't be tracked.

Ok. Thanks.


Null pointer dereference

In calls like: XMLUtil::StringEqual( name, element->Name() )
element->Name() can return nullptr and it's unchecked also XMLUtil::StringEqual is not prepared to handle passed nullptr arguments.

Easy enough defensive fix. Marking as bug.

strcmp() not checking for null is okay for everyone, how is this function different?

I may do this one. Should I use TIXMLASSERT?
Also Dmitry's question is unanswered, I wonder that too.

An ASSERT certainly doesn't hurt, if nothing else to correct errors (in TinyXML-2) that may occur later.

Dimitry: I'm ok with the XMLUtil::StringEqual not handling the nullptr arguments as long as the arguments are checked or at least are asserted to be not null.

@kurylo Is Name() returning a null pointer a sane situation? If it's not a sane situation then assertions inside StringEqual() are the way to go.

Name() shouldn't be null. Definitely insane. :)

I agree that name shouldn't be null. But it took me quite a while to track this down, i.e. Element's constructor being private. Name being always set in the factory function XMLDocument::NewElement, SetName( const char* str, bool staticMem=false ) not being called with (NULL, true), etc.
So a lot of code that needs to be checked to make sure there isn't a null hiding behind a Name().
Still although unlikely there is one possible case for the Name to return null, failed memory allocation in the flow:
XMLDocument::NewElement
XMLElement::SetName
XMLNode::SetValue
StrPair::SetStr
_start = new char[ len+1 ];

@kurylo In this specific case you have a newly created element leaked and you'll be unable to call Name().

@Dmitry-Me Agreed.

Yes; TinyXML-2 doesn't catch failed memory allocations.


[CSL-1683] Add configuration options to launcher, propagate to node

Now cardano-launcher has options to set configuration path and key.
It also passes their values to node, unless they are explicitly specified
with '-n'.

This one is required for daedalus, since cardano-launcher previously hardcoded --configuration-* args.

nb. I haven't checked whether pretty @Integer $ fromIntegral $ convertUnit @_ @Second ts is okay because I've no idea how the hell timestamps are encoded (n? n1000? n1000000? something else?). If you're sure that it's correct then ok.

It should be --system-start 100500 where 100500 is amount of seconds.


[core] Fix that ignore-delete option is not compatible with old delete records and LocalMergeOperator

Purpose

Before #3128 , the delete records can be write into data file even when ignore-delete=true. So if using jar built after 3128 to read old data, the merge engine might throw exception. This PR fix it by adding filter in reader.
Besides, records passed by LocalMergeOperator also should be filtered.
Also remove changeIgnoreMergeEngine in merge_into action. Because I think merge_into should also obey the constrains of merge engine.

Tests

API and Format

Documentation

We must figure out how to deal with changeIgnoreMergeEngine.


Width: 100% helper class?

Hi guys, loving this library, slowly learning all the shorthand!
Use case, I've a button I want to stretch to its container.
I see there's the .fit helper class, but that's sets a max-width so is no use.  There's .col-12 which will do the trick, but seems a bit of an abuse as i'm not within a grid system at that point.
Is there a case for a .expand { width: 100%} class?  Or is there something I'm missing?

There's nothing grid specific for  .col-12.
https://github.com/basscss/basscss/blob/master/modules/grid/lib/grid.css#L56-L58
.col-12 {
  width: 100%;
}

Hi @sdn90, I just meant semantically, .col-12 just feels a bit clunky when I'm using the class to expand a button, so I'm not in the context of a grid.  But I appreciate that class works just fine, and this is just an opinion.

Expanding on what @sdn90 said, the grid in Basscss doesn't have any real "context" and the .col-12 style only sets width: 100%. It's just a naming convention to fit in with the rest of the width utilities in basscss-grid.

It just feels that it is a very misleading name for what's in there. :(


Patch setupNightfall.sh

Patch setupNightfall.sh to detect the architecture being used by the machine running it and apply the "no-cache" to the docker command regarding zokrates.Dockerfile, because Mac users can have problems when trying to running locally.

When using x86, we shouldn't use no-cache, when using _

arm

_ apply no-cache
docker build --no-cache	-t ghcr.io/eyblockchain/local-zokrates -f zokrates.Dockerfile . docker-compose -f docker-compose.yml -f docker-compose.dev.yml build --no-cache


RTD fix

Fixes readthedocs issue triggered by new functionality.
I've tested that this runs as it should on readthedocs.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5449

Relevant Lines:
5575

💛  - Coveralls

The generated docs are here https://ccl.readthedocs.io/en/rtd_fix_cached_property/


"getaddrinfo EAGAIN" when searching for a package

Today I downloaded the .zip version of Atom from the releases, however whenever I try to search for a package I get the error getaddrinfo EAGAIN

I don't know if it may be related, but I can't load the Atom page in any of my devices.

Yeah, that means atom.io is probably experiencing some technical difficulties right now.  I would try again later in a few hours.  Sorry about that!


Add Team Applications

Is this a BUG REPORT or FEATURE REQUEST?
FEATURE REQUEST
Add teams as a new model and allow for team creation and team joining.

[ ] Create a team when application created
[ ] Join a team when application created
[ ] Send team invites tables for directors
[ ] Invite teammates if team is invited automatically with signals

First draft prototype: https://www.figma.com/proto/PrjeiH5pAaFcIQtlmKck5hcz/HackX-Registration?scaling=contain


Optiion to use Great Tables package for table output

Add option to use the Great Tables package for table output type. Added instructions in the stargazer.ipynb notbook.

Added great_tables to the deps & re-build the lock files + left some small comments. The tables look amazing @dsliwka!

Thanks, @s3alfisc! Just one quick remark. I realized that the tables are rendered differently in VS Code and Quarto. Then I found this on the quarto website: "It’s possible that Quarto’s processing of HTML tables may interfere with the HTML produced computationally with table packages in R and Python (or other supported languages). You can disable Quarto’s HTML table processing at a document level or project level with the option html-table-processing:" (https://quarto.org/docs/authoring/tables.html). I did that now in the stargazer.ipynb.

Great, thank you!


Drop support for windows versions prior to windows 10

Refs: https://www.electronjs.org/blog/windows-7-to-8-1-deprecation-notice
According to electron's website, electron 22 will be the last version to support windows 8/8.1.

Yup same flow as other previous deprecations. We already have the general structure setup in both client and server, so it will be easy to add new versions. I will create an issue for this deprecation.

@ChaseKnowlden can you rebase on top of latest main,  I think this change is good to go now that https://github.com/microsoft/vscode/issues/177676 is resolved.

Up-to-date. @deepak1556


presenterm: init at 0.2.0

Description of changes
Closes #261897 by adding presenterm.
Considerations:

The application is still quite new.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 261909 run on x86_64-linux 1

1 package built:

presenterm

Result of nixpkgs-review pr 261909 run on aarch64-darwin 1

1 package built:

presenterm


nodejs: rename block types

https://github.com/iotaledger/iota-sdk/issues/1515

Closed by https://github.com/iotaledger/iota-sdk/pull/1706


add 1.1.0 release

Thank you for this contribution. Before we can accept it though, could you please sign the ICLA at https://support.springsource.com/spring_committer_signup (selecting Spring XD as the project) and leave a comment here once this is done.

Thanks for reviewing, I have signed the ICLA and updated the image-base for latest to the current snapshot.

Applied all changes and created new tags on docker-hub. Thanks again for this contribution!


Add change AGC Apex group of Colleges

@abdulsamad2929 First stage of verification passed, official domain is agc.edu.pk as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@abdulsamad2929 Thank you for your patience while waiting for a review and processing your request. Pull request merged.


Options.style not works

<Modals options={{
	close: {
		showBtn: false
	},
	style: `
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 100;
		background-color: rgba(0, 0, 0, .5);
		display: flex;
		flex-direction: column;
	`
}}/>

The redefined style is not applied to the wrapper.

Oh I'm sorry, this is a Documentation error.
Properties to add directly to the Modals wrapper should be in options.props (as in element properties), so here it should be:
<Modals options={{
	close: {
		showBtn: false
	},
	props: {
		style: `
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 100;
			background-color: rgba(0, 0, 0, .5);
			display: flex;
			flex-direction: column;
		`
	}
}}/>

Actually the code seems to not follow this neither. I will update this right now, sorry for that

I just pushed a new version on npm.
https://github.com/dievardump/yasp-modals/blob/0b8da8a49b431671d2abf4966ea6044628cfbd13/src/components/Modals.svelte#L104
this should have fixed it.


Fix broken links in nav bar on homepage

Add the missing . before /{filename} on helpful-material.html, contributors.html, and wow.html. Now when the repo is down the links will work on local dev environments.

Great work thanks :)


Error trying build the master

Hi,
I am trying to build crux master, getting the following exception, can you please help me out,
Error stacktrace:
google/protobuf/descriptor.proto: File not found.
google/api/annotations.proto: Import "google/protobuf/descriptor.proto" was not found or had errors.
google/api/annotations.proto:28:8: "google.protobuf.MethodOptions" is not defined.
messages.proto: Import "google/api/annotations.proto" was not found or had errors.
grpc.proto: Import "google/api/annotations.proto" was not found or had errors.
grpc.proto: Import "messages.proto" was not found or had errors.
grpc.proto:9:17: "ApiVersion" is not defined.
grpc.proto:9:38: "ApiVersion" is not defined.
grpc.proto:16:17: "UpCheckResponse" is not defined.
grpc.proto:16:43: "UpCheckResponse" is not defined.
grpc.proto:23:14: "SendRequest" is not defined.
grpc.proto:23:36: "SendResponse" is not defined.
grpc.proto:25:17: "ReceiveRequest" is not defined.
grpc.proto:25:42: "ReceiveResponse" is not defined.
grpc.proto:27:25: "PartyInfo" is not defined.
grpc.proto:27:45: "PartyInfoResponse" is not defined.
grpc.proto:34:14: "PushPayload" is not defined.
grpc.proto:34:36: "PartyInfoResponse" is not defined.
Makefile:17: recipe for target 'proto' failed
make: *** [proto] Error 1
Machine config:
Linux dagger 4.15.0-29-generic #31-Ubuntu SMP Tue Jul 17 15:39:52 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
16 GB RAM, 110 GB SSD

We have been refactoring the code and recently made a few changes and moved grpc.proto file into a different project https://github.com/blk-io/chimera-api.
Please can you try to build it again and verify if it is building now?

Hi,
Thanks for the response.
Makefile:16: recipe for target 'build' failed
make: *** [build] Error 2

Can you please install berkley DB with sudo apt-get update -qq && sudo apt-get install -y -qq libdb-dev libpthread-stubs0-dev command, and retry the build?

Great, that worked! Thanks.
Just an FYI, I was getting the below warnings.
bdb.c: In function ‘go_db_cursor’:
bdb.c:78:38: warning: passing argument 3 of ‘dbp->cursor’ from incompatible pointer type [-Wincompatible-pointer-types]
ret = dbp->cursor(dbp, NULL, dbcp, 0);
^~~~
bdb.c:78:38: note: expected ‘DBC ** {aka struct __dbc **}’ but argument is of type ‘DBC * {aka struct __dbc *}’


Creating records directly in tests in a FastAPI appliction

Describe the bug
Suppose I have an endpoint like this:
@router.get("/", response_model=List[Item])
async def get_items(keys: List[str] = Query([])) -> List[Item]:
    return await Item.objects.filter(key__in=keys).all()

I'd like to test this with something like:
@pytest.mark.asyncio
async def test_success(self, client: TestClient) -> None:
    item_1 = await Item.objects.create(key="1")
    item_2 = await Item.objects.create(key="2")

    url = router.url_path_for("get_items")

    response = client.get(
        f"{url}?keys=1&keys=2&keys=3",
    )

    data = response.json()

    assert len(data) == 2
    assert data[0]["id"] == item_1.id
    assert data[1]["id"] == item_2.id

However, running this i get errors of this nature:
asyncpg.exceptions._base.InterfaceError: cannot perform operation: another operation is in progress

I'm using the following fixtures:
@pytest.fixture(autouse=True, scope="class")
def create_test_database() -> Generator[None, None, None]:
    """Create a test database before tests and tear down afterwards."""
    engine = sqlalchemy.create_engine(settings.sqlalchemy_database_uri)
    metadata.create_all(engine)
    yield
    metadata.drop_all(engine)

@pytest.fixture(scope="module")
def client() -> Generator[TestClient, None, None]:
    """Initialize a `TestClient` to be used in tests.

    Yields:
        the test client
    """
    with TestClient(app) as test_client:
        yield test_client

Is there a way around this? I notice in your tests you create dummy routes for the test client app to create objects in the tests, is that the only way to create these factory style records in tests?
To Reproduce
Steps to reproduce the behavior:
This is a little tricky given that it relies on a postgres database but I can give a full example if needs be
Expected behavior
I should be able to create a record in test
Screenshots
If applicable, add screenshots to help explain your problem.
Versions (please complete the following information):

Database backend used (mysql/sqlite/postgress): postgres:13
Python version: 3.9.0
ormar version: 0.10.22
pydantic version: 1.8.2
if applicable fastapi version: 0.70.0

You didn't show this but if TestClient is the one from starlette it's sync only, so you cannot use it in async marked tests.
You have to switch to httpx or something like this and actually await the client call to the endpoint.
I create the data creation endpoints for two reasons:

It's exactly this one as I didn't want to introduce an additional async client for requests
I want to test also create functionality with fastapi as some bugs reveal only in this setup

ahh makes total sense, thanks for your quick response. will look to switch to httpx


a bug about regular expression

when  execute<EMAIL_ADDRESS>&&  @.category=~ /.*reference.*/)]")  can get right result,
but  execute read("$.store.book[?( @.category=~ /.*reference.*/&& @.display-price>=8 )]")    get wrong result.
I guess there's a bug in the function com.jayway.jsonpath.internal.filter.FilterCompiler.readPattern()

The same bug seems to have been reported in JMeter Bug 65053. A git bisect on JsonPath repo points to the addition of support for pattern flags with cbdc9c82e00edb9496f41a4aca3d12ef7ee8321b.

The same bug seems to have been reported in JMeter Bug 65053. A git bisect on JsonPath repo points to the addition of support for pattern flags with cbdc9c82e00edb9496f41a4aca3d12ef7ee8321b.

Hi,
Can we have an ETA on a probable merge/release including the fix ? (I'm not complaining, just asking to get an idea if it's pertinent for me to temporarily copy FSchumacher fork and use it in the meantime :) )
Thanks

Hi,
Can we have an ETA on a probable merge/release including the fix ? (I'm not complaining, just asking to get an idea if it's pertinent for me to temporarily copy FSchumacher fork and use it in the meantime :) )
Thanks

Fixed in version 2.6.0


No support for Pocket

Describe the bug
Can't add URL to pocket.
To Reproduce
Steps to reproduce the behavior:

Visit any site in Kiwi Browser
Copy the URL
Open Pocket
Recieve the "Pocket pasted from your keyboard" prompt

Expected behavior
A clear and concise description of what you expected to happen.
Instead of the OS prompt in step 4. you should get a prompt from the pocket app (at the bottom) saying "Save Copied URL".
To see expected behavior visit any site but in Google Chrome then perform steps 2. and 3. then the expected behavior should occur.
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):

Device: Google Pixel 6
Android Version : Android 12
Kiwi Browser Version: 98.0.4758.66

Additional context
Add any other context about the problem here.

from pocket help "The green notification bar that appears when Pocket detects a copied URL", so it seems pocket does not detect the link (may be because it don't know kiwi?)
anyway preferred way is to use the share function and select Pocket, but opinions may vary


Shipping International To Mexico GetRatesWithShipmentDetails

Hello Devs,
I'm having an issue with this API: GetRatesWithShipmentDetails, when I create a shipping to Mexico
I'm calling it like this:
{
"ShipmentId": null,
"Shipment": {
"ValidateAddress": "no_validation",
"CarrierId": "se-2264604",
"ServiceCode": null,
"ExternalOrderId": null,
"Items": null,
"TaxIdentifiers": null,
"ExternalShipmentId": "302594bf-791e-471d-986b-b99345d331ad",
"ShipDate": "2023-07-17T13:43:45Z",
"ShipTo": {
"Name": "TEST MEXICO",
"Phone": "",
"CompanyName": "",
"AddressLine1": "AVE INTERNACIONAL 5702",
"AddressLine2": "",
"AddressLine3": null,
"CityLocality": "SINALOA",
"StateProvince": "",
"PostalCode": "82180",
"CountryCode": "MX",
"AddressResidentialIndicator": "yes"
},
"ShipFrom": null,
"WarehouseId": "se-6555950",
"ReturnTo": null,
"Confirmation": "None",
"Customs": {
"Contents": "Merchandise",
"NonDelivery": "return_to_sender",
"CustomsItems": [
{
"Description": "Vitamins",
"Quantity": 1,
"Value": {
"Currency": "USD",
"Amount": 10.5
},
"HarmonizedTariffCode": "30045099",
"CountryOfOrigin": "US",
"UnitOfMeasure": null,
"Sku": "01778",
"SkuDescription": "Super Selenium Complex, 200 mc "
}
]
},
"AdvancedOptions": null,
"OriginType": 0,
"InsuranceProvider": "None",
"Tags": null,
"OrderSourceCode": "amazon_ca",
"Packages": [
{
"PackageCode": "custom_Box1",
"Weight": {
"Value": 1,
"Unit": "Pound"
},
"Dimensions": null,
"InsuredValue": null,
"LabelMessages": null,
"ExternalPackageId": null
}
],
"Weight": null
},
"RateOptions": {
"CarrierIds": [
"se-2264604"
],
"PackageTypes": [
"package"
],
"ServiceCodes": [
"ups_worldwide_saver"
],
"CalculateTaxAmount": false,
"PreferredCurrency": "USD"
}
}
But when I want to get a label I got the next result:
{
"request_id": "bd64991e-89a5-46a4-b3af-43cf019c4ec0",
"errors": [
{
"error_source": "carrier",
"error_type": "business_rules",
"error_code": "unspecified",
"message": "A shipping carrier error occurred: A package in a Mexico shipment must have a Merchandise Description.",
"carrier_id": "se-2264604",
"carrier_code": "ups",
"carrier_name": "UPS"
}
]
}
I was checking the documentation and I found If want to send a shipping to Mexico I need to set this value on packages field: "content_description"
"packages": [
{
"content_description": "Vitamins",
"package_code": "package",
"weight": {
"value": 0.05,
"unit": "pound"
},
"dimensions": {
"unit": "inch",
"length": 15.0,
"width": 11.0,
"height": 0.25
}
}
]
So my question is: At this moment exists any way to set a value for "content_description"?
Thanks,
Abraham Chaves

Hello @abrchaves !  Apologies for the issue - due to a regulation in Mexico, they added a new required field for shipping through the country this year that we haven't updated this SDK with yet.  We will make a ticket to update this field.

Thank you for your insight.  Do you have an idea of when this will be available?  As it is right now we can't ship to Mexico and is affecting our business.  -Thank you


[BUG] Cannot specify intents as a list

Describe the bug
When intents is passed as a list to Client, it is appended to without initialization.
Reproducing steps
Reproduction code:
from interactions import Client, Intents

bot = Client(
    token='TOKEN',
    intents=[Intents.GUILDS, Intents.GUILD_MEMBERS],
)

bot.start()

Expected behavior
Intent number is computed from the list.
What actually happened
Traceback (most recent call last):
  File "C:\Program Files\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Program Files\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Users\snaz\Documents\dpy-int-test\bot.py", line 4, in <module>
    bot = Client(
  File "C:\Users\snaz\AppData\Local\pypoetry\Cache\virtualenvs\dpy-int-test-coV1hBcm-py3.10\lib\site-packages\interactions\client.py", line 64, in __init__
    self.intents |= intent
AttributeError: 'Client' object has no attribute 'intents'

Root cause
When intents is a list, the code tries to repeatedly binary-or all passed intent numbers without initializing the variable first.
Versions
Reproduced on 4.0.1, stable, and unstable.

[ ] I am using discord.py versions 1.7 and below with my code.

[ ] I am using 2.0 or higher, or a modified fork.

[ ] I am using dis-snek with my code.
[x] I am not using any of the listed above and am using the library code alone.

yea looks like an oversight, for now you can just do intents=Intents.GUILDS | Intents.GUILD_MEMBERS

Thanks - I'll also send a PR for a quick fix.


fix cell_transition

the multimodality tutorial works as expected #604

@giovp do you understand why this fixes the bug? did the dispatching behaviour change?

@MUCDK I have no clue tbh ...


Avoid making x properties non-enumerable

I'm seeing cases where Object.keys({x:1, y:2}) is yielding ['y'].

I changed the new key to "@" which is even less likely to cause conflict. Thanks again for digging into this.


Button is not defined error while running the storybook

I have gone through the article https://getstorybook.io/docs/basics/slow-start-guide and after doing all the necessary steps while I ran the npm run storybook command I encountered the error "Button is not defined
ReferenceError: Button is not defined
at eval (webpack:///:6:5)
at renderMain (webpack:///~/@kadira/storybook/dist/client/preview/render.js:85:31)
at renderPreview (webpack:///~/@kadira/storybook/dist/client/preview/render.js:101:10)
at Array.renderUI (webpack:///~/@kadira/storybook/dist/client/preview/index.js:89:26)
at Object.dispatch (webpack:///~/redux/lib/createStore.js:186:19)
at eval (webpack:///~/@kadira/storybook/dist/client/preview/index.js:68:16)
at eval (webpack:///~/@kadira/storybook-channel/dist/index.js:111:21)
at Array.forEach (native)
at Channel._handleEvent (webpack:///~/@kadira/storybook-channel/dist/index.js:110:19)
at PageBusTransport._handleEvent (webpack:///~/@kadira/storybook-channel-pagebus/dist/index.js:59:12)"

Found the error: the Button tag which is used in the index.js file is given as "Button" but it will be "button" instead.

Hi @ashfaqrafi
Thanks for reporting the issue. I Just updated the docs site.

thanks for the reply and doc update @mnmtanish


Run CI on visionOS

As title

Woof. We can't do this until GitHub enables Apple Silicon Macs for open source projects.


Problems with scrolling header into view after TableOfContents click

I am facing issues with navigating through long documents by clicking on the headers of the new TableOfContents.
The issue is present for me when using edge/chromium on windows as browser and connecting to a Pluto server with windows/linux (I tested both locally on windows and still with the browser on Windows but connecting to a remote linux server hosting Pluto).
Edit: I tested on firefox and the problem doesn't appear there, I also tested specific calls to element.scrollIntoView and it seems that smooth scrolling has issues in chromium even outside of the TableOfContents
The problem is that when opening a page and trying to click onto a header in the TableOfContents, the scrolling into view seems to interrupt before reaching the element. For elements quite far in the document, I need to click multiple times before finally reaching the element.
Strangely enough, once an element has been reached, scrolling back into it after going back to the top of the document seems to work fine.
If I refresh the page though, the problem presents itself again.
I tested this behavior with the notebook defining the TableOfContents below:
https://user-images.githubusercontent.com/12846528/202744555-74525efe-b818-405c-ba49-daebc314c93c.mp4

I have also confirmed this problem in several notebooks. My environment is as follows.

Linux (Xubuntu 22.04)
Chrome 108.0.5359.124

Just a confirmation of what @disberd already pointed out, but turning off smooth scrolling eliminated this problem in my environment as well.
What I did was to change lines 184-187 in TableOfContents.jl as follows.
https://github.com/JuliaPluto/PlutoUI.jl/blob/4f9a89c1e1db300bbe0415d48e9e8e5d9d041b6c/src/TableOfContents.jl#L181-L188
		h.scrollIntoView({
			behavior: 'auto',
			block: 'start'
		})

Alternatively, the following changes have reduced the scrolling errors, although the problem remains.
		window.scrollTo({
			behavior: 'smooth',
			top: window.pageYOffset + h.getBoundingClientRect().top - 20
		})

(The -20 at the end is the top offset.  I actually turn off smooth scrolling in addition to the latter code)

In my extended ToC in my private package here I resorted to use the SmoothScroll library as scrolling replacement for consistent scrolling even in chrome


Android connectivity issues

Takes about ~30 seconds to establish a new channel
Suffers from the same issues as the Apple client in #2853

Will close for now due to #2853 being merged and open a more detailed issue for further problems


Median has inconsistent behaviour with NaN (sometimes panic, sometimes wrong result)

Two examples of f64 Data with NaN. Depending on position of NaN, median either panics or delivers a wrong result.
use statrs::statistics::{Data, Median};
fn main() {
    let x = [f64::NAN, -3.0, 0.0, 3.0, -2.0];
    let x = Data::new(x);
    dbg!(x.clone());
    dbg!(x.median());
    println!("The median should panic/return NaN or behave as if NaNs are dropped. In which case the result should be -1.0 instead of -2.0");
    let x = [0.0, f64::NAN, 3.0, -2.0];
    let x = Data::new(x);
    dbg!(x.clone());
    println!("If the NaN is in the second postion, median panics.");
    dbg!(x.median());
}

We should probably return NaN instead of panicking or returning a wrong result.

I think this might happen with all order statistics (at least lower_quartile and upper_quartile in my usage).

numpy has functions np.nan[statistic], one to ignore NaN and the other to emit NaN.
We can follow that and do similar for quartiles and will emit Option::None instead of NaN when data is empty.
Making the change breaks API (but makes it match the docs), so the other option would be to implement a StatisticsNan that emits Option with the old trait panicing if there's NaN or match what we have for <_ as statistics::Median>::median -> Option<T>
Think I'll make it Option. Also considering the value of associated type since it's a returned value.


Node/Edge level options

Hello,
I really like your angular 2 components so far. I do have a quick question if I may. Is it possible to independent options to the nodes or the edges. When going through the code I can only see option set at the network level. What I want to achieve is different stylings (e.g. colors) for different types of nodes.
Thank you for the feedback,
Kind Regards,
Bram

I'm very busy at the moment but this is related to #23. The TypeScript definitions are not up to date and incomplete. I hope I can fix this by updating to the new vis typings. Maybe next weekend. Till then you can try to create your nodes as 'any' types and cast it to VisNode before adding to the dataset.
let myColorNode = { id: 'someId', label: 'someLabel', color: 'someColor' };  networkData.nodes.add(myColorNode as VisNode); // networkData is of type VisNetworkData

Thank you very much for the feedback. It is working perfectly! I am closing this question then.

Does this work for VisEdges as well?

Sure ... should be quite similar


Unable to create User password

When i try to access burning okr as an admin i have added some users but i can't login as user since there is no field for creating password during user registration on user management section
please help me how to give password for users and how to login as use into burning okr portal?

Hello tesmez,
if you create a user, a e-mail is sent to the given address. The user can then set the password or if you use an email you have access to, you can set the password yourself.
Note that for this to work you have to configurate an SMTP server.

If you get a warning like shown in the screenshot above, no smtp server was set up yet.

Closed due to inactivity.


expect: Improve report when matcher fails, part 13

Summary
For toBeInstanceOf matcher:

Display matcher name in regular black instead of dim color
Display not following expected label
Replace confusing constructor name with sentence if received value has no prototype chain
Omit expected or received constructor name in edge cases

For more information, see discussion with @jeysal in #7795
The report is less helpful than it might be because min option of pretty-format omits class name :(
Residue: Improve report for toThrow with expected error class especially if received error.name is not the same as error.constructor.name
Test plan

Updated 11 snapshot tests
Added 4 snapshot tests

See also pictures in following comment.

8 example pictures baseline at left and improved at right
Sentence instead of empty string for null or undefined

Sentence instead of confusing constructor name for other primitive values

Sentence instead of undefined if object does not have a prototype chain

Omit expected if constructor has empty string as its name

Omit received if constructor function overrides name property

Display not following expected label for literal array

Display not following expected label for instance of subclass

Omit expected if class has static name method

"Received value does not have a prototype chain" is a rather cumbersome message, can we cut it down to "Received value has no prototype"? I don't think "chain" is needed (anything that has a prototype also has a prototype chain of length >= 1), unless you wanted to express something specific with it?

Thank you for constructive critique!

In the "Omit expected if constructor has empty string as its name" case maybe we should still indicate that Expected was an unnamed constructor? "Expected unnamed constructor" or something? Or maybe it's fine because the user can identify the constructor in the code frame anyway, what do you think?

Yes, I agree with short phrases instead of omitted lines. Bonus points to start same as the labels:

Expected constructor blah blah blah
Received constructor yada yada yada

Here are two phrases so length of report is consistent positive 3 lines and negative 2 lines:

Expected/Received constructor name is not a string
Expected/Received constructor name is an empty string

Omit expected if class has static name method:
expect(received).not.toBeInstanceOf(expected)

Expected constructor name is not a string
Received value: {}

Omit expected if constructor has empty string as its name:
expect(received).toBeInstanceOf(expected)

Expected constructor name is an empty string
Received constructor: RegExp
Received value: /\w+/

P.S. Because pretty-format serializes strings in double quote marks, empty string is not usually a special case. For this matcher (and for toThrow with expected error class) there is a risk for report to give incorrect impression that the constructor name is the criterion.

For what it’s worth, I have see this warning in local yarn test with node 8.12.0:

MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to increase limit

Yeah, it's from watch.test.js - it's not something to worry about


Update quickstart to reflect get() and post() decorator syntax

Added a short paragraph and example to the http-methods section to explain that http methods can be referenced directly by using the get() and post() decorators as well as the route(methods=['GET', 'POST]) decorator.
I believe this will be helpful for those new to Flask as it is simpler syntax and doesn't require referencing the request object which hasn't yet been introduced by this point in the quickstart.

Separate functions are not a good idea for typical (wt) form use cases...

I thought it would be helpful to follow the same format as the existing example for clarity, but happy to rework it to a better use case if you think better?
Equally feel free to reject if you think not helpful in any case.


Track in-house use

Functionality needed

[ ] Record in-house/internal use of items, preferably by scanning barcodes in batches.
[ ] MDF: Materials management > internal use count

Steps in FOLIO

Items not checked out and checked in through the Check in app are automatically marked as In House Use

We have a good understanding of tracking in-house use. Think the best way to get data out will be determined by Reporting Pod.


Troubleshoot Azure Files problems in Linux (SMB) returns 404

The Linux URL for SMB is currently returning a 404

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: e267d760-1762-ab0d-c146-3596ea6f9c31
Version Independent ID: 18890a3b-e256-35cc-5f11-bc7e92633a13
Content: Troubleshoot Azure NFS file share problems - Azure Files
Content Source: articles/storage/files/storage-troubleshooting-files-nfs.md
Service: storage
Sub-service: files
GitHub Login: @jeffpatt24
Microsoft Alias: jeffpatt

Document seems to be there. Unsure why I am getting a 404.
https://github.com/MicrosoftDocs/azure-docs-pr/blob/master/articles/storage/files/storage-troubleshoot-linux-file-connection-problems.md
https://docs.microsoft.com/en-us/azure/storage/files/storage-troubleshoot-linux-file-connection-problems

@DerekHerman-MSFT I can get to the article just fine, you mean this one right?
https://docs.microsoft.com/en-us/azure/storage/files/storage-troubleshoot-linux-file-connection-problems

Working fine now, must have been a temporary issue.


Base64 hashes in filenames should be URL-safe

Do you want to request a feature or report a bug?
Bug

What is the current behavior?
When using output.hashDigest = 'base64', hashes can contain / and +. Both will probably work (at least the slash will), as they will be handled the same way by webservers as filesystems. But it certainly isn't pretty when your full bundle path suddenly is /public/main.B/0sK5.js.
If the current behavior is a bug, please provide the steps to reproduce.
Because of the random nature of the issue, I don't have a simple way to reproduce it.

What is the expected behavior?
URL-safe base64 should be used. This can be achieved by replacing + with - and / with _. See https://en.wikipedia.org/wiki/Base64#URL_applications. This should probably be done everywhere base64 can be used as hash encoding.
If this is a feature request, what is motivation or use case for changing the behavior?
Please mention other relevant information such as the browser version, Node.js version, webpack version and Operating System.

What about just going to base62 which is actually exactly that, file system safe. 💯

Maybe we should just get node to support arbitrary bases, then there would be no limits. I can't wait to base37 encode me som data!

Maybe webpack should use loaderUtils.interpolateName?

I think this might already be supported if you pass 'base64url' to hashDigest:

The encoding to use when generating the hash. All encodings from Node.JS' hash.digest are supported.
—Output | webpack § output.hashDigest

'base64' - Base64 encoding. When creating a Buffer from a string, this encoding will also correctly accept "URL and Filename Safe Alphabet" as specified in RFC 4648, Section 5.
—Node.js docs § Buffers and Character Encodings

This encoding may be referred to as "base64url". This encoding should not be regarded as the same as the "base64" encoding and should not be referred to as only "base64".
—RFC 4648 § Base 64 Encoding with URL and Filename Safe Alphabet

Whoops, looks like not quite. Node transparently consumes base64url if passed in for a Buffer, but they’re unsure if they should implement producing it as well.


Test Suite

Added a test suite that should be run before every merge
@ublubu

small comment, lgtm otherwise


Fix bug in DateInputField on empty values

There's a bug at https://github.com/wildfish/crispy-forms-gds/blob/1a5729c/src/crispy_forms_gds/fields.py#L108 currently where an empty list is passed to .compress, which then errors as it tries to unpack multiple values.

Have added a PR for this


Exclude rulesets triggering MCB

HTTPS Everywhere has some rulesets triggering mixed content blocking. Such rulesets (such as this one) are marked with platform="mixedcontent".
It may cause complete breakage of some websites. For example, try visiting nydailynews.com on Tenta Browser. You will get automatically redirected to https://www.nydailynews.com/ which is pretty much unusable.
You should probably discard platform="mixedcontent" rulesets, as you are doing with default_off rulesets.

Hi!
Thank you for your feedback!
We will investigate and apply a fix asap.

Closing this, commit 1747ea4d30ce309c8d869854b60d2ccee308d354 fixes the issue.

Also, I don't know which certificates are shipped with the browser but about ~20 rulesets have platform="cacert" to secure targets serving a CAcert certificate. Maybe you will need to remove those as well.
platform="mixedcontent" and platform="cacert" are the only two platforms currently in use.

Thanks!
I was under the impression that mixedcontent is the only platform.

Disabled cacert platform too. (commit 8211474a484b2aac01810ffa14daa60c10b002b4)
Closing the issue.
Thanks again for your feedback, @Bisaloo !


Feature/status labels

Added new StatusLabel component for use in TestCenter.
Added new StatusMessage and StatusIcon components which are combined to make us StatusLabel. These are exposed as they may be required for future usage in TestCenter.

Figma designs:
As a label:

Icon only:

I have some time so I will review this now.

Code looks good. Just one question. How do the status icons look in dark mode?

Looks fine to me, was this a question or a hint that they don't?
I've opened up another PR that adds dark mode to storybook so we can test this kind of thing more easily.

Looks fine to me, was this a question or a hint that they don't?

Yes it was a question. Can you share screenshot of how they look?

Just maybe the the "running" needs to be a bit brighter?

Just maybe the the "running" needs to be a bit brighter?

Looks OK I think. We can go with it.


Drop support for Ruby 1.9.3

Fixes #343.

We never officially supported JRuby or Rubinius. Should we remove them from the Travis build matrix?

I'd like to continue supporting JRuby. It's a reasonable and used alternative to MRI. Rubinius I could live withouth.

Can you figure out how to get JRuby running in Ruby 2.0 mode on Travis then?

Sure, I'll look into it.

Might be as easy as `JRUBY_OPTS='--2.0'.

Well that was unexpected:
ERROR:  While executing gem ... (ArgumentError)
    marshal data too short

https://travis-ci.org/orgsync/active_interaction/jobs/101112443

:shipit:


*: update go version to 1.10

Go version is defined in

build
test script

This PR updates them. Also some cleanup.
fix https://github.com/coreos/etcd-operator/issues/1752

lgtm defer to @hasbro17

LGTM.
In the future the tag of the builder container should probably reflect both the dep and Go version.
gcr.io/coreos-k8s-scale-testing/etcd-operator-builder:0.4.1-1.1.0
Although I'm not sure if that's an invalid tag format.

Honestly, no need to complicate that -- these versions aren't updated very often, i.e. between a couple months.


dashboard: Investigate using grafonnet for building dashboards

https://github.com/grafana/grafonnet
Identify pros & cons of using it vs. the current approach (building in UI then exporting json)

One potential pro I'd like to bottom out is if parts of a dashboard can changed dynamically based on input variables when building them.
For example, including drill down links from individual HTTPRoutes to a gateway provider specific dashboard, like the Istio Workload dashboard pre-filtered to that route.

closed by #35


Allow pinning Biolink version

Make pinning the Biolink version available programmatically and in the module config.

BMT does not allow specifying the version directly, will have to go through release-specific URLs. From docs:
BMT is pinned to a specific version of Biolink Model at each release. This can be configured to use your custom version of Biolink Model YAML:
from bmt import Toolkit
t = Toolkit('/path/to/biolink-model.yaml')

The path can be a file path or a URL.

Posed question at Biolink: https://github.com/biolink/biolink-model/issues/1140


Update gsuuon/llm.nvim

Name of repo has changed.
Repo URL:
https://github.com/gsuuon/model.nvim
Checklist:

[x] The plugin is specifically built for Neovim, or if it's a colorscheme, it supports treesitter syntax.
[x] The lines end with a .. This is to conform to awesome-list linting and requirements.
[x] The title of the pull request is Add/Update/Remove `username/repo`  (notice the backticks around `username/repo`) when adding a new plugin.
[x] The description doesn't mention that it's a Neovim plugin, it's obvious from the rest of the document. No mentions of the word plugin unless it's related to something else.
[x] The description doesn't contain emojis.
[x] Neovim is spelled as Neovim (not nvim, NeoVim or neovim), Vim is spelled as Vim (capitalized), Lua is spelled as Lua (capitalized), Tree-sitter is spelled as Tree-sitter.
[x] Acronyms should be fully capitalized, for example LSP, TS, YAML, etc.

Thanks for the PR!


(IMPROVEMENT) Big Endian format can be preferred over Uint8Array(array).reverse()

The following lines of code :
https://github.com/UNIRIS/uniris-libjs/blob/5f733654a1a904c10a89fd36782b438d543c76b3/lib/utils.js#L78-L79
has the same behaviour as using the big endian format instead.
view.setFloat64(0, number, false)
return new Uint8Array(array)

Thanks. A PR would be good

Please add your planning poker estimate with ZenHub @roychowdhuryrohit-dev

Please add your planning poker estimate with ZenHub @roychowdhuryrohit-dev

We have to check #43 first, if this issue is still valid ?

As far as I remember this fix was mostly for improving code aesthetics and doesn't break or change any functionality.


Unable to import coiled when installing coiled-runtime from pip

I was testing using pip to install coiled-runtime and was having some problems importing coiled. I'm not the most familiar with pip, so not quite sure the best way to troubleshoot. Here's what I did:
python3 -m venv test
source test/bin/activate
python3 -m pip install coiled-runtime

Then, in a python session when I try to import coiled I get a ModuleNotFoundError:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'coiled'

This is python version 3.9, pip 22.2.2, and coiled-runtime 0.0.1 (the only version I saw on PyPI).

https://github.com/coiled/coiled-runtime/issues/153#issuecomment-1198829177

@jrbourbeau what's the status of getting a real coiled-runtime release on pypi? @scharlottej13 is in the process of updating docs to tell people they can install from conda-forge OR pypi.

#153 (comment)

Wow I'm so sorry I completely missed that! I just got really excited to try it out! 😬

See https://github.com/coiled/coiled-runtime/issues/233

Thank you @jrbourbeau! I think I can close this issue too.


Wonky Kernel Status

So (after much trial and tribulation) I got Hydrogen working on my Windows PC, I noticed a little aesthetic issue with the status bar:

I'm sure this is a trivial issue, but I have no clue around CSS/Less/styling/whatever, so I have no idea what to do. I'm using the 'metro' UI theme by Cirex, but I've noticed a slight, slight issue along the same lines with 'atom dark', so...
Hmm.

Wow, that's very weird. The kernel status isn't really styled. I'm not ruling out this being an issue with Hydrogen, but maybe it's some sort of layout error with another plugin? Does this still happen if the plugin that's adding the "Archive" button there is disabled?
Do you (or anyone else with this issue) know your way around the dev tools enough to poke around and try to see what's happening?


Parsing error on unprotected numbers

The following bibtex is valid but trigger a parsing error (unknown abbreviation "2020": 274-278):
@article{bullshit2020,
    title={At-scale impact of the {Net Wok}: A culinarically holistic investigation of distributed dumplings},
    author={Astley, Rick and Morris, Linda},
    journal={Armenian Journal of Proceedings},
    volume={61},
    pages={192--219},
    year=2020,
    publisher={Automattic Inc.}
  }

The problem comes from the value of the "year" field which is not enclosed (which is allowed in bibltex and found in many places).

Thank you for filing this bug! The rewrite of the parser caused this regression (and it also caused the test suite to regress and not test this due to a missing .unwrap). I will push a fix and a release.


Added ability to pass prefetch count in as a consumeOpts during connect

Adds ability to specify a prefetch count on a consumer channel in accordance to amqplib's documentation. Requested in #38
The implementation uses the existing infrastructure around passing consumer options to the consumer channel during connection. It will check for the presence of a prefetch key in the consumeOpts object and call the prefetch method on the consumerChannel while passing in the provided value for prefetch in the consumeOpts object. It will then delete the prefetch key from the consumeOpts object if it exists as to not change how the system works down the line.
I could see how this could be viewed as hacky. @tjmehta, let me know if you had a cleaner implementation in mind to get the prefetch count to the assertAndConsumeAppQueue method.

@tjmehta can't seem to get line 21 of assert-and-consume-app-queue.js covered by specs. Any clues?

Hey, nice I'm actually out of the office for a few hours but I can definitely wrap this up for you when I get back

I also think this may be better to add as an additional option to connect. Since queue is already taking quite a by of options. But let me know what you think

@tjmehta Is this more along the lines of what you are thinking? If so, I need to make sure connect can correctly take the optional prefetch argument

Im checking this out now

Hey I was going to branch off this PR, but I ended up implementing a brand new method to handle this app.prefetch(...). I think this way is cleaner than overloading the existing methods, sorry about that. So I am going to close this.


included scope in documentation

as per request of https://github.com/lucadegasperi/oauth2-server-laravel/issues/577

Thanks!


Feature: reorder the sections

As you write the article it is organized in sections (paragraphs). It would be nice if you could drag sessions up and down to reorder the article without losing it linked notes. The current alternative requires creating a new section and copy/pasting.

This is a very useful feature.
Thanks for suggesting.
I will try to work on this... but may take some time.


Add option to quick open files in edit mode instead of preview

It would be convenient to be able to open files directly in Edit mode instead of Preview mode via Quick Open on a per-file basis. I'm aware of the enablePreviewFromQuickOpen setting, but I'd like to have a keyboard shift+enter/shift+click command to toggle that behavior temporarily while quick opening a file. In other words, whatever enablePreviewFromQuickOpen is set to, if I hold shift down I could get the inverse behavior for that file.

@snortblt While it isn't exactly what you are asking for, but you can quickly open files from the QuickOpen as pinned (in "Edit mode") by pressing the right-arrow key. This has the added benefit of keeping the QuickOpen open so that you can do it for many files at once.
Also note that pressing alt (option on mac) opens the file in a new editor group pinned as well.
Hope that helps

@snortblt does the explanation given in by @eamodio cover your issue?

Thanks @eamodio. It's a great tip, but I don't necessarily want to have it pinned. Unpinned edit mode is by far the way I work with files the most.

@snortblt I'm not sure I understand. Maybe the terminology is confusing things -- AFAIK, there are only 2 editor tab modes, preview (unpinned) and not preview (pinned). I thought that "edit mode" meant that the editor wasn't a preview tab. Is that the case or are you asking for something else?

@eamodio Yes. Terminology is the issue here. My bad. Your suggestion of using the right arrow is doing the basic behavior I'm looking for (now that I actually tried it). There are only two file modes but my understanding was that they are referred to as "preview" and "edit". When you said "pinned" I assumed you were referring to the full VS pinning behavior which has been requested at https://github.com/Microsoft/vscode/issues/12622. Didn't realize VS Code does not have that feature. Thanks again for the tip.


remove fs.tmpfs.mounton_files (systemd.system.subj)) when TemporaryFilesystem= is fixed

also remove 'fs.tmpfs.search (daemon_bindreadonlypaths_subj_type_attribute))'
systemd mounts a tmpfs on /run and does not address the label, so /run for callers of TemporaryFilesystem=/run ends up fs.tmpfs.fs which is inconsistent

this probably wont change


ThinkPhp 3.2 English Docs

Hello there! Do you know where can I find Docs for TP 3.2 in English?

@caifagithub There is no official doc for TP 3.2 in English; but if you have any question on TP 3.2, you can just ping me.
Thank you,


Heroku configs

These are the settings/changes used to run the app on Heroku. Keep this on a separate branch prod.

Updated.

:+1:


Pull request acceptance policy

I added an explicit policy for accepting pull requests and making releases.  I also included minor bug fixes related to radiance corrections, binary mode and emissive surfaces.  This pull request will test our code update procedure.

Merged with maintainer concurrence.


Knip does not ignore gitignored directory when it has bad permissions

Hi,
I'm using the latest knip 2.17.0 on a Linux machine.
This is my knip config:
{
  "entry": ["src/app.js", "scripts/**/*.js"],
  "project": ["**/*.js"]
}

I have a directory called mongodata in the project root, which contains MongoDB data from a DB that's running in a docker container. Since it's running in the docker container it has different file permission than the rest of the project files.
The mongodata folder is listed in my .gitignore.
Nevertheless when I run knip I get this:

I even tried adding ignore: ["mongodata/"] to the knip.json, but I still got the error.

It can probably be reproduced by running this in an existing knip project
mkdir somedir
chown -R 1400:1400 somedir

Can't seem to reproduce it here (I'm on macOS).
Not sure if easily fixable by Knip. Perhaps easiest to update config to something like this:
{
  "entry": ["src/app.js", "scripts/**/*.js"],
  "project": ["{src,scripts}/**/*.js"]
}

Would that work for you?

Hi @webpro ,
I checked a bit more I there was one thing missing in my previous description to reproduce.
In an existing knip project do
mkdir somedir
chown -R 1400:adm somedir # change the ownership to user 1400 and group adm
chmod -R 400 somedir            # make the dir only accesible to the owner

npx knip # crashes due to lacking file permissions

This in itself is not so weird that it errors for lacking permissions. The weird thing is that the error still occurs even thought the directory is in the .gitignore. This means that knip must somehow try to scan the directory even if it should be ignored.
Can you reproduce it this way?

Globbing the file system is done by globby, which in turn uses fast-glob. It is configured to take the .gitignore into account.
I see fast-glob has a suppressErrors: true option. I will think about either using that option or try/catching the error and printing a warning, so Knip's process isn't halted.

I see fast-glob has a suppressErrors: true option. I will think about either using that option or try/catching the error and printing a warning, so Knip's process isn't halted.

That would be a workaround. However it seems to me that, if the globbing correctly ignored the items from .gitignore the error shouldn't happen in the first place, should it?

I think I have narrowed down the last call before the error happens. It should be getEntryPathFromManifest function
https://github.com/webpro/knip/blob/main/src/index.ts#L155

getEntryPathFromManifest in turn calls _glob here https://github.com/webpro/knip/blob/main/src/util/modules.ts#L57C2-L57C2 .
It seems like globby still tries to access the directory even when it's gitignored.
Now that I understand that I think you're sugesstion of catching or supressing the error is probably the way to go here.

Btw, I modified my knip.json to have this content
{
  "entry": ["src/app.js", "scripts/**/*.js"],
  "project": ["src/**/*.js", "scripts/**/*.js"]
}

and I still get the same error. Even though the offending mongodata/ directory is above src and scripts AND contained in .gitignore. Very strange

Ah that makes sense. So globby using doing a recursive lookup for .gitignore files in all subdirectories and crashes when it can't read one.
It seems this is a strange behavior on globbys part, or that at least would be nice if globby had some way of skipping directories it can't read. I added an issue on globby side for this.
In the mean time your suggestions sound good.
What I also found was this option https://github.com/sindresorhus/globby#ignorefiles
If knip somehow exposed this option then a user (like me) could specify his/her own pattern. In this case I could tell knip/globby that  my ignore file pattern is simply .gitignore instead of the default **/.gitignore.

Update: Seems like the author of globby considers the current behavior a bug.

Thanks!
There's currently no way to override the hard-coded **/.gitignore pattern in globby.
Still not sure about that workaround in Knip, but will keep this ticket open.

Got it.
My current workaround is to just aff read permissions for all for the Folder thst causes the Bug, which let's me use knip normally.
Knowing that the globby author considers this a bug probably means that it will get fixed at some point.
With workaround exising maybe knip doesn't have to implement its own workaround and just wait until it gets fixed upstream.
Feel free to open or close this issue as you see fit.

Since the actual issue is upstream, I didn't hear from anyone else, and searching for EACCESS in the globby and fast-glob repos also don't show many issues, I'm going to close this.

That's fine. The upstream issue is labelled with "help wanted" so it looks like they are looking for a contribution. It could take a while until it's fixed.

I'm hitting the same error. I have a huge /notes directory in my repo that is gitignored and contains all sorts of files. Deep inside there's something not readable by my current user, and knip fails with Error: EACCES: permission denied, scandir on that directory.

@webpro FYI seems like globby fixed this issue upstream https://github.com/sindresorhus/globby/pull/259

I glanced at their fix but if I understand correctly it only solves the issue in narrow cases - when the permissionless files are in one of the locations that's in the hardcoded ignore list (not when it's in a gitignore file)

Ah ok, I didn't Look at it in depth yet but thought it was the Kind of fix discussed in this issue.

doesn't apply to knip though because we fixed it differently
Ah so knip rolled it's own solution?

Ah so knip rolled it's own solution?

@phiresky did! In #426 ❤

Ah fantastic. So knip doesn't even use globby in this case anymore. 👍

That PR replaces cq removes globby from the dependency list indeed.


crypto/tls: generate_cert.go sets KeyEncipherment KU for non-RSA keys [freeze exception]

What version of Go are you using (go version)?

go version go1.13.4 linux/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
N/A
What did you do?
$ go run ./src/crypto/tls/generate_cert.go -host threeletter.agency -ecdsa-curve=P256

$ openssl x509 -in cert.pem -noout -text | grep -A1 "X509v3 Key Usage:"

What did you expect to see?
            X509v3 Key Usage: critical
                Digital Signature

What did you see instead?
            X509v3 Key Usage: critical
                Digital Signature, Key Encipherment

Summary:
The crypto/tls/generate_cert.go utility should only set the template x509.Certificate's KeyUsage field to a value with the x509.KeyUsageKeyEncipherment bits set when the certificate subject public key is an RSA public key, not an ECDSA or ED25519 public key.
Presently it sets the KeyUsage to KeyUsageKeyEncipherment and KeyUsageDigitalSignature no matter what type of public key is used: https://github.com/golang/go/blob/79ccbe1b67b9c481c73bd6b310849bbcf13954a5/src/crypto/tls/generate_cert.go#L110
RFC 5480 describes the usage of ECDSA elliptic curve subject keys with X509. Unfortunately while Section 3 "Key Usages Bits" indicates which key usage bits MAY be used with a certificate that indicates id-ecPublicKey in the SubjectPublicKeyInfo field it doesn't provide guidance on which usages should not be included (e.g. the keyEncipherment bit, which is particular to RSA key exchange). The same problem is present in RFC 8410 Section 5 describing Key Usage Bits for ED25519 elliptic curve subject keys.
There's an update to RFC 5480 in last call stage within the IETF LAMPS WG, draft-ietf-lamps-5480-ku-clarifications-00. This update is meant to clarify the allowed Key Usages extension values for certificates with ECDSA subject public keys by adding:

If the keyUsage extension is present in a certificate that indicates id-ecPublicKey as algorithm of AlgorithmIdentifier [RFC2986] in SubjectPublicKeyInfo, then following values MUST NOT be present:
keyEncipherment; and
dataEncipherment.

I don't believe there is an update for RFC 8410 in the works but I suspect it will be clarified similarly in the future (I will follow up with the LAMPS WG).
The current behaviour of generate_cert.go won't comply with the updated RFC 5480 requirement.

/cc @FiloSottile @agl @katiehockman

Subscribing to this issue, as certs generated like this with ECC keys (haven't used ED25519 yet) raises an error in Chrome 83 on Mac (and I have verified this as well): https://caddy.community/t/internal-ssl-certificate-is-not-standards-compliant-on-macos/8933

@rsc @golang/osp-team Can I get a freeze exception on this? generate_cert.go is a +build ignore file, so it's basically documentation, but it gets copied into projects, and they end up subtly broken.

Fixing this during freeze seems okay to me. Chrome 83 was released after the Go 1.15 freeze started, so some of the information here wasn't available earlier. A +build ignored file doesn't contribute to the stability of the final release, and won't compromise testing that has been done via Go 1.15 Beta 1.

Yeah, Chrome 83 is a misdirect. It's been part of BoringSSL since 2019-01-30 for TLS 1.2 and earlier, and always for TLS 1.3
https://boringssl.googlesource.com/boringssl/+/d7266ecc9bf92ffad277bc39653919da79c8f42b^!

That change was for RSA keys, not EC keys. But nothing applicable changed in Chrome 83 as far as I know. I don't think this is coming from BoringSSL, however. We require for the presence of various bits, but not the absence. The error would also come out differently.
Given both the error and that it's reflected in the macOS certificate viewer UI, this probably isn't coming directly from Chrome at all, but macOS.

@davidben No, that change affected EC keys.
    if (ssl->config->enforce_rsa_key_usage ||
        EVP_PKEY_id(hs->peer_pubkey.get()) != EVP_PKEY_RSA) {

If enforce_rsa_key_usage is false, but EVP_PKEY_ID is EC, it will run those checks. Because we always check KU for EC keys.

Right, we checked KU for EC keys. But we did that long before that CL. The new thing in that CL was support for checking on RSA in TLS 1.2.
But we only check for the presence of the bit we wanted. If there was some irrelevant bit, BoringSSL doesn't care. Sounds like this is about something rejecting an irrelevant bit.

(One way or another, the keyEncipherment bit doesn't make sense for EC keys and ought to be omitted.)


[Refactor] ParserFile class use Pathname

This PR uses the OO interface of Pathname to navigate paths and iterate over lines.
Also adds a line of documentation to #parse!.

:+1:


short dir listing for cwd

The documentation is completely confusing to me with regards to how I would use ~/.powerline-shell.py to set up short dir listings for the current working directory. What I would like to do is have only the first letter of each directory displayed except for the current directory which should be the full name. Documentation indicates this is possible using something like the bottom, but I'm totally confused as to how this is done. The documentation completely fails to describe how I actually do this.
#powerline.segments.common.env.cwd(dir_shorten_len=1)

@jceaser you have the wrong project. You want: https://github.com/powerline/powerline
Although we would certainly be happy to have you as a powerline-shell user :)

well, I think I tried yours first then, why don't I try a little harder.

Well wait, I have configured fish to use:
function fish_prompt
    powerline-shell --shell bare $status
end

Ah ok - it may have just been the documentation getting mixed up then.
This project doesn't have the exact configuration options you want though, I think. The customization available for the current directory can be seen here: https://github.com/banga/powerline-shell#segment-configuration Specifically the max_dir_size - This option shortens all directory names though, including the current directory.

well, here is a question then, can I make it do what I want to do. Presumable I have all the code.

Changed the code, so what is the process here, you want me to fork the project and then make a pull request? I assume direct changes are not allowed?

Here are some changes I have made to support the feature I'm requesting. I want to do a pull request, but I think people may not like how I configure my feature.
https://github.com/jceaser/powerline-shell/commit/3bc516f64d05c0a8330b8ce66e860470859237e6
The issue I want to ask about is my use of "-1" to indicate that the "max size" of the current directory should be all chars. "0" will effectively strip hide the current directory, where any positive number will result in that many chars being displayed.
I could have just required users to put in 255 or some very large number to mean "full name". What does anyone here thing?

Between using -1 and 255 - I prefer your choice of -1. It's clearer that it is a special flag. You could also allow the option to be a string in that case, like it could be "last_max_dir_size": "full" or something.
I lean more toward keeping things simple and just introducing an option that is shorten_last_dir that indicates whether max_dir_size should apply to the last dir or not. Had you considered that and if so, what were you thoughts on it?

got it, will rework

ok, updated to : https://github.com/jceaser/powerline-shell/commit/c599e7c34d8f54911dacbdbeb8a1cd445a167819
In this change, you can provide the following:

'all','full' for displaying the entire current working directory
'none','empty' for no current working directory (only path)
'one' for only the first letter of the current working directory
a number for the length of the current working directory
if no value is provided then the max_dir_size is used as before

if no comments I'll create a pull request.
(how does unit testing work on this project)


Typeahead Enhancement: messaging for when there are no matches

It would be nice if there was a way to specify a message to display when there are no matches. For example: "There are no cities matching 'Metropolis'. Please check for spelling errors."

+1

+1

+1

+1

See #2792.

The functionality will look like this:
<input typeahead-no-results="noResults">
No Results found


installation with Ollama

hi
do you think it is possible to install the model under Ollama
Regards

I think this might require a writeup of some part of the code because as far as I understand, the website is directly interacting with the Together API. The Together API is OpenAI compatible and so is Ollama. Maybe you can try to change API calls to the ollama openai endpoint.


Add SGEMM example

The purpose of this demo is as follows.

An example of running .cu file from CuPy
An example of using 2D grid and block
An example with optimization parameters (e.g. DIM_X) dynamically changed from Python code.

Would you add a test for this example?
https://github.com/chainer/chainer-test/blob/master/test_cupy_example.sh

Perfect! LGTM!


Date picker: Time information on date ranges can be lost

Describe the bug (actual behavior)
The time component of the start date can be replaced by the end date's time component and vice versa. Once this occurs that information is lost and all future selections will keep the changed time.
Expected behavior
The start date maintains its time component unless specifically changed, and the end date maintains its time component unless specifically changed.
Reproduction
Link to a minimal repro: https://codesandbox.io/s/blissful-euclid-eoyvqq?file=/src/App.tsx
Steps to reproduce end date time loss

With the date picker in "start date selection" mode, click on a date on or after the selected end date
Observe that the selected end date's time component has been replaced with the start date's time component

Steps to reproduce start date time loss

With the date picker in "end date selection" mode, click on a date before the selected start date
Observe that the selected start date's time component has been replaced with the end date's time component

Additional information
The end date time information is lost on line 403 with setSelectedEndDay(newStartDate) and the start date time information is lost on line 431 with setSelectedStartDay(newEndDate).
The component also does not handle cases in which the end date's time is before the start date's time (ex: https://codesandbox.io/s/nifty-field-ofs3tz?file=/src/App.tsx)

What is the use case for preserving time? It is a date picker, so I expect all times to be irrelevant and always be reset to midnight.

The component also does not handle cases in which the end date's time is before the start date's time

We support disabling certain dates using the isDateDisabled prop. Maybe you can disable all dates before the start-date.

With that said, I would actually recommend using two separate date pickers for the "Start" and "End" dates. We have had multiple reports that the date range picker feels confusing to use, so we might remove it in the future.
You can find an example of separate date pickers in our Table filters. https://itwin.github.io/iTwinUI/react/?path=/story/core-table--filters

The use case is our date picker selects the whole range of time, so the start date is at midnight and the end date is 23:59. Since it is a date picker that takes Date objects as parameters, I expected it to honor the other properties and only change the date aspect of the objects.
It would be nice if it could correctly only change the date aspect, but if not then having the documentation mention that the time aspect is not reliable would be enough.

That's not a use case we have right now. It was just one that I observed could occur from the way the source code is written.

Thanks for pointing this out, we will have to revisit which approach we want to use and see what our users think.

Could you elaborate a little more on the use case, perhaps with an example? I'd expect the application code to only use the date portion of the dates returned by DatePicker. Does it require a lot of extra code for you to discard the time information?
Lets also look at it from the perspective of the end-user. How would they, when operating the date-picker, know what the time for the "End" date is? All they see is a date, so it makes sense that the time portion is not relevant.
We can improve the documentation for sure, as none of this is clear right now.

In my case, I can make it reliable by setting the start date's time to midnight and the end date's time to end-of-day before returning the values. The end user selects the date range of records they wish to see, so they expect it to be selecting everything from the beginning of the start day to the end of the end day.
This only stood out as a bug since it was undocumented and only occurs under certain situations, leading to an unexpected behavior that seemed intermittent.