Big refactoring around cutter API

Not ready to merge yet!
But you may start review with examples in (updated) docs (starting with overview).
Many changes around piecutter's API.

Keeping working at it... Check [doc about generating directories] (http://piecutter.readthedocs.org/en/cutter-api-reloaded/quickstart.html#write-generated-files-to-disk).

I tried the documentation and I have some remarks:

As for json.dump and json.dumps I think we should have render and renders()
In the quickstart we should pass alternative writer to piecutter.Cutter() rather than modifying the underlying object.

I would also use the word engine rather than render and not generate a callable but a real engine:
>>> import tempfile
>>> output_directory = tempfile.mktempd()
>>> renderer = piecutter.Cutter(writer=piecutter.FileWriter(target=output_directory,
                                engine=piecutter.Jinja2Engine(),
                                loader=piecutter.FileDirectory())
>>> renderer.render('/home/git/cookiecutter-pypackage', {"name": "diecutter"})

As for json.dump and json.dumps I think we should have render and renders()

Do you mean renders() would be a shortcut for some render(writer=TextWriter())?

In the quickstart we should pass alternative writer to piecutter.Cutter() rather than modifying the underlying object.

Ok.

I would also use the word engine rather than render and not generate a callable but a real engine:

At the moment, cutters and engines are not the same! They have different goals and different API:

cutters are high-level. Cutters primarily expect location (i.e. "file://...") as input. They support raw text, file objects or template objects for convenience. Cutters support directories (because they manage loaders).
engines are low-level. Engines primarily expect template object as input. They support raw text and file objects for convenience. Engines support only files (because they don't know about loaders).

I first tried to make Cutter and Engine use the same API, but it introduces complexity and confusion with loaders. Making them distinct simplified implementation of each.

In the quickstart we should pass alternative writer to piecutter.Cutter() rather than modifying the underlying object.

Done.

While rendering dynamic directories (i.e. using special .directory-tree template) we can include files and directories from third-party locations. See http://piecutter.readthedocs.io/en/cutter-api-reloaded/dynamic-trees.html#include-locations
Sample use case: in some "Django project" template, include "setup.py" template located in third-party "Python project" template.

Looks like refactored API is getting better.
What's missing for this branch to be merged in master?

[ ] Presence or absence of trailing slash in directory location affects "path" attribute of results. It is an existing feature in diecutter. See http://diecutter.readthedocs.io/en/0.7.1/client/directories.html#get and http://diecutter.readthedocs.io/en/0.7.1/client/directories.html#trailing-slash
[ ] Python API review: naming, docstrings, render() VS callable...
[ ] Github loader.

Other ideas?
Once this pull-request is merged, we could work on further improvements:

Python 3 support
writers to generate archives such as ZIP or TAR.GZ
user-friendly documentation: more examples and stories?
diecutter's upgrade at last!

Looks good


version 19.02

@don-vip, we check for UnsupportedEncodingException and then do an explicit conversion:
https://github.com/yarl/pattypan/pull/99/commits/f9f315383127deb50848c5208174b0551132be8a


fix PrismaClientKnownRequestError type

I didn't open an issue (though tried to raise the point on Slack), but I figure this PR is self-explanatory.
The meta property is currently typed as object but this seems incorrect since the docs outline many instances where the value of meta is not {} (for example, here). Thus, Record<string, unknown> or a more specific type (which is currently undocumented) seems more appropriate, that way things such as error.meta.target can be used without a type-error.
If I'm totally wrong, this can of course be closed.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Doesn't work on https://codeforces.ml

I can login on https://codeforces.com and https://codeforc.es but failed on https://codeforces.ml

Looks I can not even resolve codeforces.ml. Is this mirror site really alive?

Looks I can not even resolve codeforces.ml. Is this mirror site really alive?


feat(@angular-devkit/build-webpack-nodejs): add package

Adds with build-webpack-nodejs
This has 2 Targets
Binary

Runs Build command then forks the process onto the output file.
Can pass in extra args
Auto restarts the process after each build.
Cleans up any Child processes after each run.

Build

Uses webpack to bundle the app into a single file
Configured to be fast in development
Can bundle together node_modules for a production deployment
Can be configured to exclude non bundlable modules
Has a watch mode for dev.
Verys similar config to the Browser target
Resolves paths from the input tsconfig

Is most of the groundwork for: https://github.com/angular/devkit/issues/595

Not really sure how to fix this
Running license validation...
    Testing 1293 packages.


Logs

Please, create new branch from up-to-date master and push the changes from this new branch.
We have conflicts because of different histories in master and your branch (because of the squash) :)


hi man, requests-html isn't work for this website

http://www.szse.cn/main/rule/bsywgz/index.shtml
see the right list '本所业务规则'
r.html.find('.tdline2')
and the result is empty
however, i use bs4 is ok
so, i don't know what's wrong...

bs4 code:
    res = spider.get_list(url='http://www.szse.cn/main/rule/bsywgz/index.shtml')
    res.encoding = 'gb2312'
    soup = BeautifulSoup(res.text, "html.parser")
    list = soup.select('.tdline2')

Hi @kuange. It seems this site get's the elements you are looking for with Javascript, so you will need to use the HTMLSession.html.render function to get that data loaded.
Here's code I used to test:
>>> from requests_html import HTMLSession
>>> session = HTMLSession()
>>> r = session.get('http://www.szse.cn/main/rule/bsywgz/index.shtml')
>>> len(r.html.find('.tdline2'))
0
>>> r.html.render()
>>> len(r.html.find('.tdline2'))
30

@SN9NV think u, let me try


Using hiera data model in Puppet5 modules

Puppet5 is doing away with params.pp. Yay!
This has been replaced with a hiera.yaml file in the module's root directory and a data directory containing the Hiera datastore.
How do you tell rspec-puppet to use this Hiera datastore?
I've created a new Puppet5 module here where I've tried to:

set heira config in spec_helper.rb (error log)

c.hiera_config = "hiera.yaml"

set up hiera in a spec test (error log):

require 'spec_helper'

describe 'puppet5' do
  on_supported_os.each do |os, facts|
    context "on #{os}" do
      let(:facts) do
        facts
      end
      # Initialise hiera
      let(:hiera_config) { 'hiera.yaml' }
      hiera = Hiera.new(:config => 'hiera.yaml')

      it { is_expected.to compile.with_all_deps }
      it { should contain_class('puppet5::oscheck') }

      context "with no paramters" do
        it { should contain_package('puppet-agent').with(
          'ensure' => hiera.lookup('ensure_package', nil, nil),
          'name'   => hirea.lookup('package', nil, nil)
        ) }
      end

    end
  end
end

I suspect if I got the path correct it ought to just work, in which case we just need the documentation updated for Puppet5.

Thanks for the report! I haven't looked into the details of how the hiera data in modules is implemented in Puppet 5, so I'm not sure if I need to make any changes yet to support it.
Much :heart: for providing an example module, I'll do a bit of experimentation tonight and let you know :)

Well, that's fun. So, rspec-puppet is using the in module hiera data just fine. But accessing that data from in your spec is not so easy. The Hiera library can not handle the new config file (bails out if the version >= 4), so it's not as easy as using Hiera.lookup in rubyland anymore and involves poking deep into Puppet::Pops::Lookup which requires access to the compiler scope which I'm not currently exposing to the example group... anyway, it's possible but it's not a quick fix I'm afraid and will probably need to wait until the next minor release given the scope of the changes.
In the meantime, you should be able to get going by specifying the expected values
diff --git a/spec/classes/puppet_spec.rb b/spec/classes/puppet_spec.rb
index c5b9322..0dee158 100644
--- a/spec/classes/puppet_spec.rb
+++ b/spec/classes/puppet_spec.rb
@@ -1,25 +1,36 @@
 require 'spec_helper'

 describe 'puppet5' do
+  package_details = {
+    'redhat-6-x86_64' => {
+      :ensure => '5.0.0-1.el6',
+    },
+    'redhat-7-x86_64' => {
+      :ensure => '5.0.0-1.el7',
+    },
+    'centos-6-x86_64' => {
+      :ensure => '5.0.0-1.el6',
+    },
+    'centos-7-x86_64' => {
+      :ensure => '5.0.0-1.el7',
+    },
+  }
+
   on_supported_os.each do |os, facts|
     context "on #{os}" do
       let(:facts) do
         facts
       end
-      # Initialise hiera
-      let(:hiera_config) { 'hiera.yaml' }
-      hiera = Hiera.new(:config => 'hiera.yaml')

       it { is_expected.to compile.with_all_deps }
       it { should contain_class('puppet5::oscheck') }

       context "with no paramters" do
         it { should contain_package('puppet-agent').with(
-          'ensure' => hiera.lookup('ensure_package', nil, nil),
-          'name'   => hirea.lookup('package', nil, nil)
+          'ensure' => package_details[os][:ensure],
         ) }
       end

     end
   end
-end
\ No newline at end of file
+end

I'll use your recommended solution as my tests with older hiera.yaml configs didn't work.
I've branched my module for testing hiera lookups with rspec_puppet
Using a Hiera 3.3. config file in spec/hiera.yaml seems to load up hiera but gives a lot of errors
1) puppet5 on centos-6-x86_64 with no paramters
     Failure/Error: 'ensure' => hiera.lookup('ensure_package', nil, nil),

     NoMethodError:
       undefined method `lookup' for #<Hiera:0x0000000315dff8>

Similar hiera5 error when loaded in spec tests:
Failure/Error: hiera = Hiera.new(config: 'spec/fixtures/hiera.yaml')

RuntimeError:
  v4 hiera.yaml is only to be used inside an environment or a module and cannot be given to the global hiera

Odd it says v4 even though it is v5.
(hiera 3.4.1 gem loaded)

I've found that due to the nature of hiera layer 3 data sources being the end-all-be-all of data sources, that any hiera_config location values you pass to rspec wind up getting overridden by the modules own hiera.yaml.
Puppet 5 modules actually don't require a hiera fixture at all, which is quite nice, but this has caused problems when the actual data sources are exectable in a test environment (for example, eyaml data sources https://github.com/voxpupuli/hiera-eyaml/issues/253)

I am having trouble with this also, so posting here partly to get notifications, and partly to raise another issue.
When doing away with params.pp, we are encouraged not to include the top level class of each module. The expectation (as I understand it) is that we pull in data from a top level module class in to the more specific classes by using global scoped variables, i.e.:
class module (
  String $data,
) {
  contains module::specific
}

class module::specific {
  notify { $::module::data: }
}

When writing a spec for module::specific, I have seem to specify module::data in node_params, which is quite tedious, as I have to do this for every class other than the top level class.
Have I done something wrong here, or, is this intended, or in need of a fix of some sort?

I'd love to avoid moving all my hiera data into my specs.  Is that still the only workaround?

You shouldn't have to move all the data into specs, it works just fine if you have the hiera.yaml file defined in the module root.
You just have to test the module in isolation, instead if treating it as if you are providing it data from layer 1 or layer 2.
(All data for the module must be in the module).
This should not be confused with facts. In puppet 5 facts and hiera data are not the same thing.

@LongLiveCHIEF I should have specified that in order for me to verify certain values, I must move them from hiera to the spec.
Otherwise, when I put this in my spec:
# this loads the hiera.yaml from the module's root
hiera = Hiera.new( :config => 'hiera.yaml' )

# normally, I'd then be able to fetch values from hiera like this:
api_version = hiera.lookup("api_version", nil, facts)

I get this error:
v5 hiera.yaml is only to be used inside an environment or a module and cannot be given to the global hiera

I've been wondering if testing specific values isn't effective (code smell? really...what's the point?), so it's not really a loss.

The important thing to test is presence of resources especially when certain conditions affect which resources are present.

Thoughts?

You're also using a lookup function that is deprecated.
Hiera 5 is part of Puppet 5. They're no longer separate things, so you don't need to do a hiera lookup for the data in the module any more.
So:

You don't need Hiera.new() to load the hiera file/data. This is now a part of Puppet APL and comes in as module scoped data/variables
hiera.lookup should just be lookup()
Looking up data needs to refer to the correct scope chain for Puppet/Hiera 5, so api_version is bad, instead use modulename::api_version.
There are 2 ways to include this data in the module:

make a class parameter for api_version, then in your modules data sources provide a resolution for mymodule::api_version. From there on out, everywhere in your module (even subclasses), all you need to do to get the value of the data for this is refer to $mymodule::api_version. No lookup or hiera functions required. Hiera data is within scope
if you don't make a class parameter for api_version, then in  your manifest use $myvar = lookup('mymodule::api_version').  The hiera.yaml is located at the root of your module, and is loaded automatically in Puppet 5 and merges into APL

Some examples of modules I maintain that show you how this works:

https://github.com/voxpupuli/puppet-gitlab
https://github.com/voxpupuli/puppet-prometheus

If you want more help, join the Slack Puppet Community and check out the #testing channel.

For anyone hitting this in 2024, following this article worked for me.  I didn't have to change the spec helper, the only steps were to:

Add the new hierarchy in hiera-rspec.yaml
Add the desired data in the new data/rspec.yaml
Load this hiera config in the desired tests with let(:hiera_config) { 'hiera-rspec.yaml' }

@m0dular just to clarify Puppet forked this repo and it is maintained here, im not sure if the approach to hiera documented has everything you need https://github.com/puppetlabs/rspec-puppet/?tab=readme-ov-file#hiera-integration


⚠ GitLab Server has degraded performance

In 786ae71, GitLab Server (https://gitlab01.its-telekom.eu) experienced degraded performance:

HTTP code: 200
Response time: 11819 ms

Resolved: GitLab Server performance has improved in 47ff0cd.


Automated cherry pick of #10495

Cherry pick of #10495 on release-7.0.
/cc  @AshishDhama
NONE

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.

Pull Request successfully merged
SHA: eb3b81f03c923b51ee05952d6f784ccb286dd3c8


[AutoPR monitor/resource-manager] Bump azure-arm-monitor NPM package version to 3.0.0

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/3469

(message created by the CI based on PR content)

NodeJS


Fixed ClassNotFoundException when com.codahale.metrics.MetricRegistry is not in the classpath

ClassNotFoundException is thrown during DataSource#getConnection() when io.dropwizard.metrics:metrics-core  is not available in the class path.

@gavlyukovskiy Thanks for the contribution. 🥇

@gavlyukovskiy at this point wouldn't it be safer to check for the fqdn? com.codahale.metrics.MetricRegistry and also remove the import?

I've tried this first, but then I get an issue because micrometer returns not MeterRegistry, but subclass - CompositeMeterRegistry.
In general I'd like to do if (ClassUtils.isPresent("io.micrometer.core.instrument.MeterRegistry") && MeterRegistry.class.isAssignableFrom(metricRegistry.getClass())) to handle subclasses, but simply forgot to do so.
If @brettwooldridge is ok with this I'm happy to do a new pull request.

BTW you can not remove the import because you have to do a cast.

@gavlyukovskiy HikariCP v2.7.2 containing this fix has been released.


Adds the ability for electrification to check if the entity is powered by an APC

About the PR
Adds the ability for electrification to check if the entity it's checking is powered by an APC. If so, and if it's enabled, it will electrocute the user as if RequiresPower was set to false.
Changelog

:cl:

tweak: Entities that are powered by APCs can now be designed so that they can electrocute you. Shocking!

is this being added for something specific or just thought the feature would be nice to have in the future?

is this being added for something specific or just thought the feature would be nice to have in the future?

wires 👁

👁

having no way to do an electrification check via checking APC power really hindered the ability for a power wire to do a shock without disabling requiresPower, which isn't the correct way to go about it imo, so, i just
implemented it
wires soon™


[Doc]Update CONTRIBUTING.md

Description
This project was forked from a template and needs its best practices files (readme.md codeofconduct.md, etc etc ) filled out. Here you can find a small description of what should contain in each of the best practices files.
Update the CONTRIBUTING.md file in the root
Acceptance Criteria

[x] It should contain ways in which the community can contribute to the project (use PenPot demo as an inspiration)

[ ] Contributing with content/ new tips

[ ] Contributing with code

[ ] Contributing to testing

[ ] Reporting bugs

Updated CONTRIBUTING.md (PR #455)


Multiple Updates

Fixed issue with get_user_model()
Added support for Django 1.10

@edx/ecommerce please review

👍


How to confirm that everything good after OSD reweight to 0.0 and purge after

Hi,
Thank you for the effort to create this tool, hopefully this will help me with my issue to somehow lower the load on my osds during add/remove osd.
Currently I'm testing the
pgremapper cancel-backfill --yes
option as written in the documentation.
I would like to have 2 questions:
Q1 regarding osd removal:
What I've done in test env:

Set the flags: ceph osd set nobackfill;ceph osd set norebalance
Reweight all the osds that I want to remove: for i in {36..43};do ceph osd reweight $i 0.0;done
Run your tool and wait couple of minutes to get back the prompt: pgremapper cancel-backfill --yes
Unset flags: ceph osd unset norebalance;ceph osd unset nobackfill
When cluster health ok, I removed the osds: for num in {36..43}; do ceph osd out osd.$num;systemctl disable ceph-osd@$num;systemctl purge $num --yes-i-really-mean-it;umount /var/lib/ceph/osd/ceph-$num;done

In theory now I'm missing a lot of chunks so how I know that all the data actually recovered/regenerated somewhere else in the cluster?
Q2 regarding the process:
I see in the documentation this needs to be done before unset the flags. Is it possible to do if the recovery is progress already? Let's say I'm experiencing issue between recovery so I want to somehow limit.
Also this question vice-versa, if the remapping too slow, is it possible to cancel and make it faster back like original? Let's say I'd increase on all osds with the injectargs command the osd_max_backfill and the osd_recovery_max_op.

Reweight all the osds that I want to remove: for i in {36..43};do ceph osd reweight $i 0.0;done

Note that due to Ceph limitations, reweighting to 0 will prevent pgremapper from being able to do anything. We usually reweight to 0.0001 or similar.

 When you reweighted your OSDs, Ceph scheduled backfill to move data off of the OSDs. Normally, you would wait for that backfill to completed, verify that the OSDs that you want to remove are empty of PGs via ceph osd df tree or similar, and only then start to tear those OSDs down. As an extra safety step, I like to take the OSD down (systemctl stop ceph-osd@$num) and then make sure via ceph -s that all PGs are still healthy. I would also use ceph osd destroy $num before purge, and that should by default have some fairly conservative safety checks.
cancel-backfill will stop this process from working, by itself, because you're stopping the backfill that's needed to empty these OSDs. You would then need to use undo-upmaps --target against those OSDs that you want to remove until they're empty.

Is it possible to do if the recovery is progress already?

Yes, it can be run at any time. Setting the flags just allows you to remain in control the whole time, reducing any wasted work that you might want to actually cancel using pgremapper. It is possible that pgremapper can occasionally fail if backfill finishes or gets scheduled why the tool runs, though.

if the remapping too slow, is it possible to cancel and make it faster back like original?

I'm not sure what you mean by this - can you elaborate?

Let's say I'd increase on all osds with the injectargs command the osd_max_backfill and the osd_recovery_max_op

injectargs should almost never be used as of Nautilus - ceph's centralized conf is almost always what you want to use instead.

Reweight all the osds that I want to remove: for i in {36..43};do ceph osd reweight $i 0.0;done

Note that due to Ceph limitations, reweighting to 0 will prevent pgremapper from being able to do anything. We usually reweight to 0.0001 or similar.

I see, so what would be the proper steps if I want to remove osds (or even a complete host) with using the cancel-backfill pgremapper feature to prevent overloading osds on the same nodes or other nodes same classed devices?

I set the backfill and norebalance flags
reweight to 0.0001
run the cancel-backfill
Unset the flags
Wait until pg balancer doesn't find more optimization and the ceph osd df tree shows 0 pg and all pgs are healthy
Stop and disable the osd
Let's destroy first
Then Purge

Moving forward when I add back the osds, the steps would be as written earlier in my first post, am I correct?

set the backfill and norebalance flags
run the cancel-backfill
Unset the flags

Wait until pg balancer doesn't find more optimization pgs are healthy

Done

Q1 regarding osd removal:

You're missing a pile of steps here, and this has more to do with Ceph knowledge than pgremapper itself. When you reweighted your OSDs, Ceph scheduled backfill to move data off of the OSDs. Normally, you would wait for that backfill to completed, verify that the OSDs that you want to remove are empty of PGs via ceph osd df tree or similar, and only then start to tear those OSDs down. As an extra safety step, I like to take the OSD down (systemctl stop ceph-osd@$num) and then make sure via ceph -s that all PGs are still healthy. I would also use ceph osd destroy $num before purge, and that should by default have some fairly conservative safety checks.
cancel-backfill will stop this process from working, by itself, because you're stopping the backfill that's needed to empty these OSDs. You would then need to use undo-upmaps --target against those OSDs that you want to remove until they're empty.

May I have an example for the undo-upmaps which reflects my use-case maybe?

Is it possible to do if the recovery is progress already?

Yes, it can be run at any time. Setting the flags just allows you to remain in control the whole time, reducing any wasted work that you might want to actually cancel using pgremapper. It is possible that pgremapper can occasionally fail if backfill finishes or gets scheduled why the tool runs, though.

If this fails happen just need to rerun the pgremapper command again?

if the remapping too slow, is it possible to cancel and make it faster back like original?

I'm not sure what you mean by this - can you elaborate?

Sure, so let's say something goes wrong with the pgremapper tool, what would be the backup steps? Or let's say I want to speed up the process which is taken care at this stage by the balancer to optimize the pg allocation? Are these possible?

Let's say I'd increase on all osds with the injectargs command the osd_max_backfill and the osd_recovery_max_op

injectargs should almost never be used as of Nautilus - ceph's centralized conf is almost always what you want to use instead.

We are running on octopus (not cephadm). I want to slowly control the backfill, so first I increase the backfill and recovery ops on the newly added osds let's say to 4 but all the rest stays 1. When the process started to slow down I increase the rest of them to 2 or increase the newly added even further. I think with config db more work to control osd by osd.

OK, if you use the balancer in those steps then you should be OK. undo-upmaps can be used to have more advanced control over data movement, but keeping it simple with the balancer would probably be best. The balancer can still overload OSDs in some circumstances, and you can control how much work it schedules via target_max_misplaced_ratio.

or should I run like this instead? pgremapper undo-upmaps ...

undo-upmaps is an alternative to relying on the balancer, not an alternative to cancel-backfill.

the issue is with the 0.0001 approach is that always remain some pg on the osds. Or simply osd out and go with cancel backfill approach?

Setting an OSD out is equivalent to setting its weight to 0; that can be done at the very end, when there is little backfill remaining.

Moving forward when I add back the osds, the steps would be as written earlier in my first post, am I correct?

Yes

May I have an example for the undo-upmaps which reflects my use-case maybe?

I'll try to keep this high-level; this tooling is very much advanced user territory and while I don't know of cases where it can do dangerous things, without understanding what it's doing at a deep level it could make your life harder, not easier.
After you reweight OSDs to 0.0001, Ceph will reassign the PGs associated with those OSDs to other OSDs. Running cancel-backfill will create upmap table entries that undoes that reassignment. undo-upmaps can then be used to remove those upmap table entries in a controlled fashion, allowing you to control how much backfill gets scheduled at once better than you can with the balancer.
So, for example:
pgremapper undo-upmaps bucket:osd-2s15 --max-backfill-reservations 1 --max-source-backfills --target --verbose --yes
Running that in a loop should cause one backfill to be scheduled per source OSD and target OSD at a time until all upmaps targeting OSDs in the host osd-2s15 are undone.

If this fails happen just need to rerun the pgremapper command again?

Yeah

Sure, so let's say something goes wrong with the pgremapper tool, what would be the backup steps? Or let's say I want to speed up the process which is taken care at this stage by the balancer to optimize the pg allocation? Are these possible?

This is out of scope of pgremapper. There are standard ways of affecting the speed that backfill operates at via balancer and backfill settings.

When the process started to slow down I increase the rest of them to 2 or increase the newly added even further. I think with config db more work to control osd by osd.

With the config DB, you can set these settings at a host level (though unfortunately that might be broken in Octopus, not sure). The issue with injectargs is that the config DB can no longer control those settings in the OSDs; anything set by injectargs will remain until the OSD reboots and takes precedence over config DB settings. You can remove these overrides that you have injected so that the config values take effect again, you just need to remember to do this.


[RELEASE-v1.6] [BACKPORT] Run queue proxy with restricted profile

similar to https://github.com/openshift-knative/serving/commit/9a22e0e1924fc088d27d80b5b66524876a6b93ff

/assign @nak3

/cherry-pick release-v1.7

/lgtm

/test 49-e2e-aws-ocp-49


remove flipped variants of binary operator functions

https://github.com/sanctuary-js/sanctuary/issues/438#issuecomment-371809619

I'm slightly concerned that we're going to end up in the state we were in prior to on #388.  Perhaps if there's an entry in the wiki it won't be an problem.

Based on the comment you linked it seems you will fix the signatures in a later commit, but I'll mention it in case you wanted to do it in this commit and forgot.

Thanks, Aldwin. It's best not to assume everything I do is intentional. :)
In this case, I think we should stick with the _ -> (_ -> _) types until we update sanctuary-def in an upcoming pull request (at which point all functions will adopt this stricter behaviour). S.lt (0, 1) is currently a type error, and it will be a type error once simple currying lands. I'd like to avoid a window in which it is valid (evaluating to false).

I'm slightly concerned that we're going to end up in the state we were in prior to on #388.

Could you elaborate, Gabe? Your memory of the discussion preceding that pull request is likely better than mine. What are you concerned that users will incorrectly assume if we merge this pull request?

I'm referring to the issues/comments linked to in https://github.com/sanctuary-js/sanctuary/pull/388#pullrequestreview-35532373. In the past, there has been a lot of confusion around argument order for binary operators.
Although their behavior is documented, I suspect the first time a new user reaches for S.lt they will assume the wrong argument order. Perhaps calling out the non-commutative "operators" individually or putting them in their own subsection would help.

I suspect the first time a new user reaches for S.lt they will assume the wrong argument order.

Even though S.lt (x, y) will not be supported, Gabe? Feedback from Ramda and Sanctuary users gives me the impression is that the majority assume S.lt (0) to define the less than zero function.


"Please fill out this field."

If the underlying textarea has the "required" attribute, it's impossible to submit the form in recent Chrome versions that do client-side form validation. The browser attempts to add a "Please fill out this field" balloon to the textarea, but fails, because it's not visible.
I know it's possible to work around this by telling Chrome not to validate the form; I have other workarounds I can use. The issue remains, however.

Duplicate of https://github.com/NextStepWebs/simplemde-markdown-editor/issues/324


Acro stab

@kd0aij I've rebased your PR against master.

@LorenzMeier Thanks. I'll do a QAV250 test flight as soon as possible.

Closing in favour of the Rattitude patch including this work.


Anki

Anki
Description
How to use Anki to learn new development skills, or brush up on old skills. What is your routine? What benefits have you seen from using Anki?
Potential guest(s)
@trevordmiller
Info
If you haven't heard of Web of Tomorrow before, it's a podcast all about the web, JavaScript, coding, design, and technology. For more information about being a guest, see this file. Note: we also have and enforce a Code of Conduct for the show.
If you've been listed as a potential guest above, please comment on this issue about whether you're interested in coming on to talk about the subject and when you are available to record.
If you're interested, I'll need a little information from you for the website. Episode planning happens on the GitHub repo issues. Please comment on this issue with the following information (if you'd prefer, you can DM this info to @adamCoder):
Your name (as you want it on the site)
An email address to share a Google Doc with you
Your twitter handle
Thanks!

Hey Adam,
Thanks for thinking of me! I’m pretty busy with other priorities currently so I’ll have to pass :) Hope all is well.
Trevor
www.trevordmiller.com http://www.trevordmiller.com/

On Jan 3, 2017, at 11:15 AM, Adam Harris<EMAIL_ADDRESS>wrote:
trevordmiller
Description
How to use Anki to learn new development skills, or brush up on old skills. What is your routine? What benefits have you seen from using Anki?
Potential guest(s)
@trevordmiller https://github.com/trevordmiller
Info
If you haven't heard of Web of Tomorrow before, it's a podcast all about the web, JavaScript, coding, design, and technology. For more information about being a guest, see this file x-msg://1/guests.md. Note: we also have and enforce a Code of Conduct for the show.
If you've been listed as a potential guest above, please comment on this issue about whether you're interested in coming on to talk about the subject and when you are available to record.
If you're interested, I'll need a little information from you for the website. Episode planning happens on the GitHub repo issues x-msg://1/issues. Please comment on this issue with the following information (if you'd prefer, you can DM this info to @adamCoder https://twitter.com/adamcoder):
Your name (as you want it on the site)
An email address to share a Google Doc with you
Your twitter handle
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/aharris88/weboftomorrowpodcast.com/issues/16, or mute the thread https://github.com/notifications/unsubscribe-auth/AFPkHTZ7StfVMPO4tFplcEsy6LHWabU2ks5rOpAxgaJpZM4LZ4Q7.

No problem. Let me know if you ever have some time and are interested. :)


Template relative abundance stacked bar chart

We need to have this done so that this figure can have appropriate mobile layout. As of now, text is hard coded in svg. All of the text components are available in the siteText.yml: https://github.com/USGS-VIZLAB/great-lakes-microplastics/blob/master/data/siteText.yaml

Ok, so it sounds like just the desktop version needs templating.

@mwernimont I think you or @jiwalker-usgs need to do this one. I don't have the skillz

I don't understand this issue. Could @eread-usgs or @jread-usgs or @jiwalker-usgs add some details or close it?


Express listens on IPv6 by default

ExpressJS recently began acting weirdly by defaulting to IPv6 (tcp6) on CentOS 7.x. I'm using PM2 to run Node, and all firewalls were disabled.
Following are the results of the ss -tnlp and the netstat -tnlp commands when only app.listen(3000) is used:

Setting the host individually to app.listen(3000, "<IP_ADDRESS>") and app.listen(3000, "<IP_ADDRESS>") forces the app to use IPv4 however it refuses connections, as can be seen from the below screenshot:

Following are the results when executing netstat -tnlp after forcing IPv4:

NodeJS version: v6.12.2
Express version: 4.16.2
NPM version: 5.6.0
PM2 version: 2.9.1

I'm seeing the same behavior on Debian Stretch running inside virtualbox. My configuration points to an aliased ip in loopback, <IP_ADDRESS>. I do have this lo:0 interface. I also disabled ipv6 in sysctl.conf but it's weird it's able to create a listener in ipv6.


Java version incorrectly adds CR after processing instructions

This is for the Java version of Nokogiri. I'm running with JRuby <IP_ADDRESS>.
When serializing XML containing a processing instruction, Java Nokogiri adds a carriage return after each PI, regardless of whether or not one already is present.
Sample code is far below. The output of the code is as follows:
<?xml version="1.0" encoding="UTF-8"?>
<r>
  <s>Pr<?processing-instruction data here?>ocessing instruction.</s>
  <s>Pr<?processing-instruction data here?>
  ocessing instruction.</s>
  <s>Pr<?processing-instruction data here?>

  ocessing instruction.</s>
</r>

--------
  Parser erroneously adds a carriage return
    after each processing instruction:
--------

<?xml version="1.0" encoding="UTF-8"?>
<r>
  <s>Pr<?processing-instruction data here?>
ocessing instruction.</s>
  <s>Pr<?processing-instruction data here?>

  ocessing instruction.</s>
  <s>Pr<?processing-instruction data here?>

  ocessing instruction.</s>
</r>

Here is the code
#!/usr/bin/env ruby -w
require 'nokogiri'

XML_TEXT = <<END
<?xml version="1.0" encoding="UTF-8"?>
<r>
  <s>Pr<?processing-instruction data here?>ocessing instruction.</s>
  <s>Pr<?processing-instruction data here?>
  ocessing instruction.</s>
  <s>Pr<?processing-instruction data here?>

  ocessing instruction.</s>
</r>
END

class TestAddCrAfterPi
  def initialize
    @content = XML_TEXT
  end

  def process
    @doc = Nokogiri::XML(@content)
    STDERR.puts @doc.errors if @doc.errors
    @content = @doc.to_s
    self
  end

  def changed?
    @content != XML_TEXT
  end

  def to_s
    @content
  end
end

puts
puts XML_TEXT
xt = TestAddCrAfterPi.new.process
if xt.changed?
  puts
  puts '--------'
  puts '  Parser erroneously adds a carriage return'
  puts '    after each processing instruction:'
  puts '--------'
  puts
  puts xt
else
  puts 'Parser correctly searialized document'
end
puts

Hi @rcrews, apologies for not responding to this before now.
What you're describing looks to me like it's behavior that Nokogiri inherits from Xerces, and so there's not much we can easily do about it. You may want to ask about this behavior in a Xerces-specific forum. I googled a bit and was not able to find anything related in either forums or in Xerces docs.
I'm sorry I can't be more help here. :neutral_face:

Hi.
There is one remaining question for me on this.
If i use the canonicalize method, this issue isn't there. Why? Maybe the answer could lead to a way around it. Kind of a last hope :)


[Event Request] COD6661 Return Receipt Line - OnAfterDescriptionSalesLineInsert

Hi, could you please add the Event OnAfterDescriptionSalesLineInsert in TAB6661 simular to the Event in 110.
General also as code modifications the Event Publisher in TAB111 and TAB6661 should be held in parallel. That's like do a change on a sales order, but forgot the return order!

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Error installing clang in windows

Describe the bug
 mise use -g clang
mise ERROR Failed to install<EMAIL_ADDRESS>mise ERROR runtime error: attempt to yield across metamethod/C-call boundary
stack traceback:
        [C]: in ?
        [C]: in function 'yield'
        [string "?"]:16: in function 'get'
        ...rs\zxd\AppData\Local\mise\plugins\clang\lib/util.lua:7: in function 'fetchVersions'
        ...rs\zxd\AppData\Local\mise\plugins\clang\lib/util.lua:23: in main chunk
        [C]: in function 'require'
        ...AppData\Local\mise\plugins\clang\hooks\available.lua:1: in main chunk
mise ERROR Run with --verbose or MISE_VERBOSE=1 for more information

To Reproduce
mise use -g clang
Expected behavior
clang be installed
mise doctor output
version: 2024.11.7 windows-x64 (c1b0623 2024-11-11)
shims_on_path: yes

build_info:
  Target: x86_64-pc-windows-msvc
  Features: DEFAULT, NATIVE_TLS, OPENSSL
  Built: Mon, 11 Nov 2024 17:01:01 +0000
  Rust Version: rustc 1.82.0 (f6e511eec 2024-10-15)
  Profile: release

shell:
  (unknown)

dirs:
  data: ~\AppData\Local\mise
  config: ~\.config\mise
  cache: ~\AppData\Local\Temp\mise
  state: ~\.local\state\mise
  shims: ~\AppData\Local\mise\shims

config_files:
  ~\.config/mise/config.toml
  ~\mise.toml

backends:
  cargo
  core
  go
  npm
  pipx
  spm
  ubi
  vfox

plugins:

toolset:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
env_vars:
  (none)

settings:
  activate_aggressive = false
  all_compile = false
  always_keep_download = false
  always_keep_install = false
  asdf = false
  asdf_compat = false
  cache_prune_age = "30d"
  ci = false
  color = true
  debug = false
  disable_backends = ["asdf"]
  disable_default_registry = false
  disable_hints = []
  disable_tools = []
  experimental = true
  fetch_remote_versions_cache = "1h"
  fetch_remote_versions_timeout = "10s"
  go_default_packages_file = "~/.default-go-packages"
  go_download_mirror = "https://dl.google.com/go"
  go_repo = "https://github.com/golang/go"
  go_set_gopath = false
  go_set_goroot = true
  go_skip_checksum = false
  http_timeout = "30s"
  jobs = 4
  legacy_version_file = true
  legacy_version_file_disable_tools = []
  libgit2 = true
  lockfile = false
  log_level = "info"
  not_found_auto_install = true
  paranoid = false
  pin = false
  plugin_autoupdate_last_check_duration = "7d"
  quiet = false
  raw = false
  task_timings = false
  trace = false
  trusted_config_paths = []
  unix_default_file_shell_args = ["sh"]
  unix_default_inline_shell_args = [
      "sh",
      "-c",
  ]
  use_file_shell_for_executable_tasks = false
  use_versions_host = true
  verbose = false
  vfox = true
  windows_default_file_shell_args = [
      "cmd",
      "/c",
  ]
  windows_default_inline_shell_args = [
      "cmd",
      "/c",
  ]
  windows_executable_extensions = [
      "exe",
      "bat",
      "cmd",
      "com",
      "ps1",
      "vbs",
  ]
  yes = false

  [cargo]
  binstall = true

  [node]

  [npm]
  bun = false

  [pipx]
  uvx = false

  [python]
  default_packages_file = '~\.default-python-packages'
  pyenv_repo = "https://github.com/pyenv/pyenv.git"
  venv_auto_create = false
  venv_stdlib = false

  [ruby]
  default_packages_file = "~/.default-gems"
  ruby_build_repo = "https://github.com/rbenv/ruby-build.git"
  ruby_install = false
  ruby_install_repo = "https://github.com/postmodern/ruby-install.git"

  [status]
  missing_tools = "if_other_versions_installed"
  show_env = false
  show_tools = false
No warnings found
No problems found

Additional context
 mise use -g clang -verbose
DEBUG ARGS: D:\userData\software\mise\bin\mise.exe use -g clang -verbose
DEBUG config: C:\Users\zxd\mise.toml
DEBUG config: C:\Users\zxd\.config/mise/config.toml
DEBUG install_versions: clang@latest
INFO<EMAIL_ADDRESS>   installing
DEBUG [vfox:clang] pre_install
DEBUG Getting metadata for clang
DEBUG starting new connection: https://github.com/
DEBUG proxy(http://<IP_ADDRESS>:7890) intercepts 'https://github.com/'
Error:
   0: Failed to install<EMAIL_ADDRESS>   1: runtime error: attempt to yield across metamethod/C-call boundary
      stack traceback:
        [C]: in ?
        [C]: in function 'yield'
        [string "?"]:16: in function 'get'
        ...rs\zxd\AppData\Local\mise\plugins\clang\lib/util.lua:7: in function 'fetchVersions'
        ...rs\zxd\AppData\Local\mise\plugins\clang\lib/util.lua:23: in main chunk
        [C]: in function 'require'
        ...AppData\Local\mise\plugins\clang\hooks\available.lua:1: in main chunk

Location:
   src\backend\vfox.rs:69

Version:
   2024.11.7 windows-x64 (c1b0623 2024-11-11)

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

Same error, different language:
🍎 ❯ mise install --verbose ruby
DEBUG ARGS: /opt/homebrew/bin/mise install --verbose ruby
DEBUG config: ~/.config/mise/config.toml
DEBUG install_versions: ruby@latest
INFO<EMAIL_ADDRESS>    installing
DEBUG [vfox:ruby] pre_install
DEBUG Getting metadata for ruby
DEBUG starting new connection: https://github.com/
Error:
   0: failed to install<EMAIL_ADDRESS>   1: runtime error: attempt to yield across metamethod/C-call boundary
      stack traceback:
      	[C]: in ?
      	[C]: in function 'yield'
      	[string "?"]:16: in function 'get'
      	...rs/cyber/.local/share/mise/plugins/ruby/lib/util.lua:8: in function 'fetchManifest'
      	...rs/cyber/.local/share/mise/plugins/ruby/lib/util.lua:23: in main chunk
      	[C]: in function 'require'
      	...r/.local/share/mise/plugins/ruby/hooks/available.lua:1: in main chunk

Location:
   src/backend/vfox.rs:68

Version:
   2024.11.18 macos-arm64 (2024-11-19)

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

mise doctor output:
🍎 ❯ mise doctor
version: 2024.11.18 macos-arm64 (2024-11-19)
activated: yes
shims_on_path: no

build_info:
  Target: aarch64-apple-darwin
  Features: DEFAULT, NATIVE_TLS
  Built: Tue, 19 Nov 2024 22:00:56 +0000
  Rust Version: rustc 1.82.0 (f6e511eec 2024-10-15) (Homebrew)
  Profile: release

shell:
  /bin/zsh
  zsh 5.9 (arm64-apple-darwin24.0)

dirs:
  data: ~/.local/share/mise
  config: ~/.config/mise
  cache: ~/Library/Caches/mise
  state: ~/.local/state/mise
  shims: ~/.local/share/mise/shims

config_files:
  ~/.config/mise/config.toml

backends:
  aqua
  asdf
  cargo
  core
  go
  npm
  pipx
  spm
  ubi
  vfox
  unknown

plugins:
  cabal          https://github.com/sestrella/asdf-ghcup.git#a6407a2
  crystal        https://github.com/asdf-community/asdf-crystal.git#7af37cf
  elixir         https://github.com/mise-plugins/mise-elixir.git#7b06439
  elixir-ls      https://github.com/juantascon/asdf-elixir-ls#faf921f
  ghc            https://github.com/sestrella/asdf-ghcup.git#a6407a2
  golangci-lint  https://github.com/hypnoglow/asdf-golangci-lint.git#fee877b
  hls            https://github.com/sestrella/asdf-ghcup.git#a6407a2
  lua            https://github.com/Stratus3D/asdf-lua.git#e0c15ea
  stack          https://github.com/sestrella/asdf-ghcup.git#a6407a2
  usage          https://github.com/jdx/mise-usage.git#fe3888a

toolset:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>     (missing)
<EMAIL_ADDRESS>
env_vars:
  MISE_SHELL=zsh

settings:
  activate_aggressive = false
  all_compile = false
  always_keep_download = false
  always_keep_install = false
  asdf_compat = false
  cache_prune_age = "30d"
  ci = false
  color = true
  debug = false
  disable_backends = []
  disable_default_registry = false
  disable_hints = []
  disable_tools = []
  experimental = true
  fetch_remote_versions_cache = "1h"
  fetch_remote_versions_timeout = "10s"
  go_default_packages_file = "~/.default-go-packages"
  go_download_mirror = "https://dl.google.com/go"
  go_repo = "https://github.com/golang/go"
  go_set_gopath = false
  go_set_goroot = true
  go_skip_checksum = false
  http_timeout = "30s"
  jobs = 4
  legacy_version_file = true
  legacy_version_file_disable_tools = []
  libgit2 = true
  lockfile = false
  log_level = "info"
  not_found_auto_install = true
  paranoid = false
  pin = false
  plugin_autoupdate_last_check_duration = "7d"
  quiet = false
  raw = false
  task_timings = false
  trace = false
  trusted_config_paths = []
  unix_default_file_shell_args = ["sh"]
  unix_default_inline_shell_args = [
      "sh",
      "-c",
  ]
  use_file_shell_for_executable_tasks = false
  use_versions_host = true
  verbose = false
  windows_default_file_shell_args = [
      "cmd",
      "/c",
  ]
  windows_default_inline_shell_args = [
      "cmd",
      "/c",
  ]
  windows_executable_extensions = [
      "exe",
      "bat",
      "cmd",
      "com",
      "ps1",
      "vbs",
  ]
  yes = false

  [cargo]
  binstall = true

  [node]

  [npm]
  bun = false

  [pipx]
  uvx = false

  [python]
  default_packages_file = "~/.default-python-packages"
  pyenv_repo = "https://github.com/pyenv/pyenv.git"
  venv_auto_create = false
  venv_stdlib = false

  [ruby]
  default_packages_file = "~/.default-gems"
  ruby_build_repo = "https://github.com/rbenv/ruby-build.git"
  ruby_install = false
  ruby_install_repo = "https://github.com/postmodern/ruby-install.git"

  [status]
  missing_tools = "if_other_versions_installed"
  show_env = false
  show_tools = false
2 warnings found:

1. plugin node overrides a core plugin

2. plugin ruby overrides a core plugin

No problems found

Happening with Node, Ruby, and Python, at least. Mise is now auto-installing the vfox plugin for each core plugin.
Disable vfox as a workaround:
mise settings set vfox false

the other posters here are talking about an unrelated bug that has been fixed. I'm going to ignore that and focus on the clang thing.
So the clang plugin does this thing where it makes an async call at the top level of the lua code. I can't get that to work in rust at all but it's easy to modify the plugin to not do that—which I did here: https://github.com/jdx/vfox-clang/commit/8bc8c84a94f1fa6553c04996cd108d4a6a362af5
However I still can't get this to work despite that. It solves this specific issue but I then ran into others.


Moodle 4.1

Hi!
What an amazing template. Unfortunately it is only working for 3.9. How can we use this to deploy 4.1?

Templete is now useles, as it depends on repositories that are not longer supporting outdated ubuntu (18.04)and php (7.4)

I have the same problem. I was about to deploy this template/stack, but since it's not using Moodle 4.x it's pointless.

Thank you for the improvements @naioja.   For us, Moodle 4.x is a requirement at the moment, that's why we can't use this ARM At the moment to build this new env we need.

Thanks @naioja for updating the image.  Based on our highly load perf testing (20,000 concurrent users in 10 min) GlusterFS was much slower than NFS, so we stay away from it.   Will try to install it soon...

@VFXpro , @MarekSuwart , @nikoma I've published a branch on my fork of Moodle that should be now stable enough to test version 4 : https://github.com/naioja/Moodle/tree/aj_moodle4. If you have the time please have a look and let me know your feedback, especially around the deployments using glusterfs help would be amazing. For now I've been testing the Small Size setup and that is deployable.

Mmmmh any updates on this and how do I go about deploying this? Do I just press deploy or I need a bit more leg work before i do...
I see that the "_artifacts Location" remains the same is that supposed to happen or not?

Thanks @Abel-Moremi   We can't use glusterfs anymore after thoroughly load testing it with 10,000 concurrent users... it was MUCH slower than a shared NFS storage.

@VFXpro and @naioja Thank you


🐛 Bug Report: Tech docs cannot be generated based on entity configuration in S3

📜 Description
I am testing our the AWS S3 entity provider. I currently have a bucket that looks like this:
repoName/
  docs/
    README.md
  catalog-info.yaml
  mkdocs.yml

The only Component in catalog-info.yaml uses the annotation backstage.io/techdocs-ref: dir:.
👍 Expected behavior
I expect that this would work exactly as it does in the git alternative. The component should be discovered, and then the techdocs should get properly generated on demand.
👎 Actual Behavior with Screenshots
Backstage tries to generate the results but encounters an error from mkdocs. It looks like when the content from S3 is fetched and written into files in a temporary directory, it completely flattens the structure. mkdocs expects to find the docs directory which is in S3, but that directory doesn't exist locally. docs/README.md has turned into README.md as a sibling of mkdocs.yml

👟 Reproduction steps

Create an S3 bucket, credentials, integrate it within Backstage. I just used the main docs for this.

Create the file structure described above. Here is my catalog-info.yaml:
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
  name: backstage
  annotations:
    backstage.io/techdocs-ref: dir:.
spec:
  type: unknown
  lifecycle: unknown
  owner: unknown

And here is my mkdocs.yml:
---
site_name: Backstage Test
theme:
  name: material

repo_url: https://github.com/jutley/backstage-idp
edit_uri: https://github.com/jutley/backstage-idp/edit/master/docs/

The README.md can contain anything, naturally.

Sync these files to S3 so that the component gets discovered

Attempt to view the component's tech docs.

📃 Provide the context for the Bug.
No response
🖥 Your Environment
→  yarn backstage-cli info
yarn run v1.22.19
$ /Users/jakeutley/Development/hiyainc/backstage-idp/node_modules/.bin/backstage-cli info
OS:   Darwin 22.6.0 - darwin/arm64
node: v18.18.2
yarn: 1.22.19
cli:  0.23.1 (installed)
backstage:  1.19.6

Dependencies:
  @backstage/app-defaults                                          1.4.4
  @backstage/backend-app-api                                       0.5.7
  @backstage/backend-common                                        0.19.8
  @backstage/backend-dev-utils                                     0.1.2
  @backstage/backend-openapi-utils                                 0.0.5
  @backstage/backend-plugin-api                                    0.6.6
  @backstage/backend-tasks                                         0.5.11
  @backstage/catalog-client                                        1.4.5
  @backstage/catalog-model                                         1.4.3
  @backstage/cli-common                                            0.1.13
  @backstage/cli-node                                              0.1.5
  @backstage/cli                                                   0.23.1
  @backstage/config-loader                                         1.5.2
  @backstage/config                                                1.1.1
  @backstage/core-app-api                                          1.11.0
  @backstage/core-components                                       0.12.5, 0.13.7
  @backstage/core-plugin-api                                       1.7.0
  @backstage/dev-utils                                             1.0.22
  @backstage/errors                                                1.2.3
  @backstage/eslint-plugin                                         0.1.3
  @backstage/frontend-app-api                                      0.2.0
  @backstage/frontend-plugin-api                                   0.2.0
  @backstage/integration-aws-node                                  0.1.7
  @backstage/integration-react                                     1.1.20
  @backstage/integration                                           1.7.1
  @backstage/plugin-api-docs                                       0.9.12
  @backstage/plugin-app-backend                                    0.3.54
  @backstage/plugin-app-node                                       0.1.6
  @backstage/plugin-auth-backend-module-gcp-iap-provider           0.2.0
  @backstage/plugin-auth-backend-module-github-provider            0.1.3
  @backstage/plugin-auth-backend-module-gitlab-provider            0.1.3
  @backstage/plugin-auth-backend-module-google-provider            0.1.3
  @backstage/plugin-auth-backend-module-oauth2-provider            0.1.3
  @backstage/plugin-auth-backend                                   0.19.4
  @backstage/plugin-auth-node                                      0.2.16, 0.4.0
  @backstage/plugin-catalog-backend-module-github                  0.4.4
  @backstage/plugin-catalog-backend-module-openapi                 0.1.23
  @backstage/plugin-catalog-backend-module-scaffolder-entity-model 0.1.3
  @backstage/plugin-catalog-backend                                1.14.0
  @backstage/plugin-catalog-common                                 1.0.17
  @backstage/plugin-catalog-graph                                  0.2.37
  @backstage/plugin-catalog-import                                 0.10.1
  @backstage/plugin-catalog-node                                   1.4.7
  @backstage/plugin-catalog-react                                  1.8.5
  @backstage/plugin-catalog                                        1.14.0
  @backstage/plugin-events-node                                    0.2.15
  @backstage/plugin-github-actions                                 0.6.6
  @backstage/plugin-github-pull-requests-board                     0.1.19
  @backstage/plugin-graphiql                                       0.2.55
  @backstage/plugin-home-react                                     0.1.4
  @backstage/plugin-home                                           0.5.9
  @backstage/plugin-org                                            0.6.15
  @backstage/plugin-permission-backend                             0.5.29
  @backstage/plugin-permission-common                              0.7.9
  @backstage/plugin-permission-node                                0.7.17
  @backstage/plugin-permission-react                               0.4.16
  @backstage/plugin-proxy-backend                                  0.4.4
  @backstage/plugin-scaffolder-backend                             1.18.1
  @backstage/plugin-scaffolder-common                              1.4.2
  @backstage/plugin-scaffolder-node                                0.2.7
  @backstage/plugin-scaffolder-react                               1.5.6
  @backstage/plugin-scaffolder                                     1.15.1
  @backstage/plugin-search-backend-module-catalog                  0.1.10
  @backstage/plugin-search-backend-module-pg                       0.5.15
  @backstage/plugin-search-backend-module-techdocs                 0.1.10
  @backstage/plugin-search-backend-node                            1.2.10
  @backstage/plugin-search-backend                                 1.4.6
  @backstage/plugin-search-common                                  1.2.7
  @backstage/plugin-search-react                                   1.7.1
  @backstage/plugin-search                                         1.4.1
  @backstage/plugin-tech-radar                                     0.6.9
  @backstage/plugin-techdocs-backend                               1.8.0
  @backstage/plugin-techdocs-module-addons-contrib                 1.1.1
  @backstage/plugin-techdocs-node                                  1.9.0
  @backstage/plugin-techdocs-react                                 1.1.12
  @backstage/plugin-techdocs                                       1.8.0
  @backstage/plugin-user-settings                                  0.7.11
  @backstage/release-manifests                                     0.0.10
  @backstage/test-utils                                            1.4.4
  @backstage/theme                                                 0.2.19, 0.3.0, 0.4.3
  @backstage/types                                                 1.1.1
  @backstage/version-bridge                                        1.0.6
✨  Done in 0.99s.

👀 Have you spent some time to check if this bug has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
None

I think I have figured out the cause. It looks like for the ReadableArrayResponse file tree implementation, the dir function only uses the basename of the file's path.
https://github.com/backstage/backstage/blob/master/packages/backend-common/src/reading/tree/ReadableArrayResponse.ts#L102C20-L102C20
Not using the basename would probably allow the structure to be retained, but I believe everything would be placed into a directory matching the full S3 path. It would probably be best to trim the S3 prefix leading up to the directory. I think to do this, we would need to trim that prefix on the AWSS3UrlReader side, here:
https://github.com/backstage/backstage/blob/master/packages/backend-common/src/reading/AwsS3UrlReader.ts#L346-L350
Now, I have no idea what breaks if we just make those changes. The tree implementation isn't specifically for AWS, and I'm not sure what else AWS uses the tree structure for. I'm willing to make a PR if someone more knowledgeable thinks that this is a sensible suggestion.


Update embedded-hal dependency to 1.0

Once embedded-hal has pushed a stable 1.0 release (the latest at time of writing is 1.0.0-alpha.4), we should update our HAL to use it.
This will involve updating the dependency, then going through each peripheral and updating the imports/trait implementations/etc. until the project builds cleanly.
The stable release of embedded-hal can be tracked via this issue and this milestone.

One of the last remaining blockers for the embedded-hal 1.0 release are missing implementations of the API to show, that the traits work fine for the drivers and hals.
I would like to help with that here. Creating this implementation directly on master is a bad idea, as that would hinder any other improvements from getting released. Creating everything in my own branch would make a massive pull request, which would be really hard to review. Also there wouldn't be any proper feedback from the experienced devs here. My suggestion is therefor to create a new branch in this repo called something along the lines of ehal-1.0 where anyone interested in could help to implement these changes already and pulling self contained updates into this branch.
Advantages:
The current proposed traits can be checked and help release ehal 1.0
When the release comes the ehal branch can be merged back into master with most/all of the implementation ready.
Disadvantages:
Some or all of the time spent could be for nothing, if the traits change substantially.

Thanks for the offer of help :smile: I think it would be more beneficial to regenerate the PACs (#648), resolve the HAL breakage that causes, and then update ehal. Maintainer time is also very limited these days, so unfortunately these other issues haven't been addressed yet.

Since there has been a RC (rather than alphas), it seems like a 1.0 release is close and looking for last minute feedback. See https://github.com/rust-embedded/embedded-hal/issues/177#issuecomment-1805300873

The esp-hal crate supports 1.0 under a feature flag, maybe that would be workable here? https://github.com/esp-rs/esp-hal/blob/07ed22df17f28f1b1890aa47c3ae599182397712/esp-hal-common/Cargo.toml#L23

FYI: other HALs (e.g. stm32f4xx-hal or avr-hal) implement both versions at the same time. this gives drives time to migrate. you can then remove the 0.2 implementations at a later point.
this is also the recommendation in the upcoming migration guide.

No need to even do that anymore, it's official :) https://blog.rust-embedded.org/embedded-hal-v1/

No need to even do that anymore, it's official :) https://blog.rust-embedded.org/embedded-hal-v1/

it's still the recommendation in the migration guide to support e-h 0.2 and 1.0 at the same time for some time to come to give drivers some time to migrate. this avoids breakage in the ecosystem (though i agree that you shouldn't keep e-h 0.2 support for too long to also give driver authors & users an incentive to update 😉)

I would suggest we do one release with both implementations. After that, remove e-h 0.2 on the subsequent release. Drivers and apps that still rely on e-h 0.2 will then have the option to update or use https://github.com/ryankurte/embedded-hal-compat as a compatibility layer.
I'm not sure if this is the right place to discuss this, but it seems to me like the transition to e-h 1.0 looks like a great opportunity to release a 1.0 version as well. Not sure where the general sentiment stands at this point though (#334).


create new folder using arabic name don't display correct

I am trying to create new folder using arabic name but it display like this:

i am using laravel 5.4 and package version v1.9.2
sorry for may english

Please try v2.0.0-alpha5.


Solution for #8. Need help with Angular

#8 Enabling search on init with arbitrary parameters. Also, after a search, path parameters are added, for i.e. sharing links
There is an underlying err that's been bugging me for days. If it's fixed then the UX can be improved a little. You can reproduce the err with 2 consecutive searchs.

@fuksi , I've taken the patch file from your commits and applied it, everything seems to be working properly, I don't encounter the Angular errors. Here are the steps I reproduced

gulp dev
/search?q=fossasia
/search?q=apple
/search?q=google

The only errors I hit are those documented in #42 with random 404's occuring, leaving that everyting seems to be working perfectly with the following combinations of request parameters
Object {q: "apple", timezoneOffset: undefined}
Object {q: "apple", timezoneOffset: "400"}
Is there anywhere I've gone wrong in reproducing the error ?

@sudheesh001 Sorry I didn't specify clearly on the reproducing part.
The search url works fine. However I added a small feature that, when you search for a term, the url will be updated according to the term (so then we can copy and share the link).

Can you try to reproduce the error again?
Thanks!

Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: []
Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: []
http://errors.angularjs.org/1.3.15/$rootScope/infdig?p0=10&p1=%5B%5D
    at angular.js:63
    at Scope.$digest (angular.js:14346)
    at Scope.$apply (angular.js:14571)
    at done (angular.js:9698)
    at completeRequest (angular.js:9888)
    at angular.js:9798
    at HTMLScriptElement.callback (angular.js:9919)
angular.js:14574 Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: []
http://errors.angularjs.org/1.3.15/$rootScope/infdig?p0=10&p1=%5B%5D

Able to reproduce the error.

I'll close this and create a new low priority issue since it's working.


[fr] translate tasks from the Managing Secrets section

Hi,
This adds the French translation for the 3 tasks from the "Managing Secrets" section: https://kubernetes.io/docs/tasks/configmap-secret/.
There is one thing where I'm not quite sure how to translate properly. A few notes talk about the Server Side Apply concept:
Note: The stringData field for a Secret does not work well with server-side apply.
Translating literally  "server-side apply" would be "Application coté serveur", which is not "wrong", but IMO it's confusing, as it could be understood as an actual application hosted on a server. I've used "traitement coté serveur", which I think is closer to the reference term, but there might be a better translation.

traitement coté serveur

I think that works (I am not fluent in French). How about any of these:

mise en place des modifications coté serveur
modification coté serveur
matérialisation coté serveur

des modifications

Great suggestion. I've decided to use "traitement des modifications coté serveur", which sounds pretty similar to the english counterpart. I've also added the concept name in parenthesis for completeness in https://github.com/kubernetes/website/pull/44845/commits/2935847187f17d70422383c35bce882ca9a53098

/assign @perriea
We should be good here, unless you have an even better suggestion for my translation dilemma 😄

/lgtm

/lgtm cancel

/approve

/lgtm


allowUnmocked causes no requests to match when query is specified

var nock=require('nock'),
request=require('request');

nock('https://www.google.com',
	{ allowUnmocked: true })
	.log(console.log)
	.get("/abc")
	.query({'user':'fred'})
	.reply(200, "Match!")

request('https://www.google.com/abc?user=fred', function (error, response, body) {
	if (!error && response.statusCode == 200) {
  		console.log(body);
  	} else{
  		console.log(error ? "error: " + error : "response.statusCode: "+ response.statusCode);
  	}
});

With the code above, my request does NOT match and goes to google.com.
$ node nockTest.js
response.statusCode: 404
By changing allowUnmocked to false, I get:
$ node nockTest.js
matching https://www.google.com:443?user=fred to GET https://www.google.com:443/abc with query({"user":"fred"}): true
Match!
I am able to work around this and keep allowUnmocked=true by using a filteringPath to remove the query. Is this a bug or am I missing something here? Thanks!

@robinbobbitt sounds like a bug around the behavior dependent on allowUnmocked being true.

Yes, when we have allowUnmocked:true, request is mocked when it exactly matches to url we passed to get.
For example, this variant gives us expected result.
let nock=require('nock');
let request=require('request');

nock('https://www.google.com',
    { allowUnmocked: true })
    .get('/abc?user=fred')
    .reply(200, 'Match!');

request('https://www.google.com/abc?user=fred', (error, response, body) => {
    if (!error && response.statusCode == 200) {
        console.log('response: ' + body);
    } else {
        console.log(error ? 'error: ' + error : 'response.statusCode: ' + response.statusCode);
    }
});

But if we pass to get something different, like RegEx, Function, string with path without parameters, we'll fail.


ctl_enqueuembuf failed

Describe the bug
Outline will stop sending or receiving traffic
To Reproduce
No sure how to reproduce this as it only happens occasionly
Expected behavior
Outline should not blackhole all internet comms
Desktop (please complete the following information):

OS: MacOS (10.15.6)
Browser: Chrome + firefox
Version 10.15.6

Submit Feedback
done
Additional context
I get thousands of these when the issue is occuring:
error	14:56:04.903518+1000	kernel	utun_output - ctl_enqueuembuf failed: 55
error	14:56:04.903629+1000	kernel	utun_output - ctl_enqueuembuf failed: 55
error	14:56:04.903742+1000	kernel	utun_output - ctl_enqueuembuf failed: 55
error	14:56:04.903848+1000	kernel	utun_output - ctl_enqueuembuf failed: 55

also
Sep  9 14:34:02 mac com.apple.xpc.launchd[1] (org.outline.macos.client.VpnExtension[25017]): Service exited due to SIGKILL | sent by nesessionmanager[2743]
Sep  9 14:34:27 mac com.apple.xpc.launchd[1] (org.outline.macos.client.VpnExtension[33508]): Extension remained dirty for too long after trying to exit. Killing.
Sep  9 14:52:51 mac com.apple.xpc.launchd[1] (org.outline.macos.client.VpnExtension[33517]): Service exited with abnormal code: 2
Sep  9 14:53:33 mac com.apple.xpc.launchd[1] (org.outline.macos.client.VpnExtension[33628]): Service exited with abnormal code: 2
Sep  9 15:07:34 mac com.apple.xpc.launchd[1] (org.outline.macos.client.VpnExtension[33639]): Service exited due to SIGKILL | sent by nesessionmanager[2743]

@alalamav Could you take a look? Perhaps it's related to some issues we've seen with the iOS client?

I experienced this again today - please let me know if you need any more info @fortuna

forgot to mention - disconnecting and re-connecting resolves the issue

@hilt86 What's the client version you are using?

version 1.4.0 through the mac app store on maOS 10.15.7
On Thu, Dec 17, 2020 at 12:46 AM Vinicius Fortuna<EMAIL_ADDRESS>wrote:

@hilt86 https://github.com/hilt86 What's the client version you are
using?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Jigsaw-Code/outline-client/issues/851#issuecomment-746406546,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADL3YH5YX36IQZOS6GEIRLSVDB4JANCNFSM4RBD3AQQ
.

@fortuna Hello, is this problem solved?
I can reproduce the problem. The first time you connect, there will be no problem, but after manually disconnecting and reconnecting immediately, VPN will be disconnected in about 30 seconds.
View log:
Service exited due to SIGKILL | sent by nesessionmanager[2146]
Extension remained dirty for too long after trying to exit. Killing.


Cookie must be secure in order to use the SameSite None directive in v1.28.0 and v1.29.0

We are running a couple of magento application servers behind an SSL offloading loadbalancer.
This means magento is only receiving HTTP:// requests.
The problem is that you r lates fix tries to set a SameSite cookie which apparently needs the secure bit to be set.
This secure bit isn't set automatically when not running on HTTPS so it has to be explicitly set.
I have already created a Pull request with a fix for it:
https://github.com/buckaroo-it/Magento2/pull/57
This is a small part of the stacktrace:
"0":"Cookie must be secure in order to use the SameSite None directive.","1":"#1 BuckarooMagento2ModelPluginFixSession->beforeSetPublicCookie() called at [vendor/magento/framework/Interception/Interceptor.php:121]
#2 MagentoFrameworkStdlibCookiePhpCookieManagerInterceptor->MagentoFrameworkInterception{closure}() called at [vendor/magento/framework/Interception/Interceptor.php:153]

We will look into your pull request a.s.a.p.

Hi @Buckaroo-Rens ,
thank you for checking the issue. I see you added the Released tag, however my PR isn't merged yet so the fix is not present in the 1.29.1 release.
https://github.com/buckaroo-it/Magento2/pull/57

100% correct @CyberSecutor will will take this into our next release.


Adds Viscosity version 1.9

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

Microsoft Reviewers: Open in CodeFlow

/azp run

@KevinLaMS This pr needs to be closed. #7717

@trametheka Hi there 👋. If you become active again I think that it is a nice thing to reopen your pr 👍. Thanks for your work and have a nice day! 🥂

Hi @yigitemres , I forgot this PR was still here. We've identified a problem with our installer when running silently which is hanging the test process with winget, so we'll fix that and get another PR in soon. Cheers.


Cannot assign to read only property 'Symbol(Symbol.toStringTag)' of object '#'

Version
3.5.1
Environment info
  System:
    OS: macOS 10.14.3
    CPU: (8) x64 Intel(R) Core(TM) i7-7920HQ CPU @ 3.10GHz
  Binaries:
    Node: 11.11.0 - /usr/local/bin/node
    Yarn: 1.13.0 - /usr/local/bin/yarn
    npm: 6.7.0 - /usr/local/bin/npm
  Browsers:
    Chrome: 72.0.3626.121
    Firefox: 64.0
    Safari: 12.0.3
  npmPackages:
    @vue/babel-helper-vue-jsx-merge-props:  1.0.0-beta.2
    @vue/babel-plugin-transform-vue-jsx:  1.0.0-beta.2
    @vue/babel-preset-app:  3.5.1
    @vue/babel-preset-jsx:  1.0.0-beta.2
    @vue/babel-sugar-functional-vue:  1.0.0-beta.2
    @vue/babel-sugar-inject-h:  1.0.0-beta.2
    @vue/babel-sugar-v-model:  1.0.0-beta.2
    @vue/babel-sugar-v-on:  1.0.0-beta.2
    @vue/cli-overlay:  3.5.1
    @vue/cli-plugin-babel: ^3.5.0 => 3.5.1
    @vue/cli-plugin-e2e-nightwatch: ^3.5.0 => 3.5.1
    @vue/cli-plugin-eslint: ^3.5.0 => 3.5.1
    @vue/cli-plugin-unit-jest: ^3.5.0 => 3.5.1
    @vue/cli-service: ^3.5.0 => 3.5.1
    @vue/cli-shared-utils:  3.5.1
    @vue/component-compiler-utils:  2.6.0
    @vue/eslint-config-standard: ^4.0.0 => 4.0.0
    @vue/preload-webpack-plugin:  1.1.0
    @vue/test-utils: 1.0.0-beta.29 => 1.0.0-beta.29
    @vue/web-component-wrapper:  1.2.0
    eslint-plugin-vue: ^5.0.0 => 5.2.2
    jest-serializer-vue:  2.0.2
    vue: ^2.6.6 => 2.6.9
    vue-eslint-parser:  5.0.0
    vue-hot-reload-api:  2.3.3
    vue-jest:  3.0.4
    vue-loader:  15.7.0
    vue-router: ^3.0.1 => 3.0.2
    vue-style-loader:  4.1.2
    vue-template-compiler: ^2.5.21 => 2.6.9
    vue-template-es2015-compiler:  1.9.1
    vuex: ^3.0.1 => 3.1.0
  npmGlobalPackages:
    @vue/cli: Not Found

Steps to reproduce
Create a standard Vue Project with Jest as the unit test framework. The sample test will fail with the following message.
Test suite failed to run
TypeError: Cannot assign to read only property 'Symbol(Symbol.toStringTag)' of object '#<process>'

  at exports.default (node_modules/jest-environment-jsdom/node_modules/jest-util/build/create_process_object.js:15:34)

What is expected?
test to pass
What is actually happening?
Test suite failed to run
TypeError: Cannot assign to read only property 'Symbol(Symbol.toStringTag)' of object '#<process>'

  at exports.default (node_modules/jest-environment-jsdom/node_modules/jest-util/build/create_process_object.js:15:34)

I believe this is related to the newest version of node (11.11.0) and has been addressed by Facebook as part of Jest 24.5.0 release (https://github.com/facebook/jest/commit/800f2f803d01c8ae194d71b251e4965dd70e5bf2)
Also posted in React Git Issue log: https://github.com/facebook/create-react-app/issues/6591

+1
I've also just started experiencing this when trying to run jest in both a Vue CLI project and a NestJS Project shortly after upgrading yarn.

Experiencing the same issue after switching to yarn in my create react app application.

We've exactly the same error, and waiting for an update of the dependencies (node/jest is already updated, which will fix this error)

According to the Jest's github, it's due to a recent bug with Node v11.11.

for those facing this issue: this happened after Node v11.11. the quickest fix is to downgrade Node to 11.10.1 in your CI lock file until further investigation

https://github.com/facebook/jest/issues/8069#issuecomment-470307590

had the same issue, solved when updating node to v11.12.0

Has the same issue: it did appear with image: node:latest in gitlab.yml.
Switching to node:10.15.3 has fixed the issue.

since it works with node 11.12, I'll close it.


python311Packages.dvc-studio-client: 0.11.0 -> 0.12.0, python311Packages.dvc-data: 2.11.0 -> 2.12.0

Description of changes

Things done

Built on platform(s)

[ ] 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
[ ] 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

[ ] Fits CONTRIBUTING.md.

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

2 packages failed to build:

python311Packages.dvclive
python311Packages.dvclive.dist

14 packages built:

dvc
dvc-with-remotes
dvc-with-remotes.dist
dvc.dist
python310Packages.dvc-data
python310Packages.dvc-data.dist
python310Packages.dvc-studio-client
python310Packages.dvc-studio-client.dist
python310Packages.dvclive
python310Packages.dvclive.dist
python311Packages.dvc-data
python311Packages.dvc-data.dist
python311Packages.dvc-studio-client
python311Packages.dvc-studio-client.dist

Further fixes are included in https://github.com/NixOS/nixpkgs/pull/247019.

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

2 packages failed to build:

python311Packages.dvclive
python311Packages.dvclive.dist

14 packages built:

dvc
dvc-with-remotes
dvc-with-remotes.dist
dvc.dist
python310Packages.dvc-data
python310Packages.dvc-data.dist
python310Packages.dvc-studio-client
python310Packages.dvc-studio-client.dist
python310Packages.dvclive
python310Packages.dvclive.dist
python311Packages.dvc-data
python311Packages.dvc-data.dist
python311Packages.dvc-studio-client
python311Packages.dvc-studio-client.dist


Unable to install dependencies (or run any rake task) on a fresh clone

I'm trying to get started with a PR and I seem to be unable to get rake to work properly, meaning I can't do rake spec:deps.
cd /tmp
git clone https://github.com/bundler/bundler.git && cd bundler
rake -T

rake aborted!
NoMethodError: undefined method `ext_lock' for #<Bundler::RubygemsIntegration::Future:0x007f9701a765a8>
/private/tmp/bundler/lib/bundler/shared_helpers.rb:58:in `pwd'
/Users/adamprescott/.gem/ruby/2.1.4/gems/bundler-1.7.4/lib/bundler/gem_helper.rb:27:in `initialize'
/Users/adamprescott/.gem/ruby/2.1.4/gems/bundler-1.7.4/lib/bundler/gem_helper.rb:13:in `new'
/Users/adamprescott/.gem/ruby/2.1.4/gems/bundler-1.7.4/lib/bundler/gem_helper.rb:13:in `install_tasks'
/Users/adamprescott/.gem/ruby/2.1.4/gems/bundler-1.7.4/lib/bundler/gem_tasks.rb:2:in `<top (required)>'
/private/tmp/bundler/Rakefile:312:in `<top (required)>'
/Users/adamprescott/.gem/ruby/2.1.4/bin/ruby_executable_hooks:15:in `eval'
/Users/adamprescott/.gem/ruby/2.1.4/bin/ruby_executable_hooks:15:in `<main>'
(See full trace by running task with --trace)

It comes out of shared_helpers.rb:
def pwd
  Bundler.rubygems.ext_lock.synchronize do
    Dir.pwd
  end
end

What's interesting is that the error comes from Bundler::RubygemsIntegration::Future:0x007f9701a765a8 (note: Future), but if I open a console with lib/bundler required, then I can call ext_lock:
$ irb -Ilib
>> require "bundler"
=> true
>> Bundler.rubygems.ext_lock
=> #<Monitor:0x007fa82113c510 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x007fa82113c3f8>>

But the Bundler.rubygems object in this console is actually a Bundler::RubygemsIntegration::MoreFuture, not a Future.
Am I missing something obvious here?

It sounds like you're somehow mixing versions of Ruby and/or RubyGems. Maybe check the shebang for your rake?

I just had to do this and got this error. I was using an older version of ruby. Use 2.2.2, I'm it should work.

@fotanus that seems to be it. I was initially on 2.1.4, and I was using the rubygems-bundler gem. After I reset my shebangs with gem pristine --all, I still had the issue. Using 2.2.2 works, even with rubygems-bundler.

Thanks so much!


Fix issue #99, with docker-machine time syncing

Add comment to Dockerfile explaining what to do if this issue is encountered

Thank you!


InvocationCount and RetryAnaylzer when used togther performs incorrect behaviour

Below are the steps to reproduce.
@UseAsTestcaseName("Sanity-TC01010-test")
@MaxRetryCount(3)
@Test(groups="sanity test", invocationCount=2)
public void test(){
	System.out.println("sample test : "+Thread.currentThread().hashCode());
	Assert.fail();
}

Above configures my RetryAnalyzer to max retry attempts to 3. And total invocationCount to 2
Below is the output
sample test :<PHONE_NUMBER>
sample test :<PHONE_NUMBER>
sample test :<PHONE_NUMBER>
Completed retry
sample test :<PHONE_NUMBER>
sample test :<PHONE_NUMBER>
sample test :<PHONE_NUMBER>
Completed retry
sample test :<PHONE_NUMBER>
sample test :<PHONE_NUMBER>
sample test :<PHONE_NUMBER>
Completed retry

As noticed in the above output. Test is invoked more then twice.

Adding to the above issue description, the total invocation goes wrong only when a retry is invoked.


Dataset ingestion failure notifications should @sc-oncall-eng in #single-cell-ops

When dataset ingestion failures occur, the Slack notification in #single-cell-ops should @sc-oncall-eng.
See:

https://github.com/chanzuckerberg/single-cell-data-portal/blob/main/backend/corpora/dataset_processing/slack.py#L10

@metakuni - how does this differ from All ingestion failures MUST be reported to #single-cell-ops?

@metakuni - how does this differ from All ingestion failures MUST be reported to #single-cell-ops?

This issue was to specifically to add the @sc-oncall-eng in the Slack notification so that the on-call engineer would be explicitly pinged on Slack. It's a trivial one-line change.


AdvancedHMC.sample might not be respecting the passed rng object

Hi all, thanks for the great package!
I noticed recently with some Octofitter tests that passing a seeded RNG object (e.g. rng = Xoshiro(0) into AdvancedHMC.sample(...;rng=rng) does not give reproducible results.
By contrast, calling Random.seed!(0) (with or without passing a seeded rng object) does lead to reproducible results.
Could it be that there is a rand() call somewhere in this package that is not respected the passed rng object?
Thanks very much, and let me know if there is any way I can help with tracking this down.
-William

Hello @sefffal, thanks for getting in touch!
I dug into it a bit with the first example in the README. I don't know if this is similar to what you were doing (if not, it would be great if you could share an MWE).
using AdvancedHMC, ForwardDiff
using LogDensityProblems
using LinearAlgebra
using Random: Xoshiro
using Statistics: mean
struct LogTargetDensity
    dim::Int
end
LogDensityProblems.logdensity(p::LogTargetDensity, θ) = -sum(abs2, θ) / 2  # standard multivariate normal
LogDensityProblems.dimension(p::LogTargetDensity) = p.dim
LogDensityProblems.capabilities(::Type{LogTargetDensity}) = LogDensityProblems.LogDensityOrder{0}()
D = 10; initial_θ = rand(D)
ℓπ = LogTargetDensity(D)
n_samples, n_adapts = 2_000, 1_000
metric = DiagEuclideanMetric(D)
hamiltonian = Hamiltonian(metric, ℓπ, ForwardDiff)
initial_ϵ = find_good_stepsize(Xoshiro(0), hamiltonian, initial_θ)
integrator = Leapfrog(initial_ϵ)
kernel = HMCKernel(Trajectory{MultinomialTS}(integrator, GeneralisedNoUTurn()))

adaptor = StanHMCAdaptor(MassMatrixAdaptor(metric), StepSizeAdaptor(0.8, integrator))
m = mean(mean(sample(Xoshiro(0), hamiltonian, kernel, initial_θ, n_samples, adaptor, n_adapts; progress=true)[1]))

I can confirm that (perhaps rather unfortunately) the call to sample() mutates adaptor; so if you just run sample() a second time it will result in different values. However, if you redefine a fresh adaptor before rerunning sample, you should get a reproducible result.
I'm running:
julia> versioninfo()
Julia Version 1.11.1
Commit 8f5b7ca12ad (2024-10-16 10:53 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: macOS (arm64-apple-darwin22.4.0)
  CPU: 10 × Apple M1 Pro
  WORD_SIZE: 64
  LLVM: libLLVM-16.0.6 (ORCJIT, apple-m1)
Threads: 1 default, 0 interactive, 1 GC (on 8 virtual cores)

(ppl) pkg> st
Status `~/ppl/Project.toml`
  [0bf59076] AdvancedHMC v0.6.3
  [f6369f11] ForwardDiff v0.10.37
  [6fdf6af0] LogDensityProblems v2.1.2
  [10745b16] Statistics v1.11.1
  [37e2e46d] LinearAlgebra v1.11.0
  [9a3f8284] Random v1.11.0

I recognise that the above doesn't quite account for your observation that Random.seed! makes it work reproducibly (unless, perhaps, you happened to place seed! at the top of a script and reran multiple lines including the definition of adaptor). If the above isn't relevant, do let us know.

Thanks @penelopeysm for looking into this!
I'll see if I can narrow down the cause on my end, or reduce it to a smaller example.
One thing I might try is replacing the global RNG with one that logs when rand is called.

into AdvancedHMC.sample(...;rng=rng) does not give reproducible results.

Hmm, AFAIK, this is not the syntax for using the rng. The rng should be passed as the first argument, e.g.
sample(rng, ...)

Did you try this?


[fix][test] PerformanceTransactionTest

Fixes #18282
Modifications
We start 10 transactions and consume 50 messages in every transaction by default.
But notice -r 10 set the consumption rate limit to be 10 msg per second, so every transaction is about 5 seconds.
In https://github.com/apache/pulsar/pull/17837 we set the transaction TTL to be 5 seconds, so transactions may be timeout randomly, which causes the test to fail.
To prove this, you can try to set -r 9 or -tto 4, which will cause failure 100%.
So remove the -r option can fix this issue.
Verifying this change

[x] Make sure that the change passes the CI checks.

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository: https://github.com/labuladong/pulsar/pull/6

@poorbarcode  Good idea, I also prefer to modify it to -r 50 which can make the test more comprehensive.
And @labuladong Could you please also fix testProduceTxnMessage for the same problem?

OK, I'll do this @liangyepianzhou

Codecov Report

Merging #18296 (b26c45d) into master (0866c3a) will increase coverage by 31.81%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             master   #18296       +/-   ##
=============================================
+ Coverage     38.97%   70.79%   +31.81%
+ Complexity     8311      438     -7873
=============================================
  Files           683       26      -657
  Lines         67325     2246    -65079
  Branches       7217      245     -6972
=============================================
- Hits          26239     1590    -24649
+ Misses        38079      483    -37596
+ Partials       3007      173     -2834

Flag
Coverage Δ

unittests
70.79% <ø> (+31.81%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...apache/pulsar/proxy/server/LookupProxyHandler.java
57.75% <0.00%> (-0.44%)
:arrow_down:

.../main/java/org/apache/pulsar/PulsarStandalone.java

...che/pulsar/broker/BookKeeperClientFactoryImpl.java

...n/java/org/apache/pulsar/broker/PulsarService.java

.../org/apache/pulsar/broker/admin/AdminResource.java

...pulsar/broker/admin/impl/PersistentTopicsBase.java

...pache/pulsar/broker/admin/v2/PersistentTopics.java

.../pulsar/broker/service/AbstractBaseDispatcher.java

...rg/apache/pulsar/broker/service/BrokerService.java

...ava/org/apache/pulsar/broker/service/Consumer.java

... and 648 more

PTAL @liangyepianzhou


m3u8 parser couldn't cover some special case

Required Info

Host Operating System & Version
{Ubuntu 20.04.2}

Kernel Version (Linux Only)
(5.x)

Branch
{ kantv }

Android Studio Version
4.2.1

NDK Version
NDK-r14b

Xcode Version
12.5

Language
{C }

Section
{ HLS }

Issue Description
can't playback some HLS content
How to reproduce the issue

open https://v3.dious.cc//20210416/nIYS8a98/index.m3u8

launch playback

06-18 19:59:01.731 31313 31368 D OpenGLRenderer: disableOutlineDraw is true
06-18 19:59:01.732 31313 31550 D IJKMEDIA: request: GET //20210416/nIYS8a98/index.m3u8 HTTP/1.1
06-18 19:59:01.732 31313 31550 D IJKMEDIA: User-Agent: Lavf/58.76.100
06-18 19:59:01.732 31313 31550 D IJKMEDIA: Accept: */*
06-18 19:59:01.732 31313 31550 D IJKMEDIA: Range: bytes=0-
06-18 19:59:01.732 31313 31550 D IJKMEDIA: Connection: close
06-18 19:59:01.732 31313 31550 D IJKMEDIA: Host: v3.dious.cc
06-18 19:59:01.732 31313 31550 D IJKMEDIA: Icy-MetaData: 1
06-18 19:59:01.732 31313 31550 D IJKMEDIA:
06-18 19:59:01.732 31313 31550 D IJKMEDIA:
06-18 19:59:01.757 31313 31550 D IJKMEDIA: Format hls probed with size=2048 and score=100
06-18 19:59:01.757 31313 31550 I IJKMEDIA: Opening 'https://20210416/nIYS8a98/1000kb/hls/index.m3u8' for reading
06-18 19:59:01.759 31313 31550 E IJKMEDIA: Failed to resolve hostname 20210416: No address associated with hostname
06-18 19:59:01.759 31313 31550 W IJKMEDIA: parse_playlist error I/O error [https://20210416/nIYS8a98/1000kb/hls/index.m3u8]
06-18 19:59:01.759 31313 31550 I IJKMEDIA: Statistics: 119 bytes read, 0 seeks
06-18 19:59:01.760 31313 31550 E IJKMEDIA: https://v3.dious.cc//20210416/nIYS8a98/index.m3u8: I/O error

Root cause
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1000000,RESOLUTION=1280x720
/20210416/nIYS8a98/1000kb/hls/index.m3u8?skipl=1

m3u8 parser couldn't cover above case in libavformat/hls.c
IPR disclaimer
the HLS content was collected from internet, only used for software development purpose

will be fixed today


bug report

is it a bug?the node load failded

Sorry, yes.  Thanks for telling me.

thanks for your reply and look forward to update it


If you'd like to run migrations on this database, remove the safety check in SiteInitialization.RunMigrations method

I have created a serenity asp.net core app, when i run and try to login i get: If you'd like to run migrations on this database, remove the safety check in SiteInitialization.RunMigrations method. What is the way forward coz i cannot get the SiteInitialization.RunMigrations to edit

How you solve this? Thanks

I Solved.
           // safety check to ensure that we are not modifying an arbitrary database.             // remove these lines if you want ETOPMS migrations to run on your DB.             // 在这里它会判断数据库名是不是 "ETOPMS_Default_v1" 和 "ETOPMS_Northwind_v1".              // 如果上面这两个数据库名称没有包含在 ConnectionString中，说明是全新的数据库，需要跳过 Migration 操作.             if (!isOracle && cs.ConnectionString.IndexOf(typeof(DataMigrations).Namespace +                     @"_" + databaseKey + "_v1", StringComparison.OrdinalIgnoreCase) < 0)             {                 SkippedMigrations = true;                 return;             }
If you create a database for serenity, the database name should be "_default_v1".
Change the connection string in appsettings.json config file. For example:
   "Default": {       "ConnectionString": "Data Source=<IP_ADDRESS>;Database=MYTEST_Default_v1;user id=sa;password=sa",       "ProviderName": "System.Data.SqlClient"     },

I think  the database name be like this
Namespace_DatabaseName_V1


Inventory summary counts for IAM policies not accurate

We are currently counting the number of rows in the IAM policies table, but we should be counting the number of rows in the raw IAM policies tables. (i.e. only one IAM policy per resource)

For example, there was only 1 organization found during this data import, but Forseti reports that there are 207 org iam policies, when in fact there should only be 1 IAM policy for the org.

Anyone working on this one? If no, I'd like to fix it.


added Flashforge Adventure 3 machine preset

@DRIgnazGortngschirl good idea! I changed to X.X.X.X as the example IP address. I had picked a 192.168.1.xxx address originally as a common default.
I also add a LICENSE.md file to be clear what the license was on using all these data files. Since these are community profiles and we want to encourage as much contribution and use (including commercial) as possible, the Creative-Commons Zero (CC0) license seems to be the least restrictive. Your thoughts would be great.
See more here:
https://ufal.github.io/public-license-selector/

Awesome, thanks for adding the LICENSE.md file,  feel good about that choice of license!
Lets go for the merge.


[Feature Request] Add optional greyed out backdrop to child of the SliderDrawer

Would be nice to have a way to optionally enable a greyed out backdrop which animates with the animation controllers value on sliding the drawer.

Hey @InFaMoUsZero , Thanks for you feedback. Can you please explain you feature request with add video / image and few more detail?

like the greyed out part in this photo. Should be quite simple to add and opacity value can be set using animation controller value / 2 to give it a fade animation as the drawer opens.


Fix Jest 20 Windows bug for test selection

Windows bug: https://github.com/facebook/jest/issues/3516

Pushing to 0.10.1 as non urgent.

Let's keep an eye on https://github.com/facebook/jest/pull/3563.


kernel: fix 9p issues

Motivation for this change
Fixes for 9P issues #23957 and #23020 until applied in upstream
The patches have been submitted to upstream by @dezgeg, one a month ago (still no reaction), another today.
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] Linux

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

What about 4.10?

Applied in https://github.com/NixOS/nixpkgs/commit/ed41d50e9fe3d942cfde37e84de781c096309e5b.

should it be backported release-17.03 branch as well?

Yes, I will do that once I see there aren't any problems in Hydra.

Applied to stable in 6c5128c9c801645faa95db2dd3b36df24da39d33.


Infinite loop for driver

This PR implements the infintie loop for the driver.
There are many options on how to handle errors. Right now, I think it is the best to just print errors from the batch_process, and not interrupting the infinite loop. But maybe we have to overthink this option later.
testplan:
unit tests

@e00E . It would be great if you could review this PR. Maybe you will not find too many issues, and then we can merge it.
The other outstanding PRs need some more adaptions, I guess. If you find the time, feel free to get them ready. I will not have the chance to work on them this week.


Get WMF to update their Github description/README to link to us

Problems:

Some users who want to report a bug go to Google, search for the app's project page, and find https://github.com/wikimedia/apps-android-commons which links to now-defunct Bugzilla. Result: no feedback for us, and frustrated users.
When I advertise the app, I get negative feedback saying "Why do you advertise the fork rather than the original?" (example).
https://github.com/wikimedia/apps-android-commons says "our actual code is hosted with Gerrit" which scares away most potential contributors. And for those who don't give up and go search Gerrit, no code is actually there. It can be hard to find our fork.

Solution: https://github.com/wikimedia/apps-android-commons should be modified this way:

Github project description: This project is now maintained by volunteers at https://github.com/nicolas-raoul/apps-android-commons
Content of file README.md:

Initially started by the WMF, this app is now maintained by volunteers at https://github.com/nicolas-raoul/apps-android-commons
Please report any bug there.

@niedzielski do you think you might have some power to get that done? :-)

https://gerrit.wikimedia.org/r/#/c/272212/
https://phabricator.wikimedia.org/T127623

I think the better (any probably best) solution would be to fix https://phabricator.wikimedia.org/T127678 :)

Fixed, thanks all :-)


Update HumanResource.md

updated

Docs Build status updates of commit f6ccd70:
:warning: Validation status: warnings

File
Status
Preview URL
Details

dynamics-gp/payroll/HumanResource.md
:warning:Warning
View
Details

dynamics-gp/payroll/HumanResource.md

Line 799, Column 1: [Warning: file-not-found - See documentation] Invalid file link: 'media/HRLIFE0001.jpg'.
Line 849, Column 1: [Warning: file-not-found - See documentation] Invalid file link: 'media/HRRETIRE0001.jpg'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel