CotinuousOptConProblem with ADCodegenLinearizer

Does it possible to construct a CotinuousOptConProblem from ADCodegenLinearizer instead of SystemLinearizer? As far as I can understand, the former one performs auto-diff and the later one did it numerically. https://ethz-adrl.github.io/ct/ct_doc/doc/html/execution_speed.html recommend the use of  ADCodegenLinearizer for optimised execution speed.

Yes, that is of course possible. I would recommend you to take a look at the unit tests, they show you in detail how to instantiate a ADCodgenLinearizer for both continous-time and discrete-time systems.

Could you please point out which unit test file should I look at? I have gone through most of them but struggle to find an example that instantiates ADCodgenLinearizer in continuous time. Thanks

I tried to create a new templated type
template <size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = ADCGScalar>
using ContinuousOptConProblemAD = OptConProblemBase<STATE_DIM,
    CONTROL_DIM,
    ControlledSystem<STATE_DIM, CONTROL_DIM, SCALAR>,
    LinearSystem<STATE_DIM, CONTROL_DIM, SCALAR>,
    ADCodegenLinearizer<STATE_DIM, CONTROL_DIM, SCALAR>,
    SCALAR>;

to use templated dynamics and ADCG in OptConProblemBase. The error I got was
error: no matching function for call to ‘ct::optcon::OptConProblemBase<12, 4,
ct::core::ControlledSystem<12, 4, CppAD::AD<CppAD::cg::CG<double> > >,
ct::core::LinearSystem<12, 4, CppAD::AD<CppAD::cg::CG<double> > >,
ct::core::ADCodegenLinearizer<12, 4, CppAD::AD<CppAD::cg::CG<double> > >,
CppAD::AD<CppAD::cg::CG<double> > >::OptConProblemBase(ct::core::Time&, const
ct::core::StateVector<12, double>&,
std::shared_ptr<rov::tpl::ROV<CppAD::AD<CppAD::cg::CG<double> > > >&,
std::shared_ptr<ct::optcon::CostFunctionQuadratic<12, 4> >&,
std::shared_ptr<ct::core::ADCodegenLinearizer<12, 4> >&)’
                 timeHorizon, x_init, rovdynamic, costFunction, adLinearizer);

Is this the right way to go?

A working example of how to use the ADCodegenLinearizer can be found in this example in ct_optcon.
I hope it helps!

@markusgft Thanks! I have done this already. The problem I had is how to pass the adLinearizer to ContinuousOptConProblem. The ContinuousOptConProblem seems templated for SystemLinearizer which is numerical differentiation.
template <size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
using ContinuousOptConProblem = OptConProblemBase<STATE_DIM,
    CONTROL_DIM,
    core::ControlledSystem<STATE_DIM, CONTROL_DIM, SCALAR>,
    core::LinearSystem<STATE_DIM, CONTROL_DIM, SCALAR>,
    core::SystemLinearizer<STATE_DIM, CONTROL_DIM, SCALAR>,
    SCALAR>;

Please advice.

What you try above, the "new template type" is certainly not going to work. You canot template your problem onto a fully abstract base class.
What I would advise you to do, is to take exactly your original setup, but rather than handing over a SystemLinearizer pointer, you hand over a ADCodegenLinearizer pointer to the continous-time optcon problem. Since they derive from the same base class (LinearSystem), this is guaranteed to work.

Yep, I agree on the original setup should works. To better illustrate my issue, I have created a minimal case using the example from ct_optcon (the one you pointed). The code and error message is here: https://gist.github.com/tsaoyu/fd084f91c0aff21ce63dcf47d40649c2
A shared pointer is now been passed onto ct::optcon::ContinuousOptConProblem as I did before. In theory, this should match the function call of
    OptConProblemBase(const time_t tf,
        const state_vector_t& x0,
        DynamicsPtr_t nonlinDynamics,
        CostFunctionPtr_t costFunction,
        LinearPtr_t linearSystem = nullptr);

This is my point of confusion. Thanks

Thanks @markusgft !
In case anyone who runs into the same issue the answer is here: https://gist.github.com/tsaoyu/fd084f91c0aff21ce63dcf47d40649c2#gistcomment-3231924
TL;DR
Create TWO instances of dynamics and use the double templated for the ContinuousOptConProblem.

That helped a lot, thanks!


Support async panel

Codecov Report

Merging #88 into master will increase coverage by 1.56%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #88      +/-   ##
==========================================
+ Coverage   83.97%   85.53%   +1.56%
==========================================
  Files          19       20       +1
  Lines         287      318      +31
  Branches       51       59       +8
==========================================
+ Hits          241      272      +31
  Misses         37       37
  Partials        9        9

Impacted Files
Coverage Δ

src/index.js
100% <ø> (ø)
:arrow_up:

src/AsyncPanel.js
100% <100%> (ø)

Continue to review full report at Codecov.

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


feature: add ability to filter by agency

may require: add a new collection which includes the agency as a drop-down, like with the contacts.
alternatively: use the "contacts", and only show those contacts which are listed as an agency (rather than an individual)
ToDos:

[ ] Clarify technicals (link to separate "Agencies" collection, or link to "Contacts")
[ ] Clarify design (one box with multiple filters for tags and agencies, multiple boxes, something else...)
[ ] Implement

Check with David Yokum after rollout of #653 whether we still need this


treewide: fix evaluation with allowAliases = false

Motivation for this change
fix evaluation when using the configuration option allowAliases = false.

@GrahamcOfBorg build soulseekqt haskellPackages.futhark

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: soulseekqt, haskellPackages.futhark
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: haskellPackages.futhark
The following builds were skipped because they don't evaluate on x86_64-linux: soulseekqt
Partial log (click to expand)
copying path '/nix/store/xczsq2bh69xhlfysvvl0wxr762rhsnk8-streaming-commons-<IP_ADDRESS>-doc' from 'https://cache.nixos.org'...
copying path '/nix/store/24mf4ff6a80xb4vfc9mqpv5frkjkb550-zlib-0.6.2' from 'https://cache.nixos.org'...
copying path '/nix/store/hicisb7fxz6nnwksdna8piri7maznbag-conduit-extra-1.3.0-doc' from 'https://cache.nixos.org'...
copying path '/nix/store/8q0v15wbgj015ml3ryrk7a8vnjvji315-streaming-commons-<IP_ADDRESS>' from 'https://cache.nixos.org'...
copying path '/nix/store/kxvf6d70wyd8j5wz9cablfn1mxy9vda2-xml-conduit-<IP_ADDRESS>-doc' from 'https://cache.nixos.org'...
copying path '/nix/store/m40qrpwz42xzd2i0zkhrxcfv1yz184if-conduit-extra-1.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/499l7b5j9cfny1wjhvwy7m923df182ia-xml-conduit-<IP_ADDRESS>' from 'https://cache.nixos.org'...
copying path '/nix/store/sxmx3zy1ckwppl1xppln22zc7p76p950-markdown-<IP_ADDRESS>' from 'https://cache.nixos.org'...
copying path '/nix/store/fnwyxk69sgdsa6rasf5bvim5hzr0rhr2-futhark-0.6.2' from 'https://cache.nixos.org'...
/nix/store/fnwyxk69sgdsa6rasf5bvim5hzr0rhr2-futhark-0.6.2

soulseekqt is licensed unfree so ofborg will not build it. I may or may not have built it locally successfully.

Timed out, unknown build status on aarch64-linux (full log)
Attempted: haskellPackages.futhark
The following builds were skipped because they don't evaluate on aarch64-linux: soulseekqt
Partial log (click to expand)
cannot build derivation '/nix/store/3fzzc1yibapgii2rp1cng0hx8sqpaam7-tls-1.4.1.drv': 17 dependencies couldn't be built
cannot build derivation '/nix/store/g34pdwk8m8bryxqcz2s67bn14jpijc3m-conduit-extra-1.3.0.drv': 16 dependencies couldn't be built
cannot build derivation '/nix/store/4pshqfj6anprvczyv4h1msixix7nxfqi-connection-0.2.8.drv': 11 dependencies couldn't be built
cannot build derivation '/nix/store/8sqq7i07yzblk23ggvk243vwvf4wkryd-yaml-0.8.32.drv': 15 dependencies couldn't be built
cannot build derivation '/nix/store/5r1yhbqdkmknp0hhj1xkm6yc8lr4jy94-http-client-tls-<IP_ADDRESS>.drv': 13 dependencies couldn't be built
cannot build derivation '/nix/store/miyha9zkvz2smwshls576b7qyk8y5q6z-xml-conduit-<IP_ADDRESS>.drv': 13 dependencies couldn't be built
cannot build derivation '/nix/store/2l17ardlx43yncpgl2f0ripi7zyzbpaf-hpack-0.28.2.drv': 19 dependencies couldn't be built
cannot build derivation '/nix/store/rhgl08l6p6hid4ax10mmd55v7hwbxxhj-markdown-<IP_ADDRESS>.drv': 13 dependencies couldn't be built
cannot build derivation '/nix/store/5fw0fy5h77hmh4vvziqhipad7icfk3mj-futhark-0.6.2.drv': 34 dependencies couldn't be built
error: build of '/nix/store/5fw0fy5h77hmh4vvziqhipad7icfk3mj-futhark-0.6.2.drv' failed


Bug: Uppercase Letter "A" Not Displaying Correctly (Desktop App)

Description:
The uppercase letter "A" is not displaying correctly in the desktop app.
Steps to Reproduce:
Open a document that includes uppercase "A" letters in the desktop app.
Observe the display of the letter "A."
Expected Behavior:
The uppercase letter "A" should display as intended, without visual issues.

What OS are you using?
Does this affect every "A" in the app or only in some contexts?
Does this affect every zoom level or only some of them? You can press (Cmd/Ctrl) and (+/-/0) to change zoom, like on the web
Some screenshots would also be helpful.

I am using Mac OS, the uppercase A looks like this:

It affects every zoom level, and this bug only appears in the Headings:

Ah this is a strange issue and I can't figure out how to make it happen on my machine! I am also on MacOS, and I have tried dark mode and light mode, two screens (laptop and HDMI), and different zoom levels. But I can't see this issue with any "A" headings 🥲
Let me know if anybody has more details on reproducing this!

I suspect this has to do with the font the system is setting on @SalvaZaraes machine that may have the A "corrupted". because we are not doing anything wrong or intentional when rendering text.
I can't reproduce it either on my machine. I added the "need repro steps" to this issue for now


[microNPU] Support binary elementwise with non-4D inputs

Reshapes non-4D inputs to become 4D, then reshapes the output back to the non-4D input shape after selected binary elementwise operation is performed.
cc @ekalda @NicolaLancellotti @manupa-arm @dchauhan-arm

Thanks! @lhutton1 @NicolaLancellotti @ekalda


Widget for TractableBufferStockQuickDemo does not respond to R

Though the sliders are working for all the other parameters, at the moment they are not working for R.

Just checked in the DemARK https://github.com/econ-ark/DemARK/blob/master/notebooks/TractableBufferStock-Interactive.ipynb and R seems to work too in the widget.

closing this, doesn't looks like an issue anymore.
R works fine by uncommenting Rfree_widget in interact in the notebook  https://github.com/econ-ark/DemARK/blob/master/notebooks/TractableBufferStock-Interactive.ipynb


update required pipeline tasks to use pipeline-required-tasks from acceptable bundles

update required pipeline tasks to look for tasks in pipeline-required-tasks key in acceptable bundles. If not found, look at the required-tasks.

Codecov Report

Merging #309 (db08718) into main (1e36819) will decrease coverage by 0.06%.
The diff coverage is 100.00%.

Additional details and impacted files

@@             Coverage Diff             @@
##              main     #309      +/-   ##
===========================================
- Coverage   100.00%   99.94%   -0.06%
===========================================
  Files           62       63       +1
  Lines         1668     1739      +71
===========================================
+ Hits          1668     1738      +70
- Misses           0        1       +1

Impacted Files
Coverage Δ

policy/lib/tekton/pipeline.rego
100.00% <100.00%> (ø)

policy/lib/tekton/task.rego
100.00% <100.00%> (ø)

policy/pipeline/required_tasks.rego
96.00% <100.00%> (-4.00%)
:arrow_down:

policy/pipeline/required_tasks_test.rego
100.00% <100.00%> (ø)


Refactor flow of error rendering

At the moment, all errors (404, or 50*) get rendered using the following templates:

In the admin

we use the server/views/error.hbs template

On the frontend

if the theme does not have an error.hbs template, we use server/views/user-error.hbs
if the theme does have an error.hbs template, we use that

However, if there is an error when attempting to render the error template, we fall back to using res.send with some really basic super-ugly HTML. This is because it is reasonably common for custom themes to have errors on the error template, and we need to be sure to catch them.
It may be better to refactor the way errors are handled on the frontend so that:
user-error.hbs becomes default-error.hbs
We attempt to render 40* errors using the theme template, but 50* errors always use the default-error.hbs
This way if we can do the following with the error templates:
404 (theme) -> 500 (default) -> 500 (basic HTML).
But if we're rendering a 500 we would always do
500 (default) -> 500 (basic HTML)
Alternatively, we could refactor the frontend errors to attempt to use the theme template, and if that fails attempt to use the default, and finally revert to basic HTML. If we're doing this, we could also support separate error404 and error500 in themes.
So we would do:
404 (theme) -> 500 (theme) -> 500 (default) -> 500 (basic HTML)
or
500 (theme) -> 500 (default) -> 500 (basic HTML)
However, if we get a string of errors like this, we need smart way to display the fact that we encountered the latest error, whilst trying to render an error page for the original error.
At the moment, there can only be a rendering error and an original error and we output it in the form:
"
Oops, seems there is an an error in the error template.
"
                    + "
Encountered the error:
"
                    + "
" + hbs.handlebars.Utils.escapeExpression(templateErr.message || templateErr) + "
"
                    + "

whilst trying to render an error page for the error:
"
                    + code + " " + "
"  + hbs.handlebars.Utils.escapeExpression(err.message || err) + "
"

Finally we need to consider what happens to 40* errors that are not 404 errors.

Closing in favour of #8079


[FEATURE REQUEST] API to bridge futures and GCancellable

I came up with this: https://github.com/coreos/rpm-ostree/pull/3083/commits/66b6e7cf4149cc48a96e64455ff83ef1cee51d53#diff-7939b1bb63c982978270ab1c565b42a56f7fea352ce7b2cdb792e1272fe4c6acR16
Does this API exist somewhere already?  It feels useful enough to add as an API on e.g. GCancellable perhaps?

(I'm not sure if there's a reactor-independent way to do the bridging though...I guess it'd make the most sense to default to the glib mainloop, but hmm...I'm not totally sure right now I want to use that instead of tokio)

Wouldn't abortable() from futures work? Then just call AbortHandle::abort when the GCancellable is cancelled.

That sounds potentially useful to have here, yes. I was planning to add the other way around at some point, basically a
impl GioFuture {
    fn cancel(&self) -> CancelHandle;
}

which would cancel the GCancellable of the future, and CancelHandle then would be a future that resolves once the cancellation happened (the future is Droped).

I'm not sure if there's a reactor-independent way to do the bridging though

You could use the oneshot channel from the futures crate and futures::future::select()

Took a shot at this in https://github.com/ostreedev/ostree-rs-ext/pull/109


any sass version out there

is there a sass version out there that I could add to my codeKit workflow?

https://github.com/corysimmons/lost/releases/tag/5.1.6 but Sass won't be maintained. Feel free to create a repo for it and I'll link ya.

That's too bad


UIViewcontroller alloc init with xib ways is not work

UIViewcontroller alloc init with xib ways is not work.

It was my own mistake.


MD split

When I need a special style for content in my page (for example in a one-page design) I use multiple md files (_part1.md _part2.md etc) so I can put a text paragraph exactly where I need it. It's a perfect workaround, but when I need multiple pages, with multiple paragraphs... I need a lot of md files.
So it's possible to split a md file with maybe a custom tag or a specific syntax?
Something like this:
---
Title: Test
Author: Me
Template: page
Split: yes
---
### 1
lorem ipsum

### 2
dolor sit amet

So {{ "_page"|content(1) }} return lorem ipsum and {{ "_page"|content(2) }} return dolor sit amet

Not out-of-the-box. As always, you could write a plugin to allow something like this. However, personally I'd recommend you to take advantage of it: Make splitting up pages into parts a conscious decision. Split pages into parts using hidden directories, i.e. the page sub/page.md could automatically include sub/_page/part1.md, sub/_page/part2.md, … You can now write your theme so that it automatically checks whether there are hidden sub/_page/*.md pages and include them accordingly, if one requested sub/page. This should be possible with pure Twig.

Thanks for the hit :+1:
I have already a "portfolio section" with a for cycle to automatically include projects and display a thumbnail of the project:
{% for page in pages("portfolio")|sort_by("time")|reverse if not page.hidden %}
    ...

    ...
{% endfor %}

I was close to the right approach... :smile:


More permissive license

Would it be possible to use (or add) a more permissive license for this project? Either MIT or Apache 2.0? Would love to use this, but unfortunately the existing license is preventing us from doing so. Thanks!

Hi @brandon-miles what’s the issue with GPL3 ? Thanks.

Using GPL3 would be extremely difficult at my company. Sorry for being vague, but there are very good reasons why this is the case. I understand it's asking a lot to completely change the license, but would it be possible to maybe dual-license this with MIT or Apache 2.0?

Hi @brandon-miles. Thanks for your response. I really have to think about it and read a bit more about the consequences. But I think I chose the current licence on purpose. Do you plan to add some customizations to the project for your specific use case?

Yes, this project fits our use case quite well, and we'd love to contribute to it.

Thanks. I will consider the licence change.

@brandon-miles I think it make sense to change the licence for this repository: https://github.com/ludeknovy/jtl-reporter
as it contains the integration scripts, docker-compose, etc meant for further customization and usage. And it make no sense to make the end user to open source their modifications here.
But I will keep the GPL3 for the other parts - be, fe, listener service for now.

@ludeknovy Great, thank you. Actually, not to be pushy, but it would make more sense for the actual components to be under a more permissive license as well since it's more likely our contributions would be made there. Would that be possible?

@brandon-miles Maybe I miss something, but how is the GPL3 restricting you (or someone else) from contributing to the project? What GPL3 is about - if you make any changes, you cannot redistribute it without making them open sourced as well. Or am I wrong?

Contributing to or using GPL3 projects is basically a non-starter for my company, and I'm sure many other corporations. Specifically the concern is libraries getting linked inside proprietary software, and then having to make this software open source, potentially disclosing large swaths of sensitive code.
I understand for this project our resistance doesn't quite make sense since we would be using the software and contributing back within the agreement, but unfortunately exceptions to the policy are hard to come by, and I doubt they would be granted here.
On the flip side, I think there could potentially be other companies in the same boat as us that would use this if the license were more permissive, so that could be some incentive to use MIT or Apache.
Again, I appreciate the consideration; I understand this is a really tough ask, but I think this would benefit others in the same position. Thanks!


Place module script in head section...

... they defer by default!
https://github.com/follywolly/web-app-from-scratch-18-19/blob/960a98a709d761ef74e11f55198b69b69f2db8b2/src/index.html#L21

Done


Implement IPNS

The base of IPNS was removed (giving some example in commits df8a12e111192f312665049934e4da2ffdcc51db, af7d88b42155aeb02083e99ad6bc1e7bbd9ae550, etc) leaving only dnslink portion in tack. Since libp2p have came a long way since then, we should be able to make use of DHT to put IPNS records.

[x] Import newer IPNS proto file
[ ] Create functions to create, sign (both sigv1 and sigv2), encode and decode the IPNS Record
[ ] Implement functions to publish IPNS to DHT
[ ] Test for go-ipfs and js-ipfs interop
[ ] Implement IPNS over Pubsub(?) - Low priority and research would be needed

Note: This will be done in a separate crate that would be imported into rust-ipfs

My app uses/bundles Kubo, but I need to switch to a pure rust implementation of IPFS so it can go mobile, etc. It relies heavily on IPNS functionality, so I'm interested in contributing to this issue. Your write up here is very helpful and should get me on the right track, but I'm curious if you have any additional info or suggestions that might help.

Hey! Thank you for your response. IPNS, to say the least, been low priority for me since I been focusing on cleaning up and improving the overall functionality before focusing on IPNS (which i will say may be able to solve some of the things I use this project for too). As to when I will actually get to IPNS is hard to say, especially since I do need to review changes made in rust-libp2p again from https://github.com/libp2p/rust-libp2p/pull/2712 to make sure im understanding the API changes.
At this time, however, I dont have any additional info for this. Regardless, all contributions are welcome. If you do have questions feel free to ask!


Kinesis LZO S3 Sink: write to nested S3 buckets

If I attempt to send records to a nested S3 bucket, I get this exception:
com.amazonaws.services.s3.model.AmazonS3Exception: The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.

I got around this by including the AWS region in the bucket name. So
  s3 {
    endpoint: "http://s3.amazonaws.com"
    bucket: "outer-bucket/inner-bucket"
  }

but this does:
  s3 {
    endpoint: "http://s3-eu-west-1.amazonaws.com"
    bucket: "outer-bucket/inner-bucket"
  }

Not sure why this only matters for nested buckets...


How to change the default port?

How to change the default port?

same question. Wanted to change 3389 to other numbers but failed to connect using the SuperRDP2


Remove power ops code that is no longer in use

Found some ✂ 🔥  while looking at BZ #1416903

@miq-bot add_label bug, "technical debt", refactoring
@miq-bot assign @gmcculloug

@miq-bot add_label technical debt

A little something to make the day brighter for @jrafanie.  (The 🔥  of burning deletions.)

@syncrou why did you label this as a bug?  is it fixing something that is not working?

@chessbyte - That label can go away.  I'm looking at another bug in the same model as this change.  I removed this in reference to fixing that bug - but the change itself was not a bug.


handle package with no classes

This patch resolves the issue seen here https://github.com/ryanluker/vscode-coverage-gutters/issues/354
Caused by
        <package name="empty_package" line-rate="0.0" branch-rate="0.0" complexity="0">
            <classes/>
        </package>

@fschwaiger Are you able to merge this and create a release for us to use in https://github.com/ryanluker/vscode-coverage-gutters/blob/master/package.json#L284 ?

Diff looks good to me, I can merge this. I have no idea how to do a release though. @ryanluker currently we are referencing the commit SHA in the package.json yes?

@fschwaiger Thanks for merging, we can refer to the sha commit hash again yes!


ci: Adding linting to helm charts

Which problem does the PR fix?

https://github.com/camunda/camunda-platform-helm/issues/415
What's in this PR?

An attempt to lint and standardize all of our helm charts.
Checklist
Please make sure to follow our Contributing Guide.

Before opening the PR:

[x] There is no other open pull request for the same update/change.
[x] The commits follow our Commit Guidelines.
[ ] Tests for charts are added (if needed).
[ ] The main Helm chart and sub-chart are updated (if needed).
[ ] In-repo documentation are updated (if needed).

After opening the PR:

[ ] Did you sign our CLA (Contributor License Agreement)? It will show once you open the PR.
[ ] Did all checks/tests pass in the PR?

I am noticing a lot of style inconsistencies on the pre-rendered helm charts as well, but unfortunately we won't be able to lint them in this PR.

I have the following issue in the zeebe and zeebe-gateway golden file:
affinity:
  podAntiAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
    - labelSelector:
        matchExpressions:
        - key: app.kubernetes.io/component
          operator: In
          values:
          - zeebe-gateway
      topologyKey: kubernetes.io/hostname

As you can see the - labelSelector is not indented. I tried modifying the helm template manifest in both zeebe and zeebe-gateway in order to get the indentation working, but was not able to. Any help on this would be appreciated.

I would like feedback on the yamllint config. It can be found in the config section within the .github folder.


menuconfig: Improve behavior for named choices included multiple times

Update menuconfig to upstream revision 38dff36b0f97b, to improve the
behavior for a case reported by Øyvind Rønningstad.
Upstream commit message:
menuconfig: Only list duplicated choice symbols once

When a Kconfig file defined a named choice and was included multiple
times, the choice symbols were listed multiple times in the
menuconfig as well (due to commit 17d7c1e ("menuconfig: Show all
symbols at each menu location for multi.def. choices")).

That's probably not what you want. Tweak it so that each symbol is
only shown once, with the prompt that was used for it at whatever
choice definition location is entered.

Also change how the choice selection is displayed before the choice
is entered, so that the prompt used for the selected symbol at that
particular location is used. Previously, the prompt at the first
definition location for the symbol was always used.

CC @oyvindronningstad @carlescufi

Codecov Report

Merging #11709 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #11709   +/-   ##
=======================================
  Coverage   48.21%   48.21%
=======================================
  Files         279      279
  Lines       43308    43308
  Branches    10370    10370
=======================================
  Hits        20880    20880
  Misses      18282    18282
  Partials     4146     4146

Continue to review full report at Codecov.

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


AttributeError: module 'numba' has no attribute 'core'

I am using Linux and numba-0.51.2. I am not able to import this package.
import numba

AttributeError                            Traceback (most recent call last)
 in
----> 1 import numba
~/.local/lib/python3.6/site-packages/numba/init.py in
26
27 # Re-export types itself
---> 28 import numba.core.types as types
29
30 # Re-export all type names
AttributeError: module 'numba' has no attribute 'core'
I have the following dependent packages llvmlite-0.34.0 numpy-1.19.2 setuptools-50.3.0.
What happens here and could you give me some advice?

Thanks for the report. This seems to typically arise in the case of a corrupted environment where multiple version of numba have been installed using pip and there's some artifacts from a previous version of numba still present. Can you reproduces this in an entirely new environment?

Closing this issue due to lack of information. If more information becomes available please add it and reopen the issue. Thanks.


Loosen requirements.txt versions

Typically a pip installable package should not have pinned version requirements. If possible, please remove the version declarations from requirements.txt. Users may want to use different versions of the requirements.

Done. Thanks!


[Refactoring] - header restyling, style fix, dropdown positioning fix

related issue: https://github.com/ita-social-projects/OoS-Frontend/issues/1832

comment fixed!


chore: new file-based-catalog based on 0.0.13

This PR creates a new file-based OLM catalog index based on 0.0.13 bundle
that is already published to quay.io
This is achieved by running
make catalog-image VERSION=0.0.13 IMAGE_BASE=quay.io/rhobs/observability-operator

Signed-off-by: Sunil Thaha<EMAIL_ADDRESS>

cc: @jan--f @simonpasquier


Amount available for updated delegation amount is incorrectly calculated

Bug Description
When updating the amount of an existing delegation, the available amount should not only be the "at disposal" amount. The amount that is already locked in a delegation can also be used when setting the new amount. Only the fee for making the transaction have to be taken from the "at disposal" amount.
So in short: The delegation amount can be taken from the full public balance incl. what is already locked in delegation, but the fee has to be available from the "at disposal" amount.
Steps to Reproduce
Pre-requisite: Fresh account with 2000 CCD.

Set up a delegation with 1500 CCD.
Notice how the at disposal is now 500 (which is correct).
Try to update the delegation amount to be 1600, but notice how there is not enough funds.

Expected Result
It's possible to delegate the full public balance minus the fee.
Actual Result
It's only possible to update delegation amount to whatever is at disposal.
Versions

Software Version: 3.0.0(40)
OS: iOS

Verified.

Software Version:  3.0.0 (42)
OS: iOS 15.4.1
Mobile device: Device: iPhone SE


Abstraction for supporting points/edges in collision detection

This could potentially cut out a lot of the error-prone case code finding contact points. This is also something that's used in the GJK algorithm which I should really study, see if it does anything separating axis tests can't

Closing all issues, moving planning to my notes repo for more freely writing down ideas


Improve generation error messaging

Currently there is some degree of information in the gradle console which informs a user what the annotation processor is doing.
There is not sufficient information when something goes wrong. Most times the processor actually throws an annotation processor error which does not help the user solve the problem.
The requirement is that error messages are handled better.

The primary problematic errors are now raised gracefully.


FMeasure and Recall at K

This PR adds FMeasureAtK and RecallAtK which can be used in the new parameterized metrics that were recently added.  I included some test cases as well as a new test case for PrecisionAtK.

Many thanks @worleydl !


Is there any way to run extension commands through command line

Is there any way to run the extension commands through command.
Some thing like this
code --run-extension shan.code-settings-sync --command-name DownloadSettings
https://github.com/shanalikhan/code-settings-sync/issues/403

But it has been asked before, not just for extensions but for any command such that would look more like this: code --command myCommand

To keep the number of issues in our inbox on a manageable level, we're closing issues that have been on the backlog for a long time but haven't gained traction: We look at the number of votes the issue has received and the number of duplicates issues filed.
Thanks for your understanding. Happy coding!

@joaomoreno This was open a month and a half. I think this would be very useful. I didn’t realize it’d be closed without votes.


QuantConv2D binarized activations with bitpacked output as tf.int32

@lgeiger @AdamHillier given our latest mail conversation I'm trying to state one of the questions here so others can profit too.
this is somehow related to the #445
given the hints from @lgeiger:

If you use experimental_enable_bitpacked_activations=True during model conversion and have one-padding enabled in Larq, the converter will automatically fuse a convolution followed by a sign function into a single op where the binary convolution returns bitpacked binary feature maps directly.

I modelled a multitask network with binary layers and a sign operation (larq.math.sign respectively larq.larq.quantizers.SteSign()) afterwards:
output = larq.layers.QuantConv2D(256, kernel_size = (3,3), strides=(1,1), padding="same", pad_values=1, input_quantizer="ste_sign", kernel_quantizer="ste_sign",                            kernel_constraint="weight_clip", use_bias=False)(output) output = larq.quantizers.SteSign()(output)
However there is a LceDequantize op and the output is a tensor with tf.float32 (identity).

Can you give me some hint how I could strip that last dequantization layer so I get the actual tf.int32 tensor ?
I get it that you marked this as experimental but from a research perspective accessing the output layers (bitpacked output) directly is interesting (especially since you're thinking about making this default behavior as discussed here: https://github.com/larq/compute-engine/pull/597
I suppose the answer must lie in modify_integer_quantized_model_io_type as part of https://github.com/larq/compute-engine/blob/master/larq_compute_engine/mlir/python/util.py

Hi, thanks for your interest in LCE!
The converter will indeed leave that LceDequantize in the graph, as this bitpacked datatype is kind of an LCE internal type that is only ever read by other LCE ops, so it won't be exposed to the outside.
I think that your best bet is to write a separate python script that modifies the generated flatbuffer, inspired by that function modify_integer_quantized_model_io_type that you linked to.
You could take that util.py file as example and then slightly modify it as follows.

The following line will have to be changed to opcode.customCode == "LceDequantize"
https://github.com/larq/compute-engine/blob/579c8fb02f69d6f08e1581206c7b9b00b5394028/larq_compute_engine/mlir/python/util.py#L114

If its just for testing, you could remove the extra checks:

https://github.com/larq/compute-engine/blob/579c8fb02f69d6f08e1581206c7b9b00b5394028/larq_compute_engine/mlir/python/util.py#L147-L163
With these changes, you should be able to strip out the "LceDequantize" ops.

@Tombana thanks a lot for the hint. very appreciated
implemented a script given your input that does exactly that
when executing it after the regular call to convert_keras_model() it threw the error:
ImportError: cannot import name 'tflite_schema' from 'larq_compute_engine.mlir.python'
guess I have to implement the code right in the repo and compile larq_compute_engine again

given the last error, I fixed it by importing it as:
from larq_compute_engine.mlir.python import schema_py_generated as tflite_schema
the above code line you mentioned above I had to adapt a bit:
`opcode.customCode == b'LceDequantize'
as you said I had also had to remove the extra checks

am I right to assume that this will only remove the last LceDequantize layer(s) in a model (right before the (multi)output) or could it affect intermediate layers within the model ?

am I right to assume that this will only remove the last LceDequantize layer(s) in a model (right before the (multi)output) or could it affect intermediate layers within the model ?

You are right. It will not affect any intermediate layers.

cause I still don't quite get the conversion: looking at the sample picture above, shouldn't there be a LceDequantize layer right before a regular Conv2D on the two paths on the right side

That is a good question. The following assumption is wrong:

as any output tensor from QuantConv2D/LceBconv2d is tf.int32 per se

The binary convolutions have binary input and weights. The output, however, is generally a float (or int8) number. This is especially important in networks with shortcuts, where you want the full-precision float data to go into the shortcut.
Now in case there are two LceBconv2d ops in sequence, then normally you'd have an LceQuantize op inbetween to convert the full-precision output to binary. But if the intermediate tensor inbetween is not consumed by any other op, then the MLIR converter detects this and changes the first LceBconv2d op to produce binary output directly, so that the LceQuantize op can be removed.
I hope that answers your question, feel free to ask more if it is not clear!

@Tombana it's a bit clearer now.
makes sense that you discuss making experimental_enable_bitpacked_activations=True default, as otherwise there's gonna be "unnecessary" LceQuantize ops in between consecutive QuantConv2D layers.

The binary convolutions have binary input and weights. The output, however, is generally a float (or int8) number.

Oh, gotcha. My mistake, I assumed the output to be tf.int32 given the API documentation: Note that the output of a binarized layer is not binary. Instead the output is an integer, due to the summation that appears in most neural network layers.
Two questions remain:

since you said binary convolutions generally output a float (or int8) number. When setting:
tfl_mdl = convert_keras_model(mdl, inference_input_type=tf.int8, inference_output_type=tf.int8) the tensors all remain in tf.float32, why is that or can we control it elsewhere ?
referring to _find_int8_quantized_inputs_outputs in util.py: are we talking about TFLite QAT quantization/dequantization layers here that are adapted ? in other words tf.int8 as input/output of the model or for each layer (like the int8 numbers you mentioned before) ?

Oh, gotcha. My mistake, I assumed the output to be tf.int32 given the API documentation: Note that the output of a binarized layer is not binary. Instead the output is an integer, due to the summation that appears in most neural network layers.

I understand the confusion now. That part of the documentation refers to the fact that the sum of the product of the -1 and +1 values of a binary convolution will always be an integer. In LCE, the binary convolution op also has a fused batchnorm, so then that integer can become a float.
In LCE, the int32 type in tflite files always refers to bitpacked data, so it refers to 32 individual bits and not an integer. That's why the raw int32 tensor is usually not useful for the end user.
You mentioned you are interested in the int32 data, so if you meant the sum of the -1,1 product, then this is not what you will get by removing the LceDequantize op.

since you said binary convolutions generally output a float (or int8) number. When setting:
tfl_mdl = convert_keras_model(mdl, inference_input_type=tf.int8, inference_output_type=tf.int8) the tensors all remain in tf.float32, why is that or can we control it elsewhere ?

Those parameters inference_input_type refer to the input type of the entire model, not the individual layers.
To make the individual layers use int8 tensors, you have to add fake quantization nodes (such as this one) to the graph between every layer. (But not inbetween things that are going to get fused, so it can be a bit tricky to get this right.)

referring to _find_int8_quantized_inputs_outputs in util.py: are we talking about TFLite QAT quantization/dequantization layers here that are adapted ? in other words tf.int8 as input/output of the model or for each layer (like the int8 numbers you mentioned above) ?

That is correct.

I understand the confusion now. That part of the documentation refers to the fact that the sum of the product of the -1 and +1 values of a binary convolution will always be an integer. In LCE, the binary convolution op also has a fused batchnorm, so then that integer can become a float.

gotcha. should be clear now.

In LCE, the int32 type in tflite files always refers to bitpacked data, so it refers to 32 individual bits and not an integer. That's why the raw int32 tensor is usually not useful for the end user.
You mentioned you are interested in the int32 data, so if you meant the sum of the -1,1 product, then this is not what you will get by removing the LceDequantize op.

for the LCE converter step I actually aim to access the bitpacked data that contains the binary values so I can process them later (without dequantizing them back to tf.float32). removing LceDequantize should be the right way to go. sry if I mixed that up

Those parameters inference_input_type refer to the input type of the entire model, not the individual layers.
To make the individual layers use int8 tensors, you have to add fake quantization nodes (such as this one) to the graph between every layer. (But not inbetween things that are going to get fused, so it can be a bit tricky to get this right.)

so to get this one right, I'd do a manual placement of the quantize layers from tensorflow package, ie. fake_quant_with_min_max_vars or fake_quant_with_min_max_args
now by doing this would I need to define the range too using experimental_default_int8_range ? as both of the above already exhibit arguments min=-6 and max=6
would the default QAT converter tensorflow_model_optimization.quantization.keras.quantize_model be an alternative or is that not compatible with the Larq workflow?

so to get this one right, I'd do a manual placement of the quantize layers from tensorflow package, ie. fake_quant_with_min_max_vars or fake_quant_with_min_max_args
now by doing this would I need to define the range too using experimental_default_int8_range ? as both of the above already exhibit arguments min=-6 and max=6

When you add those fake_quant ops, you do not need to use experimental_default_int8_range. The flag experimental_default_int8_range is meant for benchmarking int8 models without training them properly, and it will effectively add a fake_quant node to any tensor that does not have one yet.

would the default QAT converter tensorflow_model_optimization.quantization.keras.quantize_model be an alternative (as it does such a conversion automatically and adds fake quantize nodes) or is that not compatible with the Larq workflow?

That should work in theory, although we've had some issues with that in the past when we tried it ourselves, so we ended up placing these fake_quant nodes manually.

When you add those fake_quant ops, you do not need to use experimental_default_int8_range. The flag experimental_default_int8_range is meant for benchmarking int8 models without training them properly, and it will effectively add a fake_quant node to any tensor that does not have one yet.

thanks for the clarification. definitely get the differences with respect to the parameters now. maybe one could also add that to the documentation in convert_kera_model
is there an openness from your side to participate such kinds of updates (and even if it's just documentation changes) from outside your team so that others can profit too ? usually that is done via pull requests, how do you see this ?

thanks for the clarification. definitely get the differences with respect to the parameters now. maybe one could also add that to the API documentation
is there an openness from your side to participate in such kinds of updates (and even if it's just documentation changes) from outside your team so that others can profit too ? usually that is done via pull requests, how do you see this ?

We very much welcome such contributions; everyone is welcome to make pull requests.
The docs are generated from here: https://github.com/larq/docs/tree/master/docs/compute-engine , and some part of the API docs are autogenerated from the docs in the code, like here: https://github.com/larq/compute-engine/blob/14da1c84c9cc8269fe12ba2c210ab1c70f0f4a3d/larq_compute_engine/mlir/python/converter.py#L78

the idea would be to have an additional parameter enable_bitpacked_int32_output = False in convert_keras_model
taking this discussion up:
Originally posted by @lgeiger in #445 (comment)

Since you already have a working python script to remove the LceDequantize ops, it would be simple to add this. I still think it would not be useful for the average user; but for debugging and research it can be helpful.
What do you think about adding it under a debugging or research subfolder, like:
from larq_compute_engine.research import strip_lcedequantize_ops

tflite_model = strip_lcedequantize_ops(tflite_model)

@larq/compute-engine thoughts?

@Tombana @lgeiger @AdamHillier thoughts about this ?
as suggested by @Tombana the idea of having a separate research module, so the function strip_lcedequantize_ops could access the backend methods in util
am I assuming correctly, that the bitpacked tf.int32 outputs has values 0,1 representing 1,-1 ?

Hi @simonmaurer,
Apologies for the delay. We discussed it internally and we think it makes most sense to add this functionality directly to util.py but not expose it as a public API.
People that need the functionality can then import it directly with
from larq_compute_engine.mlir.python.util import strip_lcedequantize_ops

Since you already have a working script, could you create a pull request where you add the relevant changes to util.py ?

am I assuming correctly, that the bitpacked tf.int32 outputs have values 0,1 representing 1,-1 of the quantization (QuantConv2D -> SteSign)?

If x is your int32 number, then (x >> i) & 1 will give you the i-th bit of x (with i between 0 and 31). The bit value 0 represents +1.0 and the bit value 1 represents -1.0.

very nice.
I'll have to adapt the code and put it into util.py. this way we can directly use the builtin functions _convert_model_from_bytearray_to_object, _remove_tensors_from_model and _convert_model_from_object_to_bytearray. once this is done I can issue a pull request.

closing this issue as it has been resolved by PR #611


plots: Bounded A-MCTS-R evaluation

Do we want to eventually merge in the stuff here?

I didn't bother merging this because I didn't think the results of this experiment were clear enough to be worth putting in the paper. Closing for now but maybe will want to re-visit this if we do more bounded A-MCTS-R experiments


Homedirectory is created with superuser nobody or anyother user other than hdfs (hdfs superuser), can cause permission denied when accessing the homedirectory.

Jira: CDPD-29617
PR: 2569
The fix was provided 2 of our customer and it worked fine for them.
++++++++++++++++++++
runcpserver.log:[28/Apr/2021 20:22:13 +0000] resource DEBUG PUT <class 'requests_kerberos.kerberos_.HTTPKerberosAuth'> https://httpfs:14000/webhdfs/v1//user/mb?permission=0770&op=MKDIRS&user.name=hue&doas=nobody returned in 25ms 200 17
runcpserver.log:[28/Apr/2021 20:22:13 +0000] resource DEBUG PUT <class 'requests_kerberos.kerberos_.HTTPKerberosAuth'> https://httpfs:14000/webhdfs/v1//user/mb?permission=0755&op=SETPERMISSION&user.name=hue&doas=nobody returned in 6ms 200 0
runcpserver.log:[28/Apr/2021 20:31:41 +0000] resource DEBUG PUT <class 'requests_kerberos.kerberos_.HTTPKerberosAuth'> https://httpfs:14000/webhdfs/v1//user/mb?permission=0770&op=MKDIRS&user.name=hue&doas=nobody returned in 24ms 200 17
runcpserver.log:[28/Apr/2021 20:31:41 +0000] resource DEBUG PUT <class 'requests_kerberos.kerberos_.HTTPKerberosAuth'> https://httpfs:14000/webhdfs/v1//user/mb?permission=0755&op=SETPERMISSION&user.name=hue&doas=nobody returned in 7ms 200 0
++++++++++++++++++++

I think the variable self.superuser is was introduced when adding function create_home_dir in class Hdfs and meanwhile deprecating class HadoopFileSystem, which has superuser as property.
https://github.com/cloudera/hue/blob/2f6c5182046a1b6b14871dcff6e0cc2af69d3221/desktop/libs/hadoop/src/hadoop/fs/hadoopfs.py#L223
But superuser is never a property of class Hdfs, which is the super class of HadoopFileSystem.
https://github.com/cloudera/hue/blob/2f6c5182046a1b6b14871dcff6e0cc2af69d3221/desktop/libs/hadoop/src/hadoop/fs/hadoopfs.py#L389
So, it might be better to remove self.superuser or re-implement it like HadoopFileSystem? cc: @romainr

I think the variable self.superuser is was introduced when adding function create_home_dir in class Hdfs and meanwhile deprecating class HadoopFileSystem, which has superuser as property. Here is the history of hadoopfs.py:
https://github.com/cloudera/hue/blob/2f6c5182046a1b6b14871dcff6e0cc2af69d3221/desktop/libs/hadoop/src/hadoop/fs/hadoopfs.py#L223
But superuser is never a property of class Hdfs, which is the super class of HadoopFileSystem.
https://github.com/cloudera/hue/blob/2f6c5182046a1b6b14871dcff6e0cc2af69d3221/desktop/libs/hadoop/src/hadoop/fs/hadoopfs.py#L389
So, it might be better to remove self.superuser or re-implement it like HadoopFileSystem? cc: @romainr

Do you think removing that self.superuser and setting the information from config should be fine here.  As I see that on the webhdfs.py we do that.

For which FS is it an issue?
If HDFS/HTTPS why not improve the logic here https://github.com/cloudera/hue/blob/master/desktop/libs/hadoop/src/hadoop/fs/webhdfs.py#L169 and add a test?

@wing2fly , can you please check and see if its good to go as we discussed yesterday.


json-stream

Package name: json-stream
Package Upstream Source:

https://pypi.org/project/json-stream/

link to source repository

https://github.com/daggaz/json-stream

Purpose of using this:
From Documentation:

Simple streaming JSON parser and encoder.
When reading JSON data, json-stream can decode JSON data in a streaming manner, providing a pythonic dict/list-like interface, or a visitor-based interfeace. Can stream from files, URLs or iterators.
When writing JSON data, json-stream can stream JSON objects as you generate them.
These techniques allow you to reduce memory consumption and latency.

Distro packaging links:
Links to Distribution Packages

pip:

https://pypi.org/project/json-stream/

@iam-shanmukha please note that packages with pip-based dependencies are not eligible for release on the ROS build farm.
This change requires an additional rosdep reviewer to approve before it can be merged.


[Suggestion] Wireless sync

From what I saw, you have to hard code your calendar, stocks, birthdays and such before compiling and deploying the code. It'd be cool if a future version provided wireless sync with another device. It'd probably need the coding of a second app to allow your mirror to mirror - pun intended - your main device.

:+1:

Alternatively, the app could be a regular webview, showing a custom website for the mirror. This way one could update the webpage from anywhere, and the app would show the updated webpage.

Could be quickly done with meteorjs. Push working code and connected client will refresh itself automagically :)

Yeah :+1: for meteorjs @GabLeRoux, for personal 1-off projects it's a good choice for a simple text website that makes development (front/backend changes) super quick. Although hosting it somewhere is still a problem, the buildpack on heroku for it is mega slow to compile new deployed changes. And you'd have to probably pre-boot ping a free dyno to wake it up around the time of day you want to look at your mirror... rabbit hole.

Though one could buid a Cordova wrapper with its WebView pointing to a remote static web site. Being static it can be hosted on whatever you need / want. It will be easy to update and it can be done in whatever your preference are in terms of MVW (AngularJS, React, etc.). Also minifing (e.g. with Gulp) the app with gulp could drammatically reduce the number of files: usually one js and one css.
Here an interesting article on how to load webviews in Cordova / PhoneGap.

Alternatively, you could run a local Web server on the tablet and configure it from a html page on your phone/laptop

I've created Pull Request #23 to allow for configuration from another device.

I've made the app configurable in-app before launch. There's pros/cons to my method, but I thought it would make it simpler as a stand-alone Google Play store app.
Please feel free to maintain a branched wireless sync version, but I'm going to close this issue for now.


Add hot water support to thermostat

Here in the UK, some models of the Nest Thermostat can control the hot water as well as the heating.
I can't currently see a way in the Google SDM API docs to control this, however I'm logging this as a place-holder so it can be added to Hubitat once it's available in the upstream API.

Hello, I am new on here.
As per the comment regarding nest thermostats within the UK, these have the ability to control hot water zones. Is there any update with this feature being added?


[Design principles] Put database server under a supervisor

https://www.erlang.org/doc/design_principles/users_guide.html

Done in https://github.com/ariel-anieli/flop/commit/b48d294f32828df3b52aab61de5f08d37e854be3


[CLI] Failures on install

I've run through the CLI install on a fresh 16.04 VM and got Success: 485, Failure: 6.
I ran through the upgrade afterwards and still had 6 failures, and then tried doing a pre-release upgrade, and again...6 failures.
Not sure what's hanging up.  I've attached the saltstack.log and results.yml.  Any help would be greatly appreciated.
results.yml.txt
saltstack.log.txt

It looks like you are getting CERTIFICATE_VERIFY_FAILED when trying to download a few files. Which is causing the failures.
Are you using a proxy server or anything else custom about this system?

There's nothing unusual on the system but it might be an issue due to the fact that I'm doing the build on the wireless at work.  I'll try it again from home tonight and see if that resolves it.

You were right.  The issue was a proxy one, but it was due to the way VirtualBox passes the connection to the VM.  I got it sorted thank you.

No problem. Have a good one.


feature request: Standard way for microk8s to communicate about a local registry

Many Kubernetes clusters support a local registry, to make pushing images directly to the cluster fast. But every cluster documents it with manual shell scripts:

https://kind.sigs.k8s.io/docs/user/local-registry/
https://microk8s.io/docs/registry-built-in
https://github.com/rancher/k3d/blob/master/docs/registries.md#using-a-local-registry
https://docs.openshift.com/container-platform/4.3/registry/accessing-the-registry.html#registry-accessing-directly_accessing-the-registry

Because every cluster is slightly different, this makes it hard for tools to automate this work for users.
The big idea
Clusters should use annotations on the kube-system namespace to document how to configure a registry
Detailed design
I propose 3 new "standard" annotations:
x-k8s.io/registry: the host of the registry (hostname and port), as seen from outside of the cluster
x-k8s.io/registry-from-cluster: the host of the registry (hostname and port), as seen from inside the cluster
x-k8s.io/registry-help: The URL of documentation where users can read more about how to set a registry up.
Tools that would benefit from local registries should read this annotation and display it to the user
What this means for microk8s
All microk8s clusters would have a registry-help annotation pointing users to https://microk8s.io/docs/registry-built-in
When you run microk8s enable registry, microk8s would automatically add the x-k8s.io/registry annotation to nodes in the cluster.
Prior Art
This proposal is based on what we've been recommending to people in Tilt, with a lot of success: https://docs.tilt.dev/choosing_clusters.html#custom-clusters
update 5/4 - changed the proposal to use the kube-system namespace instead of node annotations

I also filed this feature request here https://github.com/kubernetes-sigs/kind/issues/1543 and here https://github.com/rancher/k3d/issues/234, and would love other ideas on places I should post about this

Just to keep you all in the loop, sig-cluster-lifecycle has suggested I open a KEP for this to kick the tires more on the proposal.
But I also recognize that microk8s falls slightly outside the KEP process. Are the microk8s maintainers ok with that?

Hi @nicks
Thank you for the suggestion and apologies for the late response.
I am +1 to the idea of formalizing on the registry use. I see your proposal this is under discussion. As soon as we have something concrete we can test and ship we will gladly do so.
Here is some info that you might find useful during your investigation. The registry add-on is enabled with microk8s enable registry. The registry manifest is available in [1] and the installation script is [2]. If you want to produce a demo/PoC to showcase your approach you can either build the snap following the instructions at [3] or just submit a PR and have the github action part of the PR checks produce a microk8s.snap for you.
Let me know if there is anything else we can do to assist you.
Thank you.
[1] https://github.com/ubuntu/microk8s/blob/master/microk8s-resources/actions/registry.yaml
[2] https://github.com/ubuntu/microk8s/blob/master/microk8s-resources/actions/enable.registry.sh
[3] https://github.com/ubuntu/microk8s/blob/master/docs/build.md

Thanks! That's helpful info. I'm hopeful this will be minimal engineering work to add, most of the work is driving consensus.
KEP PR: https://github.com/kubernetes/enhancements/pull/1757
KEP tracking issue: https://github.com/kubernetes/enhancements/pull/1755

Hi @ktsakalozos ! I'm doing a last call for any major objections or things I overlooked before we merge the initial spec
https://github.com/kubernetes/enhancements/pull/1757
https://github.com/kubernetes/enhancements/blob/c5b6b632811c21ababa9e3565766b2d70614feec/keps/sig-cluster-lifecycle/generic/1755-communicating-a-local-registry/README.md#design-details
If you're OK with this proposal, a thumbs-up on the PR would be a help a lot! Thanks!

Looks good @nicks. You have my +1 on the PR.

The KEP has been marked implementable! I suspect it will be straightfoward to implement, and I think I understand the microk8s internals well enough to send a PR if that would help, but it might take me a little while to get to it.


Update dependencies when possible

How to

Update dependencies when not related to webpack 5.
Others

[x] It's not a hack or at least an unauthorized hack :).
[x] The images added are optimized.
[x] Everything in ticket description has been fixed.
[x] The author of the MR has made its own review before assigning the reviewer.
[x] The title means something for a human being.
[x] The title contains [WIP] if it's necessary.
[x] Labels applied. if it's a release? a hotfix?
[x] The new class' members & methods are well documented
[x] Tests added.

@danji90
Yes it was an example for testing purpose I deactuivate it then merge.


Add Poizon University of Technology

@Bagi4-source src/main/kotlin/swot/Swot.kt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

The swot.kt file used an deprecated method, I wanted to fix it at the same time(

@Bagi4-source Unfortunately, your request cannot be processed further because JetBrains doesn’t provide products or services to territories subject to applicable EU, UN, or US sanctions or under comprehensive export control restrictions due to legal, compliance, and other commercial risks.
I have to close the request. I appreciate your understanding.
As for using deprecating method, we'll check it out and correct if necessary. Thank you very much for the feedback.


License xor licenses (solution in favour of license)

Address issue #214 which discusses unhelpfulness and confusion caused by licenses property, simplifying it to use only license.

Seems a very reasonable and sensible simplification. One small request: since this is a breaking change can you note it in changelog at top of file and bump version number (to beta-14) and add that commit to this PR and we can then merge.

Will do.
@rgrp Would you like me to use the opportunity to incorporate #146 (which you seem to be in favour of in the comments of openspending/fiscal-data-package#21)?

@rgrp Version bumped with a note in changelog. I did not incorporate changes according to issue #146 but can add and rebase if you think I should.


Apache 2.4.23 not linked to brewed openssl but to system openssl (0.98zg) on yosemite 10.10.5

Apache 2.4.23 not linked to brewed openssl but to system openssl (0.98zg) on yosemite 10.10.5, even when using the --with-brewed-ssl option

There is no such option for the httpd24 Formula and as far as I can tell openssl is a strict dependency so it should build towards it without even asking.
➜  homebrew-php git:(master) brew options httpd24
--with-http2
	Build and enable the HTTP/2 shared Module
--with-ldap
	Include support for LDAP
--with-mpm-event
	Use the Event Multi-Processing Module instead of Prefork
--with-mpm-worker
	Use the Worker Multi-Processing Module instead of Prefork
--with-privileged-ports
	Use the default ports 80 and 443 (which require root privileges), instead of 8080 and 8443

➜  homebrew-php git:(master)

thanks for your time
In every case apache advertises itself as Apache 2.4.23 PHPxxx OpenSSL 0.9.8zg, so it has to have been linked against that library and not the brewed one.
Would deleting the entire home-brew files help on this?
Thanks
Please help because i am stuck with it.
Antonio

Can you do otool -L on your httpd binary and paste the output ?

here it is and again thanks
otool -L /usr/local/cellar/httpd24/2.4.23_2/bin/httpd
/usr/local/cellar/httpd24/2.4.23_2/bin/httpd:
/usr/local/opt/pcre/lib/libpcre.1.dylib (compatibility version 4.0.0, current version 4.7.0)
/usr/local/opt/apr-util/libexec/lib/libaprutil-1.0.dylib (compatibility version 6.0.0, current version 6.4.0)
/usr/lib/libexpat.1.dylib (compatibility version 7.0.0, current version 8.0.0)
/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
/usr/local/opt/apr/libexec/lib/libapr-1.0.dylib (compatibility version 6.0.0, current version 6.2.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)

Do you have the openssl formula installed ?

yes at as you can see
ls
apr		gettext		jansson		libmemcached	memcached	php70		xz
apr-util	git		jemalloc	libpng		mhash		pkg-config	zlib
boost		httpd24		jpeg		lua		nghttp2		readline
curl		icu4c		libev		makedepend	openssl		spdylay
freetype	imapsync	libevent	mcrypt		pcre		unixodbc
ls  /usr/local/cellar/openssl
1.0.2j

does brew doctor say anything out of the ordinary ?

And can you follwo the troubleshooting guide - https://github.com/Homebrew/brew/blob/master/docs/Troubleshooting.md and supply that information for the specific formula ?

this is brew doctor output
and thanks i'll try to follow that guide
Warning: gettext files detected at a system prefix.
These files can cause compilation and link failures, especially if they
are compiled with improper architectures. Consider removing these files:
/usr/local/lib/libgettextlib.dylib
/usr/local/lib/libintl.dylib
/usr/local/include/libintl.h
/usr/local/lib/libgettextlib.dylib
/usr/local/lib/libintl.dylib
/usr/local/include/libintl.h
Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected dylibs:
/usr/local/lib/libasprintf.0.dylib
/usr/local/lib/libgettextlib-0.18.3.dylib
/usr/local/lib/libgettextpo.0.dylib
/usr/local/lib/libgettextsrc-0.18.3.dylib
/usr/local/lib/libintl.8.dylib
/usr/local/lib/libjpeg.9.dylib
/usr/local/lib/libltdl.7.dylib
/usr/local/lib/libspf2.2.dylib
/usr/local/lib/libunicode.1.dylib
Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected header files:
/usr/local/include/autosprintf.h
/usr/local/include/gettext-po.h
/usr/local/include/libintl.h
/usr/local/include/libltdl/lt_dlloader.h
/usr/local/include/libltdl/lt_error.h
/usr/local/include/libltdl/lt_system.h
/usr/local/include/ltdl.h
/usr/local/include/proftpd/ascii.h
/usr/local/include/proftpd/auth.h
/usr/local/include/proftpd/bindings.h
/usr/local/include/proftpd/buildstamp.h
/usr/local/include/proftpd/child.h
/usr/local/include/proftpd/class.h
/usr/local/include/proftpd/cmd.h
/usr/local/include/proftpd/compat.h
/usr/local/include/proftpd/conf.h
/usr/local/include/proftpd/config.h
/usr/local/include/proftpd/ctrls.h
/usr/local/include/proftpd/data.h
/usr/local/include/proftpd/default_paths.h
/usr/local/include/proftpd/dirtree.h
/usr/local/include/proftpd/display.h
/usr/local/include/proftpd/encode.h
/usr/local/include/proftpd/env.h
/usr/local/include/proftpd/event.h
/usr/local/include/proftpd/expr.h
/usr/local/include/proftpd/feat.h
/usr/local/include/proftpd/filter.h
/usr/local/include/proftpd/fsio.h
/usr/local/include/proftpd/ftp.h
/usr/local/include/proftpd/glibc-glob.h
/usr/local/include/proftpd/help.h
/usr/local/include/proftpd/inet.h
/usr/local/include/proftpd/libsupp.h
/usr/local/include/proftpd/log.h
/usr/local/include/proftpd/memcache.h
/usr/local/include/proftpd/mkhome.h
/usr/local/include/proftpd/mod_ctrls.h
/usr/local/include/proftpd/mod_log.h
/usr/local/include/proftpd/mod_sql.h
/usr/local/include/proftpd/modules.h
/usr/local/include/proftpd/netacl.h
/usr/local/include/proftpd/netaddr.h
/usr/local/include/proftpd/netio.h
/usr/local/include/proftpd/options.h
/usr/local/include/proftpd/parser.h
/usr/local/include/proftpd/pidfile.h
/usr/local/include/proftpd/pool.h
/usr/local/include/proftpd/pr-syslog.h
/usr/local/include/proftpd/privs.h
/usr/local/include/proftpd/proctitle.h
/usr/local/include/proftpd/proftpd.h
/usr/local/include/proftpd/regexp.h
/usr/local/include/proftpd/response.h
/usr/local/include/proftpd/rlimit.h
/usr/local/include/proftpd/scoreboard.h
/usr/local/include/proftpd/session.h
/usr/local/include/proftpd/sets.h
/usr/local/include/proftpd/stash.h
/usr/local/include/proftpd/str.h
/usr/local/include/proftpd/support.h
/usr/local/include/proftpd/table.h
/usr/local/include/proftpd/throttle.h
/usr/local/include/proftpd/timers.h
/usr/local/include/proftpd/tpl.h
/usr/local/include/proftpd/trace.h
/usr/local/include/proftpd/var.h
/usr/local/include/proftpd/version.h
/usr/local/include/proftpd/xferlog.h
/usr/local/include/spf2/spf.h
/usr/local/include/spf2/spf_dns.h
/usr/local/include/spf2/spf_dns_cache.h
/usr/local/include/spf2/spf_dns_null.h
/usr/local/include/spf2/spf_dns_resolv.h
/usr/local/include/spf2/spf_dns_rr.h
/usr/local/include/spf2/spf_dns_test.h
/usr/local/include/spf2/spf_dns_zone.h
/usr/local/include/spf2/spf_lib_version.h
/usr/local/include/spf2/spf_log.h
/usr/local/include/spf2/spf_record.h
/usr/local/include/spf2/spf_request.h
/usr/local/include/spf2/spf_response.h
/usr/local/include/spf2/spf_server.h
/usr/local/include/unicode.h
Warning: Unbrewed .la files were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected .la files:
/usr/local/lib/libasprintf.la
/usr/local/lib/libgettextlib.la
/usr/local/lib/libgettextpo.la
/usr/local/lib/libgettextsrc.la
/usr/local/lib/libintl.la
/usr/local/lib/libjpeg.la
/usr/local/lib/libltdl.la
/usr/local/lib/libspf2.la
/usr/local/lib/libunicode.la
Warning: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected .pc files:
/usr/local/lib/pkgconfig/proftpd.pc
Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected static libraries:
/usr/local/lib/libasprintf.a
/usr/local/lib/libgettextpo.a
/usr/local/lib/libintl.a
/usr/local/lib/libltdl.a
/usr/local/lib/libspf2.a
/usr/local/lib/libunicode.a

Are you using other packaging systems other then brew ? There are a lot of warnings in brew doctor.

no no packaging systems other than homebrew.
I just installed few pre-built packages like proftpd and few others

here are the checks i made
brew config
HOMEBREW_VERSION: 1.0.7-13-g1a01a4d
ORIGIN: https://github.com/Homebrew/brew.git
HEAD: 1a01a4d42d8103e0a88a267546d011b2f3b5c886
Last commit: 26 hours ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: e0a378e7bc5e6b1cc825e93d6bef8e55424af7c4
Core tap last commit: 25 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_REPOSITORY: /usr/local/Homebrew
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com
CPU: quad-core 64-bit haswell
Homebrew Ruby: 2.0.0-p481
Clang: 7.0 build 700
Git: 2.10.1 => /usr/local/bin/git
Perl: /usr/bin/perl
Python: /usr/bin/python
Ruby: /usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
Java: N/A
macOS: 10.10.5-x86_64
Xcode: 7.2.1
CLT: <IP_ADDRESS>.1.1447826929
X11: N/A
brew gist-logs httpd24
https://gist.github.com/3b625f1546f6dc5e8621a842d28eec60
brew gist-logs openssl
Error: No logs.

Something is wrong here. Can you verify that your path is correct by issuing httpd -V and paste the output ?

here it is
Server version: Apache/2.4.23 (Unix)
Server built:   Oct 12 2016 09:05:08
Server's Module Magic Number: 20120211:61
Server loaded:  APR 1.5.2, APR-UTIL 1.5.4
Compiled using: APR 1.5.2, APR-UTIL 1.5.4
Architecture:   64-bit
Server MPM:     prefork
threaded:     no
forked:     yes (variable process count)
Server compiled with....
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=256
-D HTTPD_ROOT="/usr/local/Cellar/httpd24/2.4.23_2"
-D SUEXEC_BIN="/usr/local/Cellar/httpd24/2.4.23_2/bin/suexec"
-D DEFAULT_PIDLOG="/usr/local/var/run/apache2/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="/usr/local/etc/apache2/2.4/mime.types"
-D SERVER_CONFIG_FILE="/usr/local/etc/apache2/2.4/httpd.conf"
Thanks
Antonio

and how do you know that its linked against the 0.9.8 version ?

because of the way apache announces itself in php
Configuration
apache2handler
Apache Version	Apache/2.4.23 (Unix) PHP/7.0.11 OpenSSL/0.9.8zg
Apache API Version	20120211
HTTPS	on
SSL_TLS_SNI	machost.it
HTTP_HOST	machost.it
HTTP_ACCEPT_ENCODING	gzip, deflate
HTTP_ACCEPT	text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
HTTP_USER_AGENT	Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Safari/602.1.50
HTTP_ACCEPT_LANGUAGE	en-us
HTTP_CACHE_CONTROL	max-age=0
HTTP_CONNECTION	keep-alive
PATH	/usr/bin:/bin:/usr/sbin:/sbin
SERVER_SIGNATURE	no value
SERVER_SOFTWARE	Apache/2.4.23 (Unix) PHP/7.0.11 OpenSSL/0.9.8zg
instead
in the openssl part
openssl
OpenSSL support	enabled
OpenSSL Library Version	OpenSSL 1.0.2j 26 Sep 2016
OpenSSL Header Version	OpenSSL 1.0.2j 26 Sep 2016
Openssl default config	/usr/local/etc/openssl/openssl.cnf
so it has to be something wrong, also because the apache SSLClientVerify was working great before upgrading home-brew and now connection is dropped by apache saying renegotiation handshake failed.
Thanks for your patience and support
Antonio

I noticed that your logs contain this configure: WARNING: Your APR does not include SSL/EVP support. To enable it: configure --with-crypto - maybe that is related. The related package is apr-util but it should build with openssl support as standard but it doesn't use the --crypto flag.

Sorry but I'm unable to read that warning anywhere.
Should I brew apr-util anyway with that option?

You can't since it isn't an option. I'm looking at it now and it seems to have been overlooked in the Formula and needs to have --with-crypto added. You could try and do brew edit apr-util , add the --with-crypto option, brew reinstall apr-util and then try to install httpd24 again and see if it changes.

You should be able to see the error in your gist log if you search for it there.

@tangerine62 did you get anywhere ? =)

Thanks for getting back to me
No I didn't
I guess tomorrow I'll completely delete home brew and I'll see what it will happen
Unless you have a better idea
Thanks for your support
Antonio
Inviato da iPhone

Il giorno 14 ott 2016, alle ore 21:43, Jan Viljanen<EMAIL_ADDRESS>ha scritto:
@tangerine62 did you get anywhere ? =)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

The setting update has been merged into apr-util now so you should be able to test it without modifying your system.

Can you also check otool -L /usr/local/opt/httpd24/bin/ab and paste it here ?

Here is the output for 	otool -L /usr/local/opt/httpd24/bin/ab
Thank you
/usr/local/opt/openssl/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/local/opt/apr-util/libexec/lib/libaprutil-1.0.dylib (compatibility version 6.0.0, current version 6.4.0)
/usr/lib/libexpat.1.dylib (compatibility version 7.0.0, current version 8.0.0)
/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
/usr/local/opt/apr/libexec/lib/libapr-1.0.dylib (compatibility version 6.0.0, current version 6.2.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)

So ab picks up openssl as it should. Are you using a clean apache config when testing ?

sorry for the delay but the email notification got in spam so I didn't see it.
What do you mean a clean apache config? A stock httpd.conf?

Yes. As in are you using a custom httpd config ?

yes and it follows here only for the relevant domain:
This is the main Apache HTTP server configuration file.  It contains the
configuration directives that give the server its instructions.
See URL:http://httpd.apache.org/docs/2.4/ for detailed information.
In particular, see
URL:http://httpd.apache.org/docs/2.4/mod/directives.html
for a discussion of each configuration directive.

Do NOT simply read the instructions in here without understanding
what they do.  They're here only as hints or reminders.  If you are unsure
consult the online docs. You have been warned.

Configuration and logfile names: If the filenames you specify for many
of the server's control files begin with "/" (or "drive:/" for Win32), the
server will use that explicit path.  If the filenames do not begin
with "/", the value of ServerRoot is prepended -- so "logs/access_log"
with ServerRoot set to "/usr/local/apache2" will be interpreted by the
server as "/usr/local/apache2/logs/access_log", whereas "/logs/access_log"
will be interpreted as '/logs/access_log'.

ServerRoot: The top of the directory tree under which the server's
configuration, error, and log files are kept.

Do not add a slash at the end of the directory path.  If you point
ServerRoot at a non-local disk, be sure to specify a local disk on the
Mutex directive, if file-based mutexes are used.  If you wish to share the
same ServerRoot for multiple httpd daemons, you will need to change at
least PidFile.

ServerRoot "/usr/local/opt/httpd24"

Mutex: Allows you to set the mutex mechanism and mutex file directory
for individual mutexes, or change the global defaults

Uncomment and change the directory if mutexes are file-based and the default
mutex file directory is not on a local disk or is not appropriate for some
other reason.

Mutex default:/usr/local/var/run/apache2

Listen: Allows you to bind Apache to specific IP addresses and/or
ports, instead of the default. See also the
directive.

Change this to Listen on specific IP addresses as shown below to
prevent Apache from glomming onto all bound IP addresses.

#Listen <IP_ADDRESS>:80
Listen 80

Dynamic Shared Object (DSO) Support

To be able to use the functionality of a module which was built as a DSO you
have to place corresponding `LoadModule' lines at this location so the
directives contained in it are actually available before they are used.
Statically compiled modules (those listed by `httpd -l') do not need
to be loaded here.

#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User _www
Group _www

'Main' server configuration

The directives in this section set up the values used by the 'main'
server, which responds to any requests that aren't handled by a
 definition.  These values also provide defaults for
any  containers you may define later in the file.

All of these directives may appear inside  containers,
in which case these default settings will be overridden for the
virtual host being defined.

ServerAdmin: Your address, where problems with the server should be
e-mailed.  This address appears on some server-generated pages, such
as error documents.  e.g<EMAIL_ADDRESS>
ServerAdmin<EMAIL_ADDRESS>
ServerName gives the name and port that the server uses to identify itself.
This can often be determined automatically, but we recommend you specify
it explicitly to prevent problems during startup.

If your host doesn't have a registered DNS name, enter its IP address here.

ServerName xxx.xxx.xxx.xxx:80
Header add Strict-Transport-Security "max-age=15768000;includeSubDomains"

Deny access to the entirety of your server's filesystem. You must
explicitly permit access to web content directories in other
 blocks below.

    AllowOverride none
    Require all denied

Note that from this point forward you must specifically allow
particular features to be enabled - so if something's not working as
you might expect, make sure that you have specifically enabled it
below.

DocumentRoot: The directory out of which you will serve your
documents. By default, all requests are taken from this directory, but
symbolic links and aliases may be used to point to other locations.

DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named explicitly --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important.  Please see
# http://httpd.apache.org/docs/2.4/mod/core.html#options
# for more information.
#
Options FollowSymLinks Multiviews
MultiviewsMatch Any
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride None

#
# Controls who can get stuff from this server.
#
Require all granted

DirectoryIndex: sets the file that Apache will serve if a directory
is requested.

    DirectoryIndex index.html

The following lines prevent .htaccess and .htpasswd files from being
viewed by Web clients.

<FilesMatch "^.([Hh][Tt]|[Dd][Ss]_[Ss])">
Require all denied

Apple specific filesystem protection.

<Files "rsrc">
Require all denied

<DirectoryMatch ".*..namedfork">
Require all denied

ErrorLog: The location of the error log file.
If you do not specify an ErrorLog directive within a
container, error messages relating to that virtual host will be
logged here.  If you do define an error logfile for a
container, that host's errors will be logged there and not here.

ErrorLog "/private/var/log/apache2/error_log"

LogLevel: Control the number of messages logged to the error_log.
Possible values include: debug, info, notice, warn, error, crit,
alert, emerg.

LogLevel warn

    #
    # The following directives define some format nicknames for use with
    # a CustomLog directive (see below).
    #
    LogFormat "%h %v %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %v %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
  # You need to enable mod_logio.c to use %I and %O
  LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>

#
# The location and format of the access logfile (Common Logfile Format).
# If you do not define any access logfiles within a <VirtualHost>
# container, they will be logged here.  Contrariwise, if you *do*
# define per-<VirtualHost> access logfiles, transactions will be
# logged therein and *not* in this file.
#
#CustomLog "/private/var/log/apache2/access_log" common

#
# If you prefer a logfile with access, agent, and referer information
# (Combined Logfile Format) you can use the following directive.
#
CustomLog "/private/var/log/apache2/access_log" combined

    #
    # Redirect: Allows you to tell clients about documents that used to
    # exist in your server's namespace, but do not anymore. The client
    # will make a new request for the document at its new location.
    # Example:
    # Redirect permanent /foo http://www.example.com/bar
#
# Alias: Maps web paths into filesystem paths and is used to
# access content that does not live under the DocumentRoot.
# Example:
# Alias /webpath /full/filesystem/path
#
# If you include a trailing / on /webpath then the server will
# require it to be present in the URL.  You will also likely
# need to provide a <Directory> section to allow access to
# the filesystem path.

#
# ScriptAlias: This controls which directories contain server scripts.
# ScriptAliases are essentially the same as Aliases, except that
# documents in the target directory are treated as applications and
# run by the server when requested rather than as documents sent to the
# client.  The same rules about trailing "/" apply to ScriptAlias
# directives as to Alias.
#
ScriptAliasMatch ^/cgi-bin/((?!(?i:webobjects)).*$) "/Library/WebServer/CGI-Executables/$1"

    #
    # ScriptSock: On threaded servers, designate the path to the UNIX
    # socket used to communicate with the CGI daemon of mod_cgid.
    #
    #Scriptsock cgisock

"/Library/WebServer/CGI-Executables" should be changed to whatever your ScriptAliased
CGI directory exists, if you have that configured.

<Directory "/Library/WebServer/CGI-Executables">
AllowOverride None
Options None
Require all granted

    #
    # TypesConfig points to the file containing the list of mappings from
    # filename extension to MIME-type.
    #
    TypesConfig /private/etc/apache2/mime.types
#
# AddType allows you to add to or override the MIME configuration
# file specified in TypesConfig for specific file types.
#
#AddType application/x-gzip .tgz
#
# AddEncoding allows you to have certain browsers uncompress
# information on the fly. Note: Not all browsers support this.
#
#AddEncoding x-compress .Z
#AddEncoding x-gzip .gz .tgz
#
# If the AddEncoding directives above are commented-out, then you
# probably should define those extensions to indicate media types:
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz

AddType application/x-httpd-php .php
#
# AddHandler allows you to map certain file extensions to "handlers":
# actions unrelated to filetype. These can be either built into the server
# or added with the Action directive (see below)
#
# To use CGI scripts outside of ScriptAliased directories:
# (You will also need to add "ExecCGI" to the "Options" directive.)
#
#AddHandler cgi-script .cgi
# For type maps (negotiated resources):
#AddHandler type-map var

#
# Filters allow you to process content before it is sent to the client.
#
# To parse .shtml files for server-side includes (SSI):
# (You will also need to add "Includes" to the "Options" directive.)
#
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml

The mod_mime_magic module allows the server to use various hints from the
contents of the file itself to determine its type.  The MIMEMagicFile
directive tells the module where the hint definitions are located.

#MIMEMagicFile /private/etc/apache2/magic

Customizable error responses come in three flavors:
1) plain text 2) local redirects 3) external redirects

Some examples:
#ErrorDocument 500 "The server made a boo boo."
#ErrorDocument 404 /missing.html
#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
#ErrorDocument 402 http://www.example.com/subscription_info.html

MaxRanges: Maximum number of Ranges in a request before
returning the entire resource, or one of the special
values 'default', 'none' or 'unlimited'.
Default setting is to accept 200 Ranges.
#MaxRanges unlimited

EnableMMAP and EnableSendfile: On systems that support it,
memory-mapping or the sendfile syscall may be used to deliver
files.  This usually improves server performance, but must
be turned off when serving from networked-mounted
filesystems or if support for these functions is otherwise
broken on your system.
Defaults: EnableMMAP On, EnableSendfile Off

#EnableMMAP off
#EnableSendfile on
TraceEnable off
Supplemental configuration

The configuration files in the /private/etc/apache2/extra/ directory can be
included to add extra features or to modify the default configuration of
the server, or you may simply copy their contents here and change as
necessary.
Server-pool management (MPM specific)
Include /private/etc/apache2/extra/httpd-mpm.conf
Multi-language error messages
#Include /private/etc/apache2/extra/httpd-multilang-errordoc.conf
Fancy directory listings
Include /private/etc/apache2/extra/httpd-autoindex.conf
Language settings
#Include /private/etc/apache2/extra/httpd-languages.conf
User home directories
#Include /private/etc/apache2/extra/httpd-userdir.conf
Real-time info on requests and configuration
#Include /private/etc/apache2/extra/httpd-info.conf
Virtual hosts
#Include /private/etc/apache2/extra/httpd-vhosts.conf
Local access to the Apache HTTP Server Manual
#Include /private/etc/apache2/extra/httpd-manual.conf
Distributed authoring and versioning (WebDAV)
#Include /private/etc/apache2/extra/httpd-dav.conf
Various default settings
#Include /private/etc/apache2/extra/httpd-default.conf
Configure mod_proxy_html to understand HTML4/XHTML1

Include /private/etc/apache2/extra/proxy-html.conf

Secure (SSL/TLS) connections
Include /private/etc/apache2/extra/httpd-ssl.conf

Note: The following must must be present to support
starting without SSL on platforms with no /dev/random equivalent
but a statically compiled-in mod_ssl.

SSLRandomSeed startup builtin
SSLRandomSeed connect builtin

Include /private/etc/apache2/other/*.conf

uncomment out the below to deal with user agents that deliberately
violate open standards by misusing DNT (DNT must be a specific
end-user choice)

#
#BrowserMatch "MSIE 10.0;" bad_DNT
#
#
#RequestHeader unset DNT env=bad_DNT
#
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript image/png image/jpeg image/gif image/jpg
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI ".(?:gif|jpe?g|png)$" no-gzip
<VirtualHost *:80>
DocumentRoot /Library/webserver/documents/
DirectoryIndex index.html index.htm
<Directory /Library/webserver/documents/>
Require all granted

<VirtualHost *:80>
ServerName mycustom.servername.com
ServerAlias mycustom.servername.com
DocumentRoot /Library/webserver/documents/bmp/
DirectoryIndex index.html index.htm index.php index.php4 index.php5
<Directory /Library/webserver/documents/bmp>
Require all granted
AllowOverride All
Options IncludesNOEXEC FollowSymLinks

<VirtualHost *:443>
ServerName mycustom.servername.com
DocumentRoot /Library/webserver/documents/bmp/
DirectoryIndex index.html index.htm index.php index.php4 index.php5
Enable expirations
ExpiresActive On
Default directive
######ExpiresDefault "access plus 1 month"
My favicon
####ExpiresByType image/x-icon "access plus 1 year”
Images
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
CSS
####ExpiresByType text/css "access 1 month”
Javascript
###ExpiresByType application/javascript "access plus 1 year"
SSLEngine On
SSLProtocol All -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH EDH+aRSA !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"
SSLCertificateFile /etc/apache2/extra/certs/.mycustom.servername.com.it.crt
SSLCertificateKeyFile /etc/apache2/extra/certs/.mycustom.servername.com.it.key
#SSLCACertificateFile /etc/apache2/extra/certs/sub.class2.server.ca-3.pem
#SSLCACertificateFile /etc/apache2/extra/certs/startcomc2.crt
#SSLVerifyClient optional_no_ca
#optional_no_ca
#optional_no_ca
#SSLVerifyDepth  10
#CacheDisable /au/
#SSLOptions +ExportCertData +StdEnvVars
<Directory /Library/webserver/documents/bmp/>
Require all granted
AllowOverride All
Options IncludesNOEXEC FollowSymLinks

<Directory /Library/webserver/documents/bmp/reg>
LogLevel debug
AllowOverride none
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH EDH+aRSA !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"
SSLVerifyClient optional_no_ca
#optional_no_ca
#optional_no_ca
#SSLVerifyDepth  10
SSLOptions +StdEnvVars

I tried on a freshly installed Yosemite, freshly installed home-brew and results are the same.
php_info() returns
SERVER_SOFTWARE	Apache/2.4.23 (Unix) OpenSSL/0.9.8zg PHP/5.6.27
which openssl returns /usr/bin/openssl
openssl version returns
OpenSSL 0.9.8zg 14 July 2015
echo $PATH returns
/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
Thank you for your help

I confirm to experience the same behavior. I have several different Homebrew installations on my system (in non standard paths).  (I build different "LAMP" toolchains using Homebrew.)
When running phpinfo I see that my Apache reports the System version of OpenSSL ("Apache/2.4.23 (Unix) OpenSSL/0.9.8zh PHP/7.0.12") while PHP for example reports the OpenSSL version shipped with Homebrew "OpenSSL 1.0.2j 26 Sep 2016".
I can see that Apache is built correctly in the http24.rb forumla regarding OpenSSL. So the iss might not be that obvious ;-).

@sandrinr which OS are you on ? I haven't looked into all the dependencies but it might be one of the other ones.

While restarting the server today I noticed this:
Fri Oct 21 11:50:36.533201 2016] [ssl:warn] [pid 76] AH01882: Init: this version of mod_ssl was compiled against a newer library (OpenSSL 1.0.2j  26 Sep 2016, version currently loaded is OpenSSL 0.9.8zg 14 July 2015) - may result in undefined or erroneous behavior
Thanks

@javian I am running this on OSX El Capitan (10.11.6)

Can you share the contents of /usr/local/etc/apache/2.4/envvars ?

As I wrote earlier, my Homebrew installation is not in the standard location /usr/local because I am using multiple Homebrew installations at the same time. So, I will paste you the file from the relevant installation:
$ cat /opt/origammi-toolchain/lamp-apache24-mysql57-php70-es17/homebrew/etc/apache2/2.4/envvars
[...]
if test "x$DYLD_LIBRARY_PATH" != "x" ; then
  DYLD_LIBRARY_PATH="/opt/origammi-toolchain/lamp-apache24-mysql57-php70-es17/homebrew/Cellar/httpd24/2.4.23_2/lib:$DYLD_LIBRARY_PATH"
else
  DYLD_LIBRARY_PATH="/opt/origammi-toolchain/lamp-apache24-mysql57-php70-es17/homebrew/Cellar/httpd24/2.4.23_2/lib"
fi
export DYLD_LIBRARY_PATH
#

here its mine
cat /usr/local/etc/apache2/2.4/envvars
if test "x$DYLD_LIBRARY_PATH" != "x" ; then
DYLD_LIBRARY_PATH="/usr/local/Cellar/httpd24/2.4.18/lib:$DYLD_LIBRARY_PATH"
else
DYLD_LIBRARY_PATH="/usr/local/Cellar/httpd24/2.4.18/lib"
fi
export DYLD_LIBRARY_PATH

Please note that that folder doesn't exist on my machine, having installed the 2.4.23_2 version only on it.

@tangerine62 could you try appending /usr/local/lib to both those lines and see if it changes anything ? I'm wondering if it doesn't find a library for some reason that would be located in /usr/local/lib.

And the 2.4.18 is the same on my machine now that I look at it so I'm not sure what's up with that.

I tried wiping out the etc directory and reinstalling apache, put back httpd.conf and restarted
now cat produces the right output
if test "x$DYLD_LIBRARY_PATH" != "x" ; then
DYLD_LIBRARY_PATH="/usr/local/Cellar/httpd24/2.4.23_2/lib:$DYLD_LIBRARY_PATH"
else
DYLD_LIBRARY_PATH="/usr/local/Cellar/httpd24/2.4.23_2/lib"
fi
export DYLD_LIBRARY_PATH
but still openssl isn't working properly
Apache/2.4.23 (Unix) PHP/5.6.27 OpenSSL/0.9.8zg
sigh

I also tried on an an El Capitan upgrade from Yosemite machine and behaviour its the same
I tried on a fresh El Capitan installed machine and behaviour its the same
Right now its only works for me on Sierra
Thanks

Did you try the modification I suggested ?
Change the envvars file to this
DYLD_LIBRARY_PATH="/usr/local/lib:/usr/local/Cellar/httpd24/2.4.23_2/lib:$DYLD_LIBRARY_PATH"
else
DYLD_LIBRARY_PATH="/usr/local/lib:/usr/local/Cellar/httpd24/2.4.23_2/lib"

and see if that makes a difference ?
I don't have an el cap machine to test on at the moment but I might be able to a get a hold of one.

After modifying envvars on Yosemite I get this error
httpd: Syntax error on line 172 of /usr/local/etc/apache2/2.4/httpd.conf: Cannot load /usr/local/opt/php56/libexec/apache2/libphp5.so into server: dlopen(/usr/local/opt/php56/libexec/apache2/libphp5.so, 10): Symbol not found: __cg_jpeg_resync_to_restart\n  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib\n  Expected in: /usr/local/lib/libjpeg.8.dylib\n in /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
Putting it back to initial values all is ok

Is this issue still unresolved? No workarounds?
Thanks

I've managed to reproduce it but not found a solution yet.

One cheap way to get around this is to statically compile SSL support into Apache. Adding the following to the httpd24 formula fixed the OpenSSL mismatch:
  --enable-ssl-staticlib-deps
  --enable-mods-static=ssl

You may have to adjust your httpd.conf afterward if you are trying to include the now nonexistent ssl module.

Thank I'll try

It worked flawlessly
Thanks

hmm in my case these options do not exist
brew options httpd24 --with-http2 	Build and enable the HTTP/2 shared Module --with-ldap 	Include support for LDAP --with-mpm-event 	Use the Event Multi-Processing Module instead of Prefork --with-mpm-worker 	Use the Worker Multi-Processing Module instead of Prefork --with-privileged-ports 	Use the default ports 80 and 443 (which require root privileges), instead of 8080 and 8443

I have the same issue on Sierra.
Any updates/solutions?

This tap is now deprecated in favour of the httpd formula installed and working after https://github.com/Homebrew/homebrew-core/pull/17726 (which works on Sierra and High Sierra).


feat(cheatcodes): add ens namehash cheatcode

Motivation

Useful when testing ens related code
Solution
Add a cheatcode for namehash.

unrelated failure?

yes


[Doc] Better doc for the onCellClick event (also usable on )

Small addition to the docs, I had troubles setting an onClick event on a <TableRowColumn> from the header. Turns out the correct approach was using a onCellClick on the <TableRow> of my header.
This isn't in the docs.

The doc of the table is confusion. There is different component but only one section for event. I think that the doc for event should be split for each component.

@kamek-pf - the format of the docs has changed considerably, and onCellClick is now documented (automatically from comments in the source code).
I'll close this PR, but if you feel anything isn't clear in the new docs, feel free to open a new issue to discuss.


Checkpointing functionality for Logic App Event Hub connector

I am not able to find any information about whether or not the Event Hub connector for Logic Apps inherently provides checkpointing functionality.  If it does, I was wondering if you could explicitly state that on this page?
Thanks!

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

ID: 6606f6c7-6243-13d6-9fde-15f387f0e331
Version Independent ID: 875d1e7a-abbc-6cee-e7af-0f9786769917
Content: Connect to Azure Event Hubs - Azure Logic Apps
Content Source: articles/connectors/connectors-create-api-azure-event-hubs.md
Service: logic-apps
GitHub Login: @ecfan
Microsoft Alias: estfan

@mlcooper Thank you for your feedback! We will review and update as appropriate.

@mlcooper I've reached out to the connector internally for confirmation. I'll update as soon as there's new information available.

@mlcooper I confirmed with the Logic Apps team that the Checkpointing is supported and we will be adding more info on the following doc: https://docs.microsoft.com/en-us/azure/connectors/connectors-create-api-azure-event-hubs

Hi @mlcooper,
An update will go live later today that has this section:
Trigger checkpoint behavior
When an Event Hubs trigger reads events from each partition in an event hub, the trigger users its own state to maintain information about the stream offset (the event position in a partition) and the partitions from where the trigger reads events.
Each time your workflow runs, the trigger reads events from a partition, starting from the stream offset that's kept by the trigger state. In round-robin fashion, the trigger iterates over each partition in the event hub and reads events in subsequent trigger runs. A single run gets events from a single partition at a time.
The trigger doesn't use this checkpoint capability in storage, resulting in no extra cost. However, the key point is that updating the Event Hubs trigger resets the trigger's state, which might cause the trigger to read events at start of the stream.


Add ability to choose equipment via search on SPOT Report

Right now there is a pre-defined list of equipment to choose from.  Need a way to modify/configure that list and also search for the appropriate symbol to use.

Backlog item - https://app.asana.com/0/23019535413944/23192032216687