text:
Resize local images

Is there a way to resize local images on a page? For example something like
![Image1](/MyImage.PNG){width=30}
I have tried with embedded html, following the steps described in the Google group post

but it doesn't find the image on the local machine. I also tried stripping out the first part of the path (just like it does if I choose an image from the selector), but still no luck.

Strangely, it works fine if the source is from the web

What is your attachments path in your configuration? That's the path you use in your img tag

My attachments folder is configured as "~/App_Data/Attachments", but the image does not come in when I use "~/App_Data/Attachments/MyImage.PNG" or "/App_Data/Attachments/MyImage.PNG" in the img tag.

You don't need the app_data part, just /attachments

No luck with that either:

Can you upload files?

I can upload files and I can imbed images with markdown. This works fine, for example
![Image1](/MyImage.PNG)

What is the src  attribute for the image tags those produce?

Great question. The generated HTML is

I can put that directly into my wiki page and it allows me to resize. Thanks so much for your help!

authors: thomastwoodward yetanotherchris

repo: roadkillwiki/roadkill

license: MS-PL


text:
Postgres enabled by default ?

Using a docker based set-up, is roapi able to connect to postgres ? Or does it need a custom build similar to mysql ?
Couldn't find this info in any docs, so TIA for any help / direction you can provide.
While trying with the latest build, I see below in logs when attempting a postgres db connection.
msg: "unsupported extension in uri: postgres://........

the scheme is postgresql instead of postgres, you can add support for both updating the line at https://github.com/roapi/roapi/blob/c1e26a84d1cd23f0776655707c3fb0936a0b5a26/columnq/src/table/mod.rs#L538

I forgot to mention this earlier, but even trying with postgresql as the scheme did not work.
Is postgresql supported in the default docker image ? or does this need a custom build like mysql ?
I have tried, all of them did not work.
uri: "postgres://user:password@postgres:5432/databasename"
uri: "postgres://user:password@postgres:5432/default/databasename"
uri: "postgresql://user:password@postgres:5432/databasename"
uri: "postgresql://user:password@postgres:5432/default/databasename"

source: gharchive/issue

authors: accforgithubtest houqp

repo: roapi/roapi

license_type: permissive

license_source: github-api


text:
paging for FTS, is it possible?

Hello there, sorry to bother you rob =(
How should I set limit/offset/order and how to count affected rows when querying with table.search?
db.users.search({columns :["email"], term: "rob"}, function(err,users){
  //all users with the word 'rob' in their email
});

I tried the same interface/contract for .find (providing a options object) but it didn't worked out

Good question :) I don't think it's built in yet for Full Text search. I might suggest using a SQL file for this - create the query you need then call it directly; better then muscling though an abstraction.

Thank you such @robconery :dancer:

authors: lfreneda robconery

repo: robconery/massive-js

license_source: bigquery


text:
🛑 Divulgación de la Ciencia UNAM is down

In 5673e9e, Divulgación de la Ciencia UNAM (http://www.dgdc.unam.mx) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Divulgación de la Ciencia UNAM is back up in ba82019.

repo: robertormzg/upptime-dgdc

license: MIT


text:
UploadStreamAsync doesn'exists

UploadStreamAsync doesn'exists. But in documentation says that exists:
https://github.com/robinrodricks/FluentFTP/wiki/Class-FtpClient-Upload

Version 46.0.2.0
.Net Core 6.0

Really a documentation is incorrect.
And I also didn't even remember that there is an AsyncFtpClient. I'm doing things on the run today, so in my rush I ended up hitting my face against the wall.

Done @LeonardoDaLuz, thanks for reporting.

Deleted outdated docs that we cannot maintain.
https://github.com/robinrodricks/FluentFTP/wiki/Classes
https://github.com/robinrodricks/FluentFTP/wiki/Enums

authors: LeonardoDaLuz robinrodricks

repo: robinrodricks/FluentFTP


text:
error adding symbols: Bad value

I'm trying to install taglib-ruby and running into errors. I'm compiling against TagLib 1.11.1. I've tried recompiling TagLib with the -fPIC flag, and also tried export CXXFLAGS="$CXXFLAGS -fPIC" but still see the same error:
$ gem install taglib-ruby
Building native extensions. This could take a while...
ERROR:  Error installing taglib-ruby:
	ERROR: Failed to build gem native extension.

    current directory: /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1/ext/taglib_base
/home/fletch/.rvm/rubies/ruby-2.7.1/bin/ruby -I /home/fletch/.rvm/rubies/ruby-2.7.1/lib/ruby/site_ruby/2.7.0 -r ./siteconf20201208-23994-y7hymq.rb extconf.rb
checking for -lstdc++... yes
checking for -ltag... yes
creating Makefile

current directory: /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1/ext/taglib_base
make "DESTDIR=" clean

current directory: /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1/ext/taglib_base
make "DESTDIR="
compiling taglib_base_wrap.cxx
taglib_base_wrap.cxx: In function ‘int SWIG_AsVal_unsigned_SS_long(VALUE, long unsigned int*)’:
taglib_base_wrap.cxx:2101:104: warning: ‘VALUE ruby::backward::cxxanyargs::rb_rescue(VALUE (*)(...), VALUE, VALUE (*)(...), VALUE)’ is deprecated: Use of ANYARGS in this function is deprecated [-Wdeprecated-declarations]
     if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2ULONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
                                                                                ^
In file included from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/ruby.h:2863:0,
                 from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby.h:33,
                 from taglib_base_wrap.cxx:874:
/home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/backward/cxxanyargs.hpp:198:1: note: declared here
 rb_rescue(type *q, VALUE w, type *e, VALUE r)
 ^
taglib_base_wrap.cxx: In function ‘int SWIG_AsVal_long(VALUE, long int*)’:
taglib_base_wrap.cxx:2153:103: warning: ‘VALUE ruby::backward::cxxanyargs::rb_rescue(VALUE (*)(...), VALUE, VALUE (*)(...), VALUE)’ is deprecated: Use of ANYARGS in this function is deprecated [-Wdeprecated-declarations]
     if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2LONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
                                                                                ^
In file included from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/ruby.h:2863:0,
                 from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby.h:33,
                 from taglib_base_wrap.cxx:874:
/home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/backward/cxxanyargs.hpp:198:1: note: declared here
 rb_rescue(type *q, VALUE w, type *e, VALUE r)
 ^
linking shared-object taglib_base.so
/usr/bin/ld: /usr/local/lib/libtag.a(tstring.cpp.o): relocation R_X86_64_32S against `_ZTVN6TagLib6StringE' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libtag.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
Makefile:260: recipe for target 'taglib_base.so' failed
make: *** [taglib_base.so] Error 1

make failed, exit code 2

Gem files will remain installed in /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1 for inspection.
Results logged to /home/fletch/.rvm/gems/ruby-2.7.1/extensions/x86_64-linux/2.7.0/taglib-ruby-1.0.1/gem_make.out

Maybe try getting -fPIC into taglib-ruby's cflags? For example by setting
CFLAGS=-fPIC when you compile the gem?
Op di 8 dec. 2020 om 20:58 schreef Robert Fletcher <notifications@github.com

:

I'm trying to install taglib-ruby and running into errors. I'm compiling
against TagLib 1.11.1. I've tried recompiling TagLib with the -fPIC flag,
and also tried export CXXFLAGS="$CXXFLAGS -fPIC" but still see the same
error:
$ gem install taglib-ruby
Building native extensions. This could take a while...
ERROR:  Error installing taglib-ruby:
ERROR: Failed to build gem native extension.
current directory: /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1/ext/taglib_base

/home/fletch/.rvm/rubies/ruby-2.7.1/bin/ruby -I /home/fletch/.rvm/rubies/ruby-2.7.1/lib/ruby/site_ruby/2.7.0 -r ./siteconf20201208-23994-y7hymq.rb extconf.rb
checking for -lstdc++... yes
checking for -ltag... yes
creating Makefile
current directory: /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1/ext/taglib_base
make "DESTDIR=" clean
current directory: /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1/ext/taglib_base
make "DESTDIR="
compiling taglib_base_wrap.cxx
taglib_base_wrap.cxx: In function ‘int SWIG_AsVal_unsigned_SS_long(VALUE, long unsigned int*)’:
taglib_base_wrap.cxx:2101:104: warning: ‘VALUE ruby::backward::cxxanyargs::rb_rescue(VALUE ()(...), VALUE, VALUE ()(...), VALUE)’ is deprecated: Use of ANYARGS in this function is deprecated [-Wdeprecated-declarations]
 if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2ULONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {

                                                                                ^

In file included from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/ruby.h:2863:0,
             from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby.h:33,

             from taglib_base_wrap.cxx:874:

/home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/backward/cxxanyargs.hpp:198:1: note: declared here
rb_rescue(type *q, VALUE w, type *e, VALUE r)
^
taglib_base_wrap.cxx: In function ‘int SWIG_AsVal_long(VALUE, long int*)’:
taglib_base_wrap.cxx:2153:103: warning: ‘VALUE ruby::backward::cxxanyargs::rb_rescue(VALUE ()(...), VALUE, VALUE ()(...), VALUE)’ is deprecated: Use of ANYARGS in this function is deprecated [-Wdeprecated-declarations]
 if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2LONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {

                                                                                ^

In file included from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/ruby.h:2863:0,
             from /home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby.h:33,

             from taglib_base_wrap.cxx:874:

/home/fletch/.rvm/rubies/ruby-2.7.1/include/ruby-2.7.0/ruby/backward/cxxanyargs.hpp:198:1: note: declared here
rb_rescue(type *q, VALUE w, type *e, VALUE r)
^
linking shared-object taglib_base.so
/usr/bin/ld: /usr/local/lib/libtag.a(tstring.cpp.o): relocation R_X86_64_32S against `_ZTVN6TagLib6StringE' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libtag.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
Makefile:260: recipe for target 'taglib_base.so' failed
make: *** [taglib_base.so] Error 1
make failed, exit code 2
Gem files will remain installed in /home/fletch/.rvm/gems/ruby-2.7.1/gems/taglib-ruby-1.0.1 for inspection.
Results logged to /home/fletch/.rvm/gems/ruby-2.7.1/extensions/x86_64-linux/2.7.0/taglib-ruby-1.0.1/gem_make.out
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/robinst/taglib-ruby/issues/101, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAKGH53D7RZOANEL7WGZXFLST2ANFANCNFSM4USORRPQ
.

@jacobvosmaer I tried CFLAGS=-fPIC gem install taglib-ruby, but I get the same error. Is there another way I should do it?

Maybe try cloning the taglib-ruby repo and apply this patch:
diff --git a/ext/extconf_common.rb b/ext/extconf_common.rb
index 9a4a077..46742cf 100644
--- a/ext/extconf_common.rb
+++ b/ext/extconf_common.rb
@@ -48,7 +48,7 @@ MacPorts: sudo port install taglib
DESC
end
-$CFLAGS << " -DSWIG_TYPE_TABLE=taglib"
+$CFLAGS << " -DSWIG_TYPE_TABLE=taglib -fPIC"
Allow users to override the Ruby runtime's preferred CXX
RbConfig::MAKEFILE_CONFIG['CXX'] = ENV['TAGLIB_RUBY_CXX'] if
ENV['TAGLIB_RUBY_CXX']
Then run:
TRAVIS=true bundle exec rake clean compile
I doubt this is the way to really solve the problem but at least it should
get -fPIC passed down and then you know if that helps.
Op wo 9 dec. 2020 om 18:02 schreef Robert Fletcher <notifications@github.com

:

@jacobvosmaer https://github.com/jacobvosmaer I tried CFLAGS=-fPIC gem
install taglib-ruby, but I get the same error. Is there another way I
should do it?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/robinst/taglib-ruby/issues/101#issuecomment-741907871,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAKGH56SEXV62QUDGYSKZU3ST6USLANCNFSM4USORRPQ
.

@mockdeep Have you been able to try this out? (I'll reopen if you have any updates.)

@mockdeep Have you been able to try this out? (I'll reopen if you have any updates.)

authors: jacobvosmaer mockdeep robinst

repo: robinst/taglib-ruby

license: mit


text:
feat: 🚀 f1 metrics are added into jsons and new yolo11 metric/F1 also added

Description

feat: 🚀 f1 metrics are added into jsons
package: 📦 supervision versions are updated to develop for f1 metrics
feat: 🚀 f1 metrics json and js results are generated and gradio app adjusted
fix: 🐞 empty space added between texts in gradio

@LinasKo  yolov11 complete ;)

So quick! Thanks @onuralpszr , I'll review it asap

So quick! Thanks @onuralpszr , I'll review it asap

As I promised :tophat: (Hats off)

source: gharchive/pull-request

authors: LinasKo onuralpszr

repo: roboflow/model-leaderboard


text:
Support nested variable

templates:
  default: &default
  installed: {{ .Values | get {{ .Release.Name }}.installed }}

releases:
- name: test
    <<: * default

installed can parse to .Values.test.installed

@monlor Hey. This will never work because you're trying to access release template in the context of whole helmfile.yaml template. Have you already tried the below?
installedTemplate: {{` {{ .Values | get {{ .Release.Name }}.installed `}} }}

try first:
installedTemplate: {{` {{ .Values | get {{ .Release.Name }}.installed }} `}}

result:
in ./helmfile.yaml: in .helmfiles[0]: in helmfile/application.yaml: failed to read application.yaml: reading document at index 1: yaml: line 34: did not find expected ',' or '}'

try second:
installedTemplate: '{{` {{ .Values | get {{ .Release.Name }}.installed }} `}}'

result:
in ./helmfile.yaml: in .helmfiles[0]: in helmfile/application.yaml: failed executing release templates in "application.yaml": failed executing templates in release "application.yaml"."common": failed executing template expressions in release "common".version = " {{ .Values | get {{ .Release.Name }}.installed }} ": template: stringTemplate:1: unexpected "{" in operand

String parameters may be required by get
try third:
installedTemplate: '{{` {{ .Values | get "{{ .Release.Name }}.installed" }} `}}'

result:
in ./helmfile.yaml: in .helmfiles[0]: in helmfile/application.yaml: failed executing release templates in "application.yaml": failed executing templates in release "application.yaml"."common": failed executing template expressions in release "common".version = " {{ .Values | get "{{ .Release.Name }}.installed" }} ": template: stringTemplate:1:14: executing "stringTemplate" at <get "{{ .Release.Name }}.installed">: error calling get: no value exist for key "{{ " in map[...

You can't use go templates within a go template. Try changing get {{ .Release.Name }}.installed to get (concat .Release.Name ".installed") or something like that (I don't remember if concat was the right function. You'd need to read sprig v3's documentation to find out the appropriate template func)

You're still confliating helmfile tempaltes with release tempaltes.
It needs to be enclosed by
{{` {{ ...

and
.. }} `}}

if it's a release template.

Thank you. I finally understand

authors: monlor mumoshu

repo: roboll/helmfile


text:
Forgotten Debug Statement ("Length Is")

There is a forgotten
self.log('Length is %d' % length)
statement in BuiltIn.py at line 1213 that ends up in logs and pollutes output when a condition is used such as Should Not Be Empty etc. Solution is to simply remove the line.
Thanks in advance...

The message is there on purpose. What problems does it cause?

Those "length is..." messages end up in output.xml as well as log.html in places where it does not convey any useful information to the reader of log; human or otherwise. For instance after "Should Not be Equal  A  B"  you get a "Length is 16", which does not mean anything to robot user. That is why I assume it was a debug statement, to see if the _get_length sub-call actually works during development, and then forgotten there.
Our situation is similar, we take the output.xml and put it through a pipeline to fetch information out of it, but after many statements we get additional "Length is" information for python-level variables that are not necessarily seen from outside the python script itself, therefore meaningless, and also disruptive since they come up in between CLI commands and their output.
Yes, we could try to clean the xml first in pipeline, but message really looks like a forgotten debug info statement.
If you are not willing to remove it, could you at least do something like showing it only if a debug tag was given ?

Are you certain you get this message with Should Not Be Equal? That would be odd.
The message is in Get Length to make it possible to just do
Get Length    ${something}

to see the length in the log file. Some other length related keywords use Get Length as a helper and thus get the message as well. In most of these cases the message is, in my opinion, pretty useful, and it others I don't see it doing any harm.
If this is really a big problem for you, we could consider making the log level configurable and change some of the keywords that use Get Length to use debug level. That would require a PR with (changed) tests, but first we should agree what keywords should actually be changed.

The message is there on purpose. It could be made configurable, but apparently there's not enough interest for that.

authors: pekkaklarck tgoncuoglu

repo: robotframework/robotframework


text:
Disable automatic type argument conversion (none => None) on some keywords.

This is a PR for #3649. Opted for using the @keyword(types=None) decorator. Added one acceptance test for all the applicable cases.

Thanks @mihaiparvu for a great PR with absolutely nothing to comment. :smile:

authors: mihaiparvu pekkaklarck


text:
RL2 MediatorMap

An issue to discuss the Mediator Map API and implementation.

exactly, but it may not always be an event dispatched by the view that we need to wait for. It may indeed be some other peculiarity.

boo to subclassing! ;)

preRegister() and onRegister() were hideous mistakes!

This is definitely one issue that hit close to home for me. I could never find a good of where to put, for lack of a better term, the "view logic" for a given view. It doesn't belong in the mediator because the mediator's job is communication between the view and the context, but in many cases putting it back in the view felt more like heavy view components which is one of the problems we're trying to solve.
I'm not 100% convinced that this is a good suggestion but I'm going to throw it out there anyway: we could go with a Mediator and and ViewController for a given view component. The Mediator could still be responsible for communication to and from the ViewController, the ViewController could conform to a specific interface that tells us about the view lifecycle (when it's ready to be mediated, etc). This also gives us a decent place to put the "view logic" if there happens to be any.

You know I always enjoy the strategy pattern...!
I did think about whether the 'not an event' thing is relevant, and yes - could be a signal - but if the view is doing its own thing then I can't think of a sensible approach other than to have it notify the outside world.
I don't think I'd want the mediator poking into the view ... so it seems like messaging (by default via events) is a sane assumption. So, I'm thinking that waitForEvent() covers it.
Also - it's quite easy to implement your own Mediators now, so for the 20% that this doesn't cover, folk can bend their own solution.
Agree that preRegister and onRegister are horrible... the DuckTypedMediatorTrigger should allow us to change the API without stopping it from being possible to use old styleeee mediators.

On API - I quite like "startup" and "shutdown" for the external funcs, and internally overriding something protected and explicit like "wireEvents". Might help people to avoid doing their random jobs in onRegister too :)

@Jeremy - check out Hooks - they allow you to very easily wire your viewController if needed, including making it stateful (more details on that a little further down the line).

Hmm.. I think perhaps I'm just really bad at explaining this stuff. I'll take a stab at the adapter/strategy/trigger approach and we can compare notes :)

I'm just saying that almost all views are perfectly suited to just picking up an event when you get going. And the easiest place to configure that per mediator is in the mediator.
It means that when you're wondering "Why isn't my onRegister running?" and looking at the trace that never comes, you're simultaneously looking at the waitForEvent(SomeEvent.SOMETHING_THAT_NEVER_HAPPENS) and have a chance of figuring it out!
This would definitely cover a lot more than the 80%, and with a tiny barrier to entry...

But yes - please do at least sketch what you're intending - I think words haven't really exposed it to me. Code or just a diagram would be wicked.
I was thinking that because you're really only hoping to run a function at the end, doing something other than waiting for an event is only as simple as putting a handler in the mediator that uses onRegister (or whatever it's called) as a callback - which you could abstract to an object or a package level function if you were reusing it a lot.
So - we're not cutting off other possibilities just by making it expect an event (or nothing) out of the box.

Coolio, do what feels right for now - we will see how it feels and review it all later anyway. Options FTW!

Yup - and at least the tests will cover the 'custom event' approach, so refactoring to a more explicit strategy pattern should be feasible against the tests without redoing them.

Just my humble two cents, I'm semi on board with the constructor parameter but not it requires me to dispatch a custom event from my view. A big part of my love for RL comes from not having to consider the framework while writing my views.
What is the fundamental problem with onRegister?

Hi Joel, the default would be that it doesn't expect any event, so it doesn't change that side of things.
However, Shaun is right, there's something I missed (you also need to check whether the flex view is already initialised) so we need a more flexible approach.

I see, I suppose a trigger is needed in some fashion. I was never really a fan of ADDED_TO_STAGE as said trigger. The ability to append custom strategies to accomodate minimalcomps for example might be nice for the 20%
@Jeremy, dunno if this is the correct thread to discuss the role of mediators so sorry if this is off topic but I have the same conflict. I have a year+ long RL project that does a considerable amount of business logic in some mediators. I just couldn't bring myself to make my models and services dependancies of my views so my mediator handlers evaluate them instead and ultimately call view api rather than simply inform them that something happened.

Having some sort of Trigger would keep it in line with the new CommandMap impl.
The map, (here the MediatorMap) should just maintain the mappings, some other class does the event listening.
If this separation occurs in one, but not another it might cause confusion??
BTW, (without any judgement intended), the waitForEvent sounds a bit similar the pMVCs handleNotificationInterests, but with a totally different purpose.
Actually, maybe there was a judgement in there and I was just being nice (but dishonest). Why should the Mediator know when it is to be registered? (unless I have misunderstood the purpose of the waitForEvent param)

Hi Joel / Neil - the ADDED_TO_STAGE is still the trigger for a mediator being created. That's not the same as the trigger we're discussing here - which is about when it's safe to run onRegister.
And also the ADDED_TO_STAGE stuff is handled somewhere else entirely - the mediatorMap in V2 simply receives notifications. And then (just to fill you in) if it didn't care to manage that particular object then it never receives another notification for any object of that class... how efficient is that?! (Obviously we clear this when a new mapping is made as it might have a new interest).
There already is a trigger for mediators which then does the setViewComponent / preRegister / preRemove work. This trigger is 'loaded' to the mediatorMap and allows you to specify v1 Mediators, v2 Mediators or Duck Typed Mediators, with the option to be 'strict' - which will throw an error if a mediator is created which doesn't fit expectations - or not strict - which just ignores mediators that don't fit the expectation, allowing you to use [PostConstruct] to entirely role your own mediator which doesn't have any relation to what Robotlegs prescribes.
Phew!
So - we're not really talking about the same things here. (Sorry for the confusion).
Having tinkered with it more, waitForEvent doesn't work - well, it only works first time around, after that it's no good, so we need to ignore that suggestion that I made - it was a false path.
The only reason for having the mediator know when it's safe is that mediators vary for views and if you've got a Flex UIComponent then you need to wait for creationComplete (first time around), and if you've got a pure AS3 sprite then you don't.
So - to clarify, this has nothing to do with the creation of mediators, but to do with managing the gap between the preRegister and onRegister functions running.
But, I'm increasingly thinking that I need to return to the existing mediator functionality where it's hidden from the user, because co-variant mediation means that if two views - one UIComponent and one Sprite - both use the same mediator then we can't use the strategy I was thinking of.
In the current RL1 mediator implementation, the mediator hides this from the user, but it's still going on under the hood. I think I'm going to return to that, as it certainly worked for nearly everybody, nearly all the time, but I'll pull out the actual code that checks for waiting into its own function, to make it simpler to override and put in your own custom behaviour. Having gone around the houses I can actually see why it was done the way it was originally!

Ah, i see...
in that case I would say waitForEvent certainly is more confusing than the RL1 way.
though academic now I guess.

Yup! Sorry for all the confusion - I've got a new idea and I'm up and running - will shout as soon as there's code to look at and you can all chip in on something that makes more sense!

I've restarted this thread with less confusion here:
https://github.com/robotlegs/robotlegs-framework/issues/46

Duplicate of #46

authors: Stray darscan jeremyruppel joelstransky neilmanuell tschneidereit

repo: robotlegs/robotlegs-framework


text:
Compiling the unicycle footstep planner in windows

The following error is met:

This is basically due to the CMakeLists.txt looking for a .lib extensions, because target_link_libraries doesn't find the associated UnicyclePlanner.lib. One reason would be, I suspect, that the declarative __declspec(dllexport) was not used, and hence the project only builds the .dll file.
One can instead build the project as a static lib and in that case the above error will not be met, but I am not certain what are the implications of that.

One reason would be, I suspect, that the declarative __declspec(dllexport) was not used, and hence the project only builds the .dll file.

Exactly. See https://github.com/ros/urdfdom/issues/42 for a similar issue.
As documented in the  how-to-export-cpp-library I suggest to:

Use the CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS to export all symbols in the shared libraries on Windows (following the same policy used in Linux/macOS for symbol visibility).
Do not hardcode the SHARED option in the call to add_library, but rather leave this unspecified (as in https://github.com/robotology/how-to-export-cpp-library/blob/bc184877b002737d457f773fbbcac3bbef4208d3/src/LibTemplateCMake/CMakeLists.txt#L35) but define the standard CMake option BUILD_SHARED_LIBS with a default to ON to leave to the user compiling the library the freedom to compile it as shared or static (this is example necessary for packaging the library in vcpkg).

@mebbaid Feel free to open a PR with one or even better both of this changes, that @S-Dafarra can review and eventually accept.

@traversaro  maybe it is strange, but actually it compiled without errors, without having to remove shared
and generated the necessary static libs to link against the .dll objects. an insight into why this is the case would be appreciated.

Solved with https://github.com/robotology/unicycle-footstep-planner/pull/13

authors: S-Dafarra mebbaid traversaro

repo: robotology/unicycle-footstep-planner


text:
Two pipes with lazypipe and waiting for them to finish

Hello, first of all, thanks for the great project. I've been using it for some time now in order to take a stream and send all js files to a pipe and css file to another. Like this:
gulp.task("optimize-css-js", function(){
      // Other unrelated code //
      return gulp.src(cssjs)
		.pipe(gulpif("*.css", cssPipe())) // Process CSS
		.pipe(gulpif("*.js", jsPipe())); // Process JS
});

var jsPipe = lazypipe()
	.pipe(concat, conf.minified.js)
	.pipe(uglify)
	.pipe(gulp.dest, path.join(conf.distFolder, conf.resourcesDir));

var cssPipe = lazypipe()
	.pipe(cleanCSS, {
		//...
	.pipe(gulp.dest, path.join(conf.distFolder, conf.resourcesDir));

Since I included return on the task I was expecting the task to only finish after both pipes finished their operations, however this doesn't seem to be the case. Due to some reason the task finishes before all files in both pipes are written to the disk... How can I fix this?
Thank you!

Never mind my code was bad. I ended up splitting the code above into two different tasks so no need to use gulp-if. However if due to some reason, someone wants to keep gulp if (maybe because they need to do global processing before) you can move gulp.dest() out from the pipes to a single call at the main stream:
gulp.task("optimize-css-js", function(){
      // Other unrelated code //
    return gulp.src(cssjs)
		.pipe(gulpif("*.css", cssPipe())) // Process CSS
		.pipe(gulpif("*.js", jsPipe())) // Process JS
		.pipe(gulp.dest(path.join(conf.distFolder, conf.resourcesDir)));
});

 var jsPipe = lazypipe()
	.pipe(concat, conf.minified.js)
	.pipe(uglify);

var cssPipe = lazypipe()
	.pipe(cleanCSS, {
		//...;

There was no point in writing in each pipe because after calling both pipes and adding gulp-debug to the stream it showed that only the minified css and js files were on the pipe. At this stage the task was only finishing after all files were written.

repo: robrich/gulp-if


text:
Update readme to latest version + fix links

Hey, I was looking at this library and noticed that the version example in the docs for Gradle is outdated, and the links were dead so I updated them in this PR. Thanks!

@jsoberg thanks for your help, very much appreciated :+1:

authors: jsoberg robstoll

repo: robstoll/kbox


text:
refactor: simplify incoming

unify the tls_auth and tls_control cases by introducing the validate_control and wrap_control functions

rebased on top of #192

I fixed the code, should now be better... I dislike the wrap_control and wrap_tls_crypt_control and redefinition of wrap_control -- we should find better names)

previous comment is addressed in 488d499

repo: robur-coop/miragevpn


text:
cli-platform Stdout.line alternative without newline suffix?

The line function in examples/interactive/cli-platform/Stdout is the only way to write to stdout, and it corresponds to println!(...) in Rust. Can we please add a second exposed function in Stdout that doesn't append a newline every time? I would use this immediately in https://github.com/JanCVanB/rocbox, but I also expect that other people's CLIs will need return un-newlined output, too.
I don't know what to call it, though... print feels lame... write? Perhaps the pair should be write & writeLine?

I agree this would be a good addition. I think “print” is a fine name, it is familiar from many other languages - Python, Rust, Ruby, OCaml, etc

Yes, it is familiar. Should we make the pair Stdout.print & Stdout.printLine instead of Stdout.print & Stdout.line?

The more often a function is called, the bigger the relative downside a long name is (and the more easily people will learn a shorter name even if it's less self-descriptive). I named it .line with this in mind; it's definitely going to be the most frequently called function in the module, so giving it a short name seems very worthwhile!

As for print vs write, I would go with write.
Maybe because of my early QBASIC experience, I've always been sensitive to the fact that in some languages, print adds a newline at the end, and others don't.
In contrast, I don't know of any write ever adds a newline at the end!

I like that better. Here are the two contenders written out:
Proposal A:
Stdout.printLine "foo"
Stdout.print "bar"

Proposal B:
Stdout.line "foo"
Stdout.write "bar"

When writing those out, I noticed something else - if we renamed the newline-ful function to be longer than the newline-less function, it will encourage many people to use the shorter function name out of sheer minimalism/reflex/idk. I initially wrote Proposal A with print first, just because my brain sorted them shorter to longer... only after writing Proposal B did I go back and reorder Proposal A to fit the sorting of common to uncommon. Newline-less will be WAY less common than newline-ful, so now I'm a big fan of Proposal B.

B is good for me as well.

B is my preference too!

authors: Anton-4 JanCVanB ayazhafiz rtfeldman

repo: roc-lang/roc


text:
Optional record fields can't be used in two different ways

Simple repro, run roc check on this code:
app "helloWorld"
    packages { pf: "https://github.com/roc-lang/basic-cli/releases/download/0.7.1/Icc3xJoIixF3hCcfXrDwLCu4wQHtNdPyoJkEbkgIElA.tar.br" }
    imports [pf.Stdout]
    provides [main] to pf

add : { a : U64, b ? U64 } -> U64
add = \{ a, b ? 1} -> a + b

main =
    x = add { a : 7, b: 8 }
    y = add { a : 7 }
    Stdout.line "$(Num.toStr x),$(Num.toStr y)"

Some reason, we can use add both with/without the optional field as add { a : 7, b: 8 } and add { a : 7 }.

Error message:
── TYPE MISMATCH in examples/helloWorld.roc ────────────────────────────────────

This 1st argument to add has an unexpected type:

11│      y = add { a : 7 }
                 ^^^^^^^^^

The argument is a record of type:

    { … }

But add needs its 1st argument to be:

    { b : Int Unsigned64, … }

Tip: Looks like the b field is missing.

────────────────────────────────────────────────────────────────────────────────

In some cases, omitting optional record fields can also cause a compiler panic. Example can be found here

For people looking for a workaround:
You can use:
Xml : {
    declaration : [Some Str, None],
    root : Str,
}

Instead of:
Xml : {
    xmlDeclaration ? Str,
    root : Str,
}

Another workaround: if you move the definition add into a separate module, then everything works fine.

A couple other reproductions in https://github.com/roc-lang/roc/issues/6101 and https://github.com/roc-lang/roc/issues/5444
5444 has a comment with some investigation: https://github.com/roc-lang/roc/issues/5444#issuecomment-1831507861

authors: Anton-4 ageron bhansconnect imclerran skyqrose


text:
remove relationships and fields items from EntitySchema

After getting further along with the ZQL interface for join (pr coming soon) and seeing this suggestion for simplifying foreign key traversals, I don't think we need this information anymore.

Seems like a good step.

authors: arv tantaman

repo: rocicorp/rails


text:
运行rknn_init时，输出Kernel "com.vivantecorp.extension.evis.resize_bilinear_F16toF16_UP" does not exist

运行平台：TB-RK1808M0
运行代码：
rknn_init(&rknn_ctx, model, model_len, RKNN_FLAG_COLLECT_PERF_MASK);
运行信息：
librknn_runtime version 1.7.0 (0bef7b3 build: 2021-08-18 19:51:44 base: 1131)
Kernel "com.vivantecorp.extension.evis.resize_bilinear_F16toF16_UP" does not exist
Kernel "com.vivantecorp.extension.evis.argmax_axis2_F16toI16" does not exist
问题描述：
RK1808M0原来的librknn_runtime version 为 1.5.0，通过sudo apt update-->sudo apt upgrade后升级成1.7后，运行代码时出现以上提示信息。
模型是由ONNX模型转RKNN的，里面用到了Resize和Argmax两个OP。
请问这是否是计算棒的环境出现问题，是否需要重新安装rknn-toolkit-1.7.0？

模型是以前转的吗？
有可能需要重新转模型和预编译（如果你之前用了的话）

模型已经重新转，能够成功运行且结果准确，但还是出现同样的错误提示并且运行时间过长，尤其是跑resize和argmax的时候耗时特别长。
运行:
rknn_query(rknn_ctx, RKNN_QUERY_PERF_DETAIL, &perf_detail, sizeof(rknn_perf_detail));
printf("%s", perf_detail.perf_data);

部分输出结果：

Layer id:
Name:
Operation id:
Operator:
Target:
Uid:
Time(us):

40
Conv_Conv_0_1088
1
CONVOLUTION
NN
1088
344

9
com.vivantecorp.extension.evis.resize_bilinear_F16toF16_UP
0
unknown
SH
-1
2783

38
com.vivantecorp.extension.evis.resize_bilinear_F16toF16_UP
0
unknown
SH
-1
6258

39
ArgMax_ArgMax_0_1
0
unknown
SH
1
1657

现已尝试使用多个模型，不同模型能跑出相对准确的结果，但均会出现错误提示和耗时过长的问题。
错误提示均为Kernel "com.vivantecorp.extension.evis.xxx" does not exist的格式，曾出现有：

com.vivantecorp.extension.evis.resize_bilinear_F16toF16_UP
com.vivantecorp.extension.evis.resize_bilinear_U8toU8_UP_opt
com.vivantecorp.extension.evis.resize_bilinear_U8toU8_SAME_2x_upsample_half_pixel_centers
com.vivantecorp.extension.evis.resize_bilinear_U8toU8_SAME_4x_upsample_half_pixel_centers
com.vivantecorp.extension.evis.argmax_axis2_F16toI16

这是一个正常的现象还是rknn的bug？需要进行哪方面的处理来解决？

resize和argmax这个耗时应该是正常的。如果模型推理结果正确，可以忽略错误提示。
不同算子使用的硬件不同，NN和SH都是NPU里面的单元，但是有性能差异。
Conv是走NN单元的，性能最优，所以速度很快。其他两个算子是走SH单元，性能会差一些。
这也是为什么之前有的模型(如yolov5)建议不要包含后处理，因为大部分后处理算子都无法使用NN单元加速。

repo: rockchip-linux/rknn-toolkit


text:
Only enable comments per sub-section (not for every question)

As an end user I only want to comment per card with multiple questions rather than per question!

Duplicate of #427

authors: ORCANLRC elwinschmitz

repo: rodekruis/cash-program-design-wizard


text:
Strange errors with Zenodo upload attempts

When I push to Zenodo some (large) datasets that scripts in my workflow produce, I get some strange errors that I cannot pin down. They seem to be either
Traceback (most recent call last):
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpymlz6v47.zenodo.py", line 329, in <module>
    upload_simulation(
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpymlz6v47.zenodo.py", line 144, in upload_simulation
    r = check_status(
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpymlz6v47.zenodo.py", line 21, in check_status
    data = r.json()
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/models.py", line 910, in json
    return complexjson.loads(self.text, **kwargs)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

or
Traceback (most recent call last):
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpy2adhavi.zenodo.py", line 329, in <module>
    upload_simulation(
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpy2adhavi.zenodo.py", line 145, in upload_simulation
    requests.post(
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/api.py", line 117, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/urllib3/connectionpool.py", line 394, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/urllib3/connection.py", line 239, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1279, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1325, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1274, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1073, in _send_output
    self.send(chunk)
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 995, in send
    self.sock.sendall(data)
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/ssl.py", line 1204, in sendall
    v = self.send(byte_view[count:])
  File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/ssl.py", line 1173, in send
    return self._sslobj.write(data)
OverflowError: string longer than 2147483647 bytes

Any tips for debugging?

How big are the files? I'll play around with this tomorrow.
On Sun, Nov 14, 2021, 5:58 AM Andrew McCluskey @.***>
wrote:

When I push to Zenodo some (large) datasets that scripts in my workflow
produce, I get some strange errors that I cannot pin down. They seem to be
either
Traceback (most recent call last):
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpymlz6v47.zenodo.py", line 329, in
upload_simulation(
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpymlz6v47.zenodo.py", line 144, in upload_simulation
r = check_status(
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpymlz6v47.zenodo.py", line 21, in check_status
data = r.json()
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/models.py", line 910, in json
return complexjson.loads(self.text, **kwargs)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/simplejson/init.py", line 525, in loads
return _default_decoder.decode(s)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/simplejson/decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/simplejson/decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
or
Traceback (most recent call last):
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpy2adhavi.zenodo.py", line 329, in
upload_simulation(
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/scripts/tmpy2adhavi.zenodo.py", line 145, in upload_simulation
requests.post(
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/api.py", line 117, in post
return request('post', url, data=data, json=json, **kwargs)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/api.py", line 61, in request
return session.request(method=method, url=url, **kwargs)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/sessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/requests/adapters.py", line 439, in send
resp = conn.urlopen(
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/urllib3/connectionpool.py", line 699, in urlopen
httplib_response = self._make_request(
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/urllib3/connectionpool.py", line 394, in _make_request
conn.request(method, url, **httplib_request_kw)
File "/Users/andrewmccluskey/anaconda3/envs/msd-error/lib/python3.9/site-packages/urllib3/connection.py", line 239, in request
super(HTTPConnection, self).request(method, url, body=body, headers=headers)
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1279, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1325, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1274, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 1073, in _send_output
self.send(chunk)
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/http/client.py", line 995, in send
self.sock.sendall(data)
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/ssl.py", line 1204, in sendall
v = self.send(byte_view[count:])
File "/Users/andrewmccluskey/work/research/msd-errors/.snakemake/conda/52b8b44ac1fc2296e8e9f1f2c6621990/lib/python3.9/ssl.py", line 1173, in send
return self._sslobj.write(data)
OverflowError: string longer than 2147483647 bytes
Any tips for debugging?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rodluger/showyourwork/issues/51, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACHEKK2TB7VUYTLIBTAVWZTUL6I53ANCNFSM5H7XELOQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

The first error message is returned for two files that are 500 MB and 900 MB. The second is for the larger (currently) 3GB file.

Looks like it is working. Thanks!

Great. Fixed in v0.1.31. Just run a make update.

This seems to be broken again...?

Lol! No worries!

repo: rodluger/showyourwork


text:
hot module reload

This works but it's not probably a good approach.
Why do we have to reset textContent on the server-side rendering? It looks like an implementation detail. Also, removeAttribute is probably wrong, because subscribing. Should I create empty node manually?
Note Root is render on module change in development.
const getFelaMountNode = () => {
  const node = document.getElementById('stylesheet');
  node.removeAttribute('data-fela-stylesheet');
  node.textContent = '';
  return node;
};

// We needs such Root for vanilla hot reloading.
const Root = ({ store }: Props) => (
  <Redux store={store}>
    <Fela mountNode={getFelaMountNode()} renderer={createFelaRenderer()}>
      <BrowserRouter>
        <App />
      </BrowserRouter>
    </Fela>
  </Redux>
);

Should I send PR?

Current implementation
const getFelaMountNode = () => {
  const node = document.getElementById('stylesheet');
  const parent = node.parentNode;
  if (!node || !parent) {
    throw new Error('missing stylesheet node for Fela');
  }
  const nextNode = document.createElement('style');
  nextNode.id = 'stylesheet';
  parent.replaceChild(nextNode, node);
  return nextNode;
};

Where exactly would you add that? I never used hot reloading in any of my projects as I am using another approach to do stateful live devopment. I'd be really happy to officially support hot reloading with Fela!

In the Root.js https://github.com/este/este/blob/master/src/browser/app/Root.js
Este uses native (without plugins as recommended by Dan Abramov when app doesn't use local state) HMR. https://github.com/este/este/blob/master/src/browser/main.js#L31

For Fela it means, no private state in modules! When file is changed, the whole app is restarted, which is ok and stable, if app state is in Redux.

Perhaps the best way for me to understand it, is to just show me all changes. It sounds kind of what I am using for a current project, but  it's even more "dumb" I guess. I am syncing my whole Redux store to localStorage every single time it changes and intially load the store from localStorage as well. For remote development (e.g. mobile) or other browsers I use a simple server that syncs the store globally. It's quite helpful to have persistent development, but it needs to reload the page every time. Also any state needs to be part of Redux^^

localStorage is ok, stateless modules as well, but stateful js modules are tricky, must be handled like that https://github.com/este/este/blob/885358e7a78c59df3a7a7a3b218456194b63111b/src/common/configureMiddleware.js#L37

I will send you a PR.

Hot reloading worked fine for me. I'm not sure what would need to change in the project, seems to be implementation specific.
// Initial stylesheet w/ global styles
const renderer = createRenderer();
const createGlobalStyles = rules =>
  Object.keys(rules).forEach(selector =>
  renderer.renderStatic(rules[selector], selector));

createGlobalStyles(globalStyles);

// Initial render.
ReactDOM.render(
  <Fela renderer={renderer} mountNode={mountNode}>
    <Root store={store} />
  </Fela>
, appElement);

// Hot reload render.
// gist.github.com/gaearon/06bd9e2223556cb0d841#file-naive-js
if (module.hot && typeof module.hot.accept === 'function') {
  module.hot.accept('./app/themes', () => {
    renderer.clear();
    createGlobalStyles(require('./app/themes').globalStyles);
  });

  module.hot.accept('./app/Root', () => {
    const NextRoot = require('./app/Root').default;

    ReactDOM.render(
      <NextRoot store={store} />
    , appElement);
  });
}

It works for me as well. Still I would rather:
/* @flow */
import App from './App';
import React from 'react';
import configureFela from '../../common/configureFela';
import { BrowserRouter } from 'react-router';
import { Provider as Fela } from 'react-fela';
import { Provider as Redux } from 'react-redux';

type Props = {
  store: Object,
};

// This should be part of Fela.
// TODO: https://github.com/rofrischmann/fela/issues/125
const getFelaMountNode = () => {
  const node = document.getElementById('stylesheet');
  const parent = node.parentNode;
  if (!node || !parent) {
    throw new Error('missing stylesheet node for Fela');
  }
  const nextNode = document.createElement('style');
  nextNode.id = 'stylesheet';
  parent.replaceChild(nextNode, node);
  return nextNode;
};

// We needs such Root for vanilla hot reloading.
const Root = ({ store }: Props) => (
  <Redux store={store}>
    <Fela mountNode={getFelaMountNode()} renderer={configureFela()}>
      <BrowserRouter>
        <App />
      </BrowserRouter>
    </Fela>
  </Redux>
);

export default Root;

I can't even get it to work properly, but that might be because I'm using code splitting...

Anything we can do at Fela, to improve the hot reloading?

@johanneslumpe I am using it as well.

@rofrischmann I believe this belongs to Fela https://github.com/este/este/blob/c7e1138e51be6a8c27ba534dc8ecd0c74a695a57/src/browser/app/Root.js#L13
As for hot reloading experience, we don't need anything else. Este uses the most frictionless hot reloading, just rerendering everything. It works because whole state is in the Redux anyway.
That's why I have to call getFelaMountNode(), because app was rerendered because hot reload. What do you think?

I don't think this should be part of Fela. I'm creating an app that renders into ''. So stylesheet need to be passed down to the child document of the page.
If fela will handle styleshhet node like this, it will be disaster for this kind of applications.

I also don't see this being part of Fela at all, but we should add instructions to the documentation on how to actually enable hot module replacement with Fela. Any thoughts are welcome.

For anyone still looking for how to enable hot-reloading:
if (module.hot) {
  module.hot.accept()
  const renderer = getRenderer()
  renderer.clear()

  module.hot.dispose(() => {
    render(renderer)
  })
}

@queckezz can you add applyGlobalStyles function?

@rofrischmann I don't see any docs on how to get fela to work with hot module reloading.  Does anyone have any guidance on how to get it to work with storybook??

Hi @rofrischmann I was digging through the docs to see if I could find an example for hot module reloading as referenced in this comment but I was not able to find anything except this closed issue. Was this example removed in a previous version perhaps?

Need to enable devMode to make HMR working for styles.
https://github.com/rofrischmann/fela/blob/cca5302747db4c231221e5ca104df399c58a2a19/docs/advanced/RendererConfiguration.md
http://fela.js.org/docs/advanced/DOMRendering.html

authors: Cavitt RafalFilipek SpencerCDixon brianespinosa johanneslumpe queckezz rofrischmann srigi steida veeramarni

repo: rofrischmann/fela


text:
image link for 599 is missing

current is

510

511

599

probably should be

510

511

599

sorry, i see it is fixed in this repo but not on the website

Thanks for reporting @ocelotGH, clearly something went wrong with the deployment 🤔

authors: ocelotGH rogeriopvl


text:
Remove Q dependency

Seems like the Promise global is pretty standard now, it would be nice if that were used as the default instead of Q, and so that this package has no dependencies.

Yes I thought about that. It would need a major version increase. I also could not quickly figure out how to test for the global in every environment that the original author of this module took into account. It should not be a big hurdle though.  Any chance of getting a PR on this? This isn't even my module - got ownership after the owner went silent and a bug needed fixing - so I'd appreciate the rest of the community also helping out.

... and the PR just came in. Thx ;)

Solution published as v1.0.0. Thanks @erikvold !

https://github.com/rogierschouten/async-lock/commit/533b4300211f600ee0c180e6c361692d3522f2ec

authors: erikvold rogierschouten

repo: rogierschouten/async-lock


text:
added new search button with hovering added some css

@Nikita110602 it's not looking good

repo: rohansx/informatician


text:
front background color changes when menu opened

as you can see in the second image,  a weird  shadow appeard (left top corner)
this is my front_layout.xml :
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
     android:layout_height="match_parent">
    <com.google.android.material.card.MaterialCardView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
          app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:shapeAppearanceOverlay="@style/AppTheme.CardviewCut">
    </com.google.android.material.card.MaterialCardView>
</androidx.constraintlayout.widget.ConstraintLayout>

this is my back_layout.xml:
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"         android:layout_width="match_parent"         android:layout_height="100dp"         android:background="@color/colorPrimary"         xmlns:app="http://schemas.android.com/apk/res-auto">         <TextView             android:id="@+id/textView"             android:layout_width="wrap_content"             android:layout_height="wrap_content"             android:text="BACK"             app:layout_constraintStart_toStartOf="parent"             app:layout_constraintTop_toTopOf="parent" />     </androidx.constraintlayout.widget.ConstraintLayout>

this is my activity_main.xml:
     <com.google.android.material.appbar.MaterialToolbar             android:id="@+id/toolbar"             android:layout_width="match_parent"             android:layout_height="wrap_content"             android:background="?attr/colorPrimary"             android:minHeight="?attr/actionBarSize"             android:theme="?attr/actionBarTheme" />         <com.roacult.backdrop.BackdropLayout             android:id="@+id/container"             app:front_layout="@id/includedFront"             app:back_layout="@id/includedBack"             app:toolbarId="@id/toolbar"             app:peekHeight="56dp"             app:disable_when_open="true"             app:menuDrawable="@drawable/ic_menu"             app:closeDrawable="@drawable/ic_close"             app:animationDuration="100"             android:layout_width="match_parent"             android:layout_height="match_parent">             <include                 android:id="@+id/includedBack"                 layout="@layout/back_layout"/>             <include                 android:id="@+id/includedFront"                 layout="@layout/front_layout"/>         </com.roacult.backdrop.BackdropLayout>

You can disable white effect by setting
app:disable_when_open=false in backdroplayout

thank you, solved my issue

authors: clevermatem roiacult

repo: roiacult/BackdropLayout


text:
Add pywikibot-like bots

Continues #3
Create a bot object so that a user can read / update / delete a page more easily. (close #2)
Page
A user can read a page by the following code:
const site = Bot.site(SiteUrl.wikipedia("en"));  // English wikipedia site
// const site = Bot.site("https://en.wikipedia.org/w/api.php");  // This is also available
const page = await site.page("Software_testing");
console.log(page.text);  // Print the content of "Test_Page" page

If a user want to edit / delete a page, they can login via bot password to edit / delete a page. (Login via user's name and password hasn't implemented yet)
const site = Bot.site("https://test.wikipedia.org");
await site.login("Bot_username", "Bot_password");
const page = await site.page("Test_Page");

// Edit
page.text = "Hello World";  // Change content of page into "Hello World"
await page.save("Update it!!");  // Save

// Delete
await page.delete();

Category
A user can get the pages that belong to the specific category.
const site = Bot.site("https://test.wikipedia.org");
const cat = await site.category("Cat");
console.log(cat.articles); // ["American Shorthair", "Burmese cats", "Cymric cat", ...]

Done

[X] User can read a page
[X] Support bot login
[X] Bot can edit / delete a page with login status

TODO (Some trivial ones might not listed)

[x] Fix "undefined" string problem. When a user doesn't pass argument to the function, the relevant argument would become "undefined" string.
[X] Support category lookup.
[ ] Support login via user's name and password. (It seems that clientlogin API should work with authentication. The example in official API page is different from its documentation.)
[X] Predefined the API URL of the wikis, so that users don't need to find what's the API URL
[X] Error handling. When an HTTP request isn't successful, shows the messages to users.
[X] Add testing
[x] Add instruction (or document) of bot into README.md.

Thanks for opening the PR again, sorry for the inconvenience. I will make some minor modifications, and talk to you about larger modifications. Once everything is done, we’ll release it.

I am concerned with the name bot.

How come? Is the name too common? Or its name is same as the folder?

And don’t you think Site and Bot should be merged into a single class?

Yes, we could merge them together. The reason why pywikibot initial a Site instance by calling a static function is to cache the Site object. But I think it's not necessary in this repo.

How come? Is the name too common?

The name bot to me feels like something that automates things, but no problem, I think we’ll be adding more methods that will complete the name in the future.

Yes, we could merge them together. The reason why pywikibot initial a Site instance by calling a static function is to cache the Site object. But I think it's not necessary in this repo.

Can you merge them then?

I've merged them. Also update the testing and README.md.

Oops, sorry I misunderstood your meaning...

No, problem. It’s only me and you in the universe working on this.

I've rename it...! Also the variable names are changed from site to bot.


text:
Support custom terminal filetype?

Hi, thank for the plugin.
I see that current this plugin is only activated for filetype=="".
It would be nice if I can configure enabled_filetypes for custom plugin filetype, for example toggleterm.nvim .

Hi, glad you found the plugin useful!
This is clearly a good idea and that's easy to implement. I need to do a bit of testing, but expect an update soon. I'm also thinking about adding toggleterm support by default as I know it is a pretty popular plugin, but I'm not sure if it's completely doable as it seems a setting must be set in toggleterm's setup function for the two plugins to be really compatible. I'll look into that.

The update is pushed. As you proposed, you will have to add "toggleterm" in the new enabled_filetypes option. You should also set toggleterm's start_in_insert option to false as explained in the readme.

authors: lkhphuc romainchapou


text:
Unhandled exception in Dispatchers.Default

Hi,
When a terminal is open (usually first time only), IDEA (IntelliJ IDEA 2024.2.3) shows this exception:
Unhandled exception in Dispatchers.Default

com.intellij.openapi.diagnostic.RuntimeExceptionWithAttachments: Access is allowed from Event Dispatch Thread (EDT) only; see https://jb.gg/ij-platform-threading for details
Current thread: Thread[#3751,DefaultDispatcher-worker-19,5,main] 1265183949 (EventQueue.isDispatchThread()=false)
SystemEventQueueThread: Thread[#65,AWT-EventQueue-0,6,main] 1890636488
	at com.intellij.util.concurrency.ThreadingAssertions.createThreadAccessException(ThreadingAssertions.java:177)
	at com.intellij.util.concurrency.ThreadingAssertions.throwThreadAccessException(ThreadingAssertions.java:172)
	at com.intellij.util.concurrency.ThreadingAssertions.assertEventDispatchThread(ThreadingAssertions.java:63)
	at com.intellij.ide.impl.DataManagerImpl.getDataContext(DataManagerImpl.java:287)
	at com.intellij.openapi.wm.impl.content.SingleContentSupplier$Companion.getSupplierFrom(SingleContentSupplier.kt:110)
	at com.intellij.openapi.wm.impl.content.SingleContentSupplier$Companion.getSupplierFrom(SingleContentSupplier.kt:107)
	at com.intellij.openapi.wm.impl.content.SingleContentLayout.getSupplier(SingleContentLayout.kt:85)
	at com.intellij.openapi.wm.impl.content.SingleContentLayout.tryUpdateContentView(SingleContentLayout.kt:102)
	at com.intellij.openapi.wm.impl.content.SingleContentLayout.update(SingleContentLayout.kt:73)
	at com.intellij.openapi.wm.impl.content.ToolWindowContentUi.update(ToolWindowContentUi.java:363)
	at com.intellij.openapi.wm.impl.content.ToolWindowContentUi$1$1.propertyChange(ToolWindowContentUi.java:121)
	at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:343)
	at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:335)
	at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:268)
	at com.intellij.ui.content.impl.ContentImpl.setDisplayName(ContentImpl.java:110)
	at com.terminaltabtailor.manager.TerminalTabNamesManager$Companion.renameNewTab(TerminalTabNamesManager.kt:169)
	at com.terminaltabtailor.manager.TerminalTabNamesManager$Companion.renameNewTab(TerminalTabNamesManager.kt:91)
	at com.terminaltabtailor.manager.TerminalTabNamesManager$Companion$openTabInTerminal$1$1$1$1$1.invokeSuspend(TerminalTabNamesManager.kt:44)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelled}@6debfa94, Dispatchers.Default]

Hi jobace78,
A few questions:

do you have the latest version of the plugin ?
which version of Intellij do you have ?

Thank you,
Romain

Hi!
Yes, they are fully updated:
[...]
IntelliJ IDEA 2024.2.3 (Ultimate Edition)
Build #IU-242.23339.11, built on September 25, 2024
Licensed to XXX
Subscription is active until March 10, 2025.
Runtime version: 21.0.4+13-b509.17 aarch64 (JCEF 122.1.9)
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Toolkit: sun.lwawt.macosx.LWCToolkit
macOS 15.0.1
GC: G1 Young Generation, G1 Concurrent GC, G1 Old Generation
Memory: 2048M
Cores: 8
Metal Rendering is ON
Registry:
project.tree.structure.show.url=false
ide.experimental.ui=true
i18n.locale=
Non-Bundled Plugins:
com.jetbrains.plugins.ini4idea (242.23339.18)
com.github.leomillon.uuidgenerator (4.5.1)
de.femtopedia.diffplugin (2.2.0)
BrowseWordAtCaret (3.0.5)
org.intellij.plugins.hcl (242.23339.11)
PythonCore (242.23339.11)
org.jetbrains.plugins.go-template (242.20224.155)
com.terminaltabtailor.TerminalTabTailor (1.4.1)
org.jetbrains.plugins.go (242.23339.11)
indent-rainbow.indent-rainbow (2.2.0)
Pythonid (242.23339.11)
com.intellij.plugin.adernov.powershell (2.7.0)
com.intellij.ml.llm (242.23339.40)
pro.bashsupport (4.3.0.242)
com.atlassian.bitbucket.references (2023.1.301)
com.majera.intellij.codereview.bitbucket (2024.3.3.242)
zielu.gitworktree (1.0.9+231)
org.sonarlint.idea (10.11.0.79648)
zielu.gittoolbox (600.0.1+242)
Kotlin: 242.23339.11-IJ
[...]
Regards,
Joan

repo: romaindalichamp/TerminalTabTailor


text:
Fix vagrant hostnames and kubernetes cache

Fix a couple of issues experienced when playing with the Kubernetes on Vagrant version.
Initially the nginx containers of the demo stayed in ContainerCreating state - as romana-ipam was erroring with duplicate entries in the DB, both saying -compute01, this was fixed via the Vagrantfile template correction.
Secondly the kubernetes binary tarball cache is causing the get_url to not be changed & so the extract not run when making a second cluster - the workaround isn't pretty but functional.  Note that the etcd download cache would suffer from the same fate but is broken due to mismatching filenames - left alone for minimum changes (I'm not testing widely).
Also a docs copy-pasta fix.

@tyrken Hey! Thanks for the PR. Looks like the demo parts of the install don't get the test coverage they need. @cgilmour wrote most of this code and it is Monday in NZ where he is based. He should be able to look in to this later today.

Thank you very much for your contribution! We have reviewed it. It looks good and we would like to merge it. However, before we can do this, we need to sort out a contributors agreement, which we are currently in the process of doing.
In the meantime, are you still held up by anything we can help you with, or are you able to make progress now with your patch?

@tyrken Hi, we'd like to merge your PR today but it's going to take a little while to set up the automated CLA system. In the meanwhile, we can execute the doc manually. If its not too much trouble, could you please sign the attached doc and return it to me (chris@romana.io).
Thanks
PaniCLA.pdf

Would like to, but going via my employer to make sure everything is ok...

Thank you! Please let us know if we can be of assistance.

CLA sent.

Thanks @tyrken. This has been merged.

authors: cgilmour chrismarino jbrendel tyrken

repo: romana/romana


text:
Call to a member function can() on a non-object

Hi i got this error when i tried to access with \Auth::user()->can('edit_articles')
but when i used \User::find(\Auth::user()->id)->can('edit_articles') its work

Oh my bad, my login session expired. thats why..

repo: romanbican/roles


text:
Revamped the Language flow

##Summary
Language Improvements

Thank you!

repo: romefrontend/rome


text:
概览里面pthome显示未登录，但是我确实登录了

PT助手版本：v1.1.2
PT助手安装方式：chrome应用商店
浏览器名称及版本：chrome v 76.0.3809.100
浏览器是否安装了其他插件：是
停用其他插件后是否正常工作：否
问题描述：概览里面pthome显示未登录，但是我确实登录了，打勾什么的都打了，浏览器重新登录了，插件也重装了，都没用

PT助手版本：v1.1.2
PT助手安装方式：chrome应用商店
浏览器名称及版本：chrome v 76.0.3809.100
浏览器是否安装了其他插件：是
停用其他插件后是否正常工作：否
问题描述：概览里面pthome显示未登录，但是我确实登录了，打勾什么的都打了，浏览器重新登录了，插件也重装了，都没用

我也有一样的问题 现在还没解决

@tiantangtianma 注意域名...

@tiantangtianma 注意域名...

你好请问是因为前面有www吗？但是我把www删了再刷新还是有www。是不是这就无解了？

@tiantangtianma 意思是你登录和助手里的网址必须一致

@tiantangtianma 两个域名都登录即可。

authors: lulvxiu ronggang ted423 tiantangtianma

repo: ronggang/PT-Plugin-Plus


text:
添加群晖DS，提示验证失败

v1.5.2.f2e4f20:

PT 助手安装方式：edge插件

浏览器名称及版本：edge 98.0.1108.56

浏览器是否安装了其他插件：是，但是无PT相关插件

停用其他插件后是否正常工作：否

问题描述：
添加下载服务器，提示身份验证错误，关闭二次验证，问题依旧。

相关截图：

重现步骤：

Dupe with https://github.com/ronggang/PT-Plugin-Plus/issues/971

话说readme里是不是应该加粗...


text:
getTypesAnnotatedWith() is not working with Lambda

Using getTypesAnnotatedWith() method, it seems it misses classes that are annotated by the annotation provided as argument, in case they contain a lambda expression.
package a;

import static org.testng.AssertJUnit.assertFalse;

import java.util.ArrayList;
import java.util.List;
import java.util.Set;

import org.reflections.Reflections;
import org.springframework.stereotype.Component;
import org.testng.annotations.Test;

@Component
public class ReflectionLambdaTest {

    @Test
    public void test() {
        Reflections ref = new Reflections("a");
        Set<Class<?>> res = ref.getTypesAnnotatedWith(Component.class);
        List<String> l = new ArrayList<>();
        // l.stream().forEach(a -> a.toCharArray()); // <-- if you unmark this, the test fails
        assertFalse(res.isEmpty());
    }

}

There is also an issue with Lambdas and the Java 8 forEach method when using the getSubTypesOf() method as well. In testing, I noticed that my classes cannot be found using that method if there are Lambdas or forEach calls in the class, but if they are commented out they are easily found.

After upgrading javassist to latest (3.20.0-GA instead of 3.15.0-GA) it worked.

Hello,
When using maven, update the dependencies like that (Worked for me):
	<dependency>
		<groupId>org.reflections</groupId>
		<artifactId>reflections</artifactId>
		<version>0.9.10</version>

		<exclusions>
			<exclusion>
				<groupId>org.javassist</groupId>
				<artifactId>javassist</artifactId>
			</exclusion>
		</exclusions>

	</dependency>

	<dependency>
		<groupId>org.javassist</groupId>
		<artifactId>javassist</artifactId>
		<version>3.20.0-GA</version>
	</dependency>

authors: Spectrality igolus tzvatot

repo: ronmamo/reflections

license: WTFPL


text:
Authorization fails for Google login

Hi ronzeidman,
A 404 error occurred with zone.js file while authenticating the user (POST request). Please refer to the attachments.
Thanks

WebClientFrontEnd.zip

The error says that there is no such route with the name auth/google in your server, the code you gave was client code. I guess your problem is that you didn't implement the server-side.
You can see a basic server-side example for basic login, google and twitter here: https://github.com/ronzeidman/ng2-ui-auth-example/blob/master/server/src/routes/auth.ts
and an example for various server-side implementation for everything and many languages here:
https://github.com/sahat/satellizer/tree/master/examples/server

Can you please explain how to implement the server side to my existing code. I'm new to Angular 2 and can you describe me the basic steps?

The server-side is not about angular2 it's an implementation that runs in your server to save your user login info in your database. If you are using a serverless implementation (like firebase/horizon) you'll have to use a serverless authentication solution like auth0 (https://auth0.com/).
In what language is your server written? whats the database you are using?

authors: ChamithaCalcey ronzeidman


text:
🛑 V2RAY 🇮🇩 Indonesia IDG 1 is down

In 2cffc95, V2RAY 🇮🇩 Indonesia IDG 1 (https://idv-2.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇮🇩 Indonesia IDG 1 is back up in 642f4d2.

repo: roosterkid/opentunnel-status-server


text:
🛑 TROJAN 🇩🇪 Germany DEH 1 is down

In 5c8f95e, TROJAN 🇩🇪 Germany DEH 1 (https://det-1.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇩🇪 Germany DEH 1 is back up in 7e46347.


text:
🛑 TROJAN 🇳🇱 Netherlands NLB 1 is down

In 9ded54a, TROJAN 🇳🇱 Netherlands NLB 1 (https://nlt-1.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇳🇱 Netherlands NLB 1 is back up in 56ccb1a.


text:
🛑 TROJAN 🇬🇧 United Kingdom UKO 2 is down

In 37a7894, TROJAN 🇬🇧 United Kingdom UKO 2 (https://ukt-2.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇬🇧 United Kingdom UKO 2 is back up in 4ac2f2d.


text:
🛑 TROJAN 🇸🇬 Singapore SGV 1 is down

In 5fcd62d, TROJAN 🇸🇬 Singapore SGV 1 (https://sgt-1.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇸🇬 Singapore SGV 1 is back up in 8d59710.


text:
🛑 V2RAY 🇮🇩 Indonesia IDA 1 is down

In 5d916f9, V2RAY 🇮🇩 Indonesia IDA 1 (https://idv-1.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇮🇩 Indonesia IDA 1 is back up in 17daf6a.


text:
🛑 TROJAN 🇬🇧 United Kingdom UKO 2 is down

In b935aa6, TROJAN 🇬🇧 United Kingdom UKO 2 (https://ukt-2.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇬🇧 United Kingdom UKO 2 is back up in a76fc5a.


text:
🛑 OVPN 🇸🇬 Singapore SGA 2 is down

In 992eac6, OVPN 🇸🇬 Singapore SGA 2 (http://sgo-3.opensvr.net:8080/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: OVPN 🇸🇬 Singapore SGA 2 is back up in 4c240d7.


text:
🛑 XRAY 🇸🇬 Singapore SGO 2 is down

In d88d85b, XRAY 🇸🇬 Singapore SGO 2 (https://sgx-3.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: XRAY 🇸🇬 Singapore SGO 2 is back up in 233fcfa.


text:
🛑 SSH 🇬🇧 United Kingdom UKD 1 is down

In 70dea77, SSH 🇬🇧 United Kingdom UKD 1 (http://uks-1.opensvr.net:8080/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: SSH 🇬🇧 United Kingdom UKD 1 is back up in 3fbf676.


text:
🛑 SSH 🇮🇩 Indonesia IDA 1 is down

In 36c8c93, SSH 🇮🇩 Indonesia IDA 1 (http://ids-2.opensvr.net:8080/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: SSH 🇮🇩 Indonesia IDA 1 is back up in 41d985f.


text:
🛑 V2RAY 🇺🇸 United States USP 4 is down

In b412027, V2RAY 🇺🇸 United States USP 4 (https://usv-4.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇺🇸 United States USP 4 is back up in 5df10ac.


text:
🛑 V2RAY 🇮🇩 Indonesia IDA 1 is down

In e019952, V2RAY 🇮🇩 Indonesia IDA 1 (https://idv-1.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇮🇩 Indonesia IDA 1 is back up in 088b34b.


text:
Revising throughput benchmarks after new subscribe system.

minimal test benchmark
# scratch1.py
from maslite import Agent, Scheduler, AgentMessage

class Msg(AgentMessage):
    def __init__(self, sender, receiver=None, topic=None):
        super().__init__(sender, receiver, topic)
        self.value = 0

class A(Agent):
    def __init__(self, uuid=None):
        super().__init__(uuid)

    def update(self):
        if self.messages:
            m = self.receive()
            assert isinstance(m, Msg)
            m.value += 1
            m.receiver, m.sender = m.sender, m.receiver
            self.send(m)

if __name__ == "__main__":

    s = Scheduler()
    a = A()
    b = A()
    s.add(a)
    s.add(b)
    m = Msg(a,b)
    a.send(m)
    s.run(seconds=10)
    print(f"{m.value/10:,}")
    # python3.10 = 323,611.8
    # pypy3.10 = 3,135,626.1

barebone benchmark
# scratch3.py
from itertools import count
from collections import deque
from time import time

class Msg:
    def __init__(self,s,r) -> None:
        self.sender = s
        self.receiver = r
        self.value = 0

class Agent:
    ids = count(start=1)
    def __init__(self) -> None:
        self.id = next(Agent.ids)
        self.messages = deque()
        self._scheduler = None
    def receive(self):
        return self.messages.popleft()
    def send(self, msg):
        self._scheduler.msg_q.append(msg)
    def update(self):
        if self.messages:
            m = self.receive()
            assert isinstance(m, Msg)
            m.value += 1
            m.receiver, m.sender = m.sender, m.receiver
            self.send(m)

class Scheduler:
    def __init__(self) -> None:
        self.msg_q = []
        self.agents = {}

    def add(self, agent):
        assert isinstance(agent, Agent)
        self.agents[agent.id] = agent
        agent._scheduler = self

    def run(self, seconds):
        start = time()

        loops = 0
        while True:
            loops +=1
            active_agents = set()
            for m in self.msg_q[:]:
                receiver = self.agents[m.receiver]
                receiver.messages.append(m)
                active_agents.add(m.receiver)
            self.msg_q.clear()
            for id in active_agents:
                self.agents[id].update()

            if loops % 10 == 0:
                loops = 0
                if start + seconds > time():
                    continue
                else:
                    return

if __name__ == "__main__":

    s = Scheduler()
    a = Agent()
    b = Agent()
    s.add(a)
    s.add(b)
    m = Msg(a.id,b.id)
    a.send(m)
    s.run(seconds=10)
    print(f"{m.value/10:,}")
    # python3.10 = 1,285,197.0
    # pypy3.10 = 15,908,693.0

Summarized:

maslite now
lower bound
diff

python310
323,611.8
1,285,197.0
4x

pypy310
3,135,626.1
15,908,693.0
5x

Based on this observation I would like the workgroup to consider changing the implementation to use at 3 message types
class Msg:  # used for 1:1 communication
    def __init__(self,s,r) -> None:
        self.sender = s
        self.receiver = r

class BroadCast:  # used for topic based broadcasts, e.g. one to many
    def __init__(self, s, topic) -> None:
        self.sender = s
        self.topic = topic

class Forum:  # used for narrow band broadcasting
    def __init__(self,s,forum):
        self.sender = s
        self.forum = forum

as I believe that these three message types will cover all needs and not slow down maslite to the degree which the current patch does.

Proposals:
Disable line 755:
self.subscribe(subscriber=agent.uuid, receiver=None, topic=agent.__class__.__name__)

After extensive testing, see results.
To benchmark a counter was placed on the distribution of the original message (in send_to_recipients in the Scheduler) - this avoids counting the message duplicates which are sent to subscribers.
Subscribers can subscribe to 2 of sender, receiver, topic. In the table below (True, True, False) indicates a subscriber to the sender receiver combination for any message topic.

Profiling the get_mail_recipients function showed that it was responsible for 14 - 16% of the total runtime.
I opted for updating the get_mail_recipients function to deliver an equivalent minimum functionality (akin to that shown in the bare bone benchmark). The function was as follows:
def get_mail_recipients(self, message):      return [message.receiver]
The result for direct messages performance was 540, 311 msgs/second.
This is interesting for 2 reasons:

Firstly it shows that the overheads of the MASlite classes account for a loss of 1, 109, 788 msgs/s (1, 650, 099 - 540, 311) vs. the bare bone run - should we re-think the target of 1.6M msgs/second?
Secondly it shows that we are losing 138, 767 msgs/s (540, 311 - 401, 544) in the get_mail_recipients function itself - this is something we can target.

Targeting improvements to get_mail_recipients function:

Currently on MailingList.add() the Agent is subscribed to itself and its class. The first part of this results in there being no distinction between direct messages and subscriptions - all messages are distributed as if they are subscriptions. However, we send significantly more direct messages than we have subscribers, so why not fast-track this? Secondly, why does the Scheduler decide that it is of value to have the agents subscribed to messages targeting their class? This shouldn't be the responsibility of the Scheduler. Experiment 1 removes this.
When subscription is registered it is possible to flag the types of subscription present in the system. This flag can then be used during get_mail_recipients to determine if there is even a need to fetch the directory and potentially prevent the retrieval of the directory completely (for (False, False, False) cases). Experiment 2 introduces this alongside shortcutting the direct messages.
Introduce a separate message type which cannot be subscribed to. This will prevent the directory being fetched for this message type. NOTE: This message type would serve for the DiscreteEventMessage and other "kick" type messages, potentially even the NAT messages. Experiment 3 uses only the DirectOnly message type - this can be seen in the subscription levels not having any influence on the system performance.
Send 50% DirectOnly and 50% subscription-eligible messages. Experiment 4.

One final investigation I carried out to shed a little more light on the efficiency of the nested dict vs the flag system
By counting the conditionals we can see how many calls are made using each of the methods and whether or not the flags add value.
{'results_no_flag': {'mean': 7.165354330708661, 'median': 5.0, 'mode': 5, 'min': 2, 'max': 13,                          'complete_miss_mean': 4.267716535433071, 'complete_miss_median': 5, 'complete_miss_mode': 5,                          'complete_miss_min': 2, 'complete_miss_max': 5, 'hit_mean': 10.062992125984252,                          'hit_median': 11, 'hit_mode': 11, 'hit_min': 2, 'hit_max': 13, ('fff_fft', 'complete_miss'): 5,                          ('fff_fft', 'hit'): 5},      'results_with_flag': {'mean': 13.05511811023622, 'median': 12.0, 'mode': 12, 'min': 6, 'max': 24,                            'complete_miss_mean': 11.039370078740157, 'complete_miss_median': 11,                            'complete_miss_mode': 10, 'complete_miss_min': 6, 'complete_miss_max': 16,                            'hit_mean': 15.070866141732283, 'hit_median': 15, 'hit_mode': 15, 'hit_min': 6,                            'hit_max': 24, ('fff_fft', 'complete_miss'): 9, ('fff_fft', 'hit'): 9}}
The results show that in all cases we are processing more conditional statements with the flags than without.

I have pushed a release which takes advantage of the direct message style, the new benchmarked results are:
python3.9 benchmarks.py - 480,440.9 messages/second
pypy3 benchmarks.py - 6,441,251.9 messages/second


text:
__sysctlbyname_hook parameters

src path:
Dopamine2-roothide/BaseBin/systemhook/src
/main.c
old:
int __sysctlbyname_hook(const char *name, size_t namelen, void *oldp, size_t *oldlenp, void *newp, size_t newlen)
{
if(name && strncmp(name, "security.mac.amfi.developer_mode_status", namelen)==0) {
return 1;
}
return syscall__sysctlbyname(name,name,oldp,oldlenp,newp,newlen);
}
new :
int __sysctlbyname_hook(const char *name, size_t namelen, void *oldp, size_t *oldlenp, void *newp, size_t newlen)
{
if(name && strncmp(name, "security.mac.amfi.developer_mode_status", namelen)==0) {
return 1;
}
return syscall__sysctlbyname(name,namelen,oldp,oldlenp,newp,newlen);
}

thanks

repo: roothide/Developer


text:
[Sage 10] Move built assets to storage/theme/assets

I think it is easier to have 1 directory (storage) for generated files instead of 2 (storage and dist).
As far as semantics go, public — Laravel’s default (Mix’s too) for built files — doesn’t make sense for Sage since it isn’t the only public directory in Sage. dist is a bit better, however, I think it’s still a bit misleading since it’s not the only theme folder which is distributed. storage makes sense, since it a place for the theme to store files it creates.
Obviously, storage/theme/assets is rather long to write out, but that could be remedied by using a mix.config.publicPath helper within webpack.mix.js.

Storage isn't just used for generated files, to be clear. It can be used to simply store stuff that doesn't belong elsewhere. Since Acorn Application can only have a single base path, the default base path is your theme (in our case, Sage) folder. So all the normal Laravel stuff involving storage will use sage/storage/*.
This has conflicts now since I merged that other PR, but I'd rather wait for input from others before merging anyway. My preference is to keep the dist folder, but I'm not super tied to it.

I'm kinda leaning towards dist.
https://app.test/app/themes/sage/storage/theme/assets/styles/app.css just feels a little intense to me.

Let’s stick with dist.

repo: roots/sage


text:
Failed to install LOOP

RaspiBlitz v1.5.1
Tried to install LOOP from the RaspiBlitz Menu System - getting this error -
Created symlink /etc/systemd/system/multi-user.target.wants/loopd.service → /etc/systemd/system/loopd.service.
OK - the Lightning Loop service is now enabled
./bonus.loop.sh: line 85: loop: command not found
Failed to install Lightning Loop
Tried running the bonus.loop.sh script manually (as directed) with same result.

There were some reports on Problems with Loop on v1.5.1 .. that should be fixed and was restested with the lastest v1.6 release. Please try that one and re-open issue if you still have problems.

So are you saying that the latest version (0.8.0) of LOOP installs and runs without any errors on RaspiBlitz v1.6 ? Has this been tested?
I had no problems installing v0.6.5  and v0.7.0 of LOOP on RaspiBlitz v1.5.1.
This 0.8.0 version is the first one to fail - maybe its a LOOP problem - worth investigating further.

On the v1.6 release we still use Loop 0.6.5 - that worked well with the rest of the setup of the 1.6.

Well yes - LOOP v0.6.5 worked fine for me too but all these third party apps are being updated with new functionality all the time, not to mention all the bug fixes, so RaspiBlitz should be taking advantage of this.
There should be a menu option to upgrade all apps to the latest versions as and when they become available.
So how do I go back to v.0.6.5 of LOOP? The git pull downloads the latest version available. Is there a parameter I can add to get a specific version?

So how do I go back to v.0.6.5 of LOOP?

Thats why maybe just putting there a button that lets user update users all apps to the latest versions not a good idea ;)
With everything changing so fast testing what works together is part of our RaspiBlitz releases - at least we try our best. Everybody is free to try updates by themselves on their own risk - we even depend on reporting on that experience ... but as you can see on your own question, if we offer something by default we are also expected to offer down-grades. But that adds a lot of additional complexity .. there could be data migrations between vesion that cannot be reversed, etc.
You can try to go with a fresh sd card, that will rebuild your system will all the old app versions.

No - a fresh SD card is not an option as then I will have 3 apps to upgrade to the latest versions - Bitcoin, LND and RTL.
There must be a simpler way to go back to v0.6.5 (or v0.7.0) - I will ask LOOP support for help and advice.

Where do you end up with in the RaspiBlitz SERVICES menu turning Loop OFF and then ON again?

As my first message says - getting this error -
Created symlink /etc/systemd/system/multi-user.target.wants/loopd.service → /etc/systemd/system/loopd.service.
OK - the Lightning Loop service is now enabled
./bonus.loop.sh: line 85: loop: command not found
Failed to install Lightning Loop
The loopd service isn't running and calling the 'loop' command fails.

Ah right you were on that old v1.5.1 and updated LND, Bitcoind and RTL even over the versions that v1.6 provides. So from the support side I can just say you would need to wait until v1.7 (what will be a while) are experiment on your own (always make a LND backup before tyring stuff out).

Yes I am and I don't have any problems running the latest releases of Bitcoin, LND and RTL.
I don't understand why now, the bonus.loop.sh script fails on line 85 and fails to install/start the loopd service and why the loop command does not exist no matter what version of LOOP I try to install.
The script worked fine before and there have not been any changes to it at all.

Try to replace it with the bonus.loop.sh from the master branch.

Yes - just done it now - installing v0.6.5. Will let you know..........

OK - now its failing on line 83 -
admin@raspberrypi:~/config.scripts $ sudo ./bonus.loop.sh on
making sure the loop service is not running
*** INSTALL LIGHTNING LOOP ***
Check Framework: Go
Installed go version go1.13.3 linux/arm
Cloning into 'loop'...
remote: Enumerating objects: 59, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (44/44), done.
remote: Total 2578 (delta 21), reused 36 (delta 15), pack-reused 2519
Receiving objects: 100% (2578/2578), 1.28 MiB | 2.26 MiB/s, done.
Resolving deltas: 100% (1669/1669), done.
HEAD is now at 9c503fc Merge pull request #245 from joostjager/bump-v0.6.5-beta
[Unit]
Description=Loopd Service
After=lnd.service
[Service]
WorkingDirectory=/home/bitcoin/loop
ExecStart=/usr/local/gocode/bin/loopd --network=mainnet
User=bitcoin
Group=bitcoin
Type=simple
KillMode=process
TimeoutSec=60
Restart=always
RestartSec=60
[Install]
WantedBy=multi-user.target
Created symlink /etc/systemd/system/multi-user.target.wants/loopd.service → /etc/systemd/system/loopd.service.
OK - the Lightning Loop service is now enabled
./bonus.loop.sh: line 83: loop: command not found
Failed to install Lightning Loop

Your go install seems not to run ... there should be a lot of go: downloading ... outputs

So what is the cause of that?

What happens if you go to terminal and run
cd /home/bitcoin/loop/cmd
go install ./...

Well the 'go install ./...' command has been running for 10 mins now with no output to the terminal.

Got something now -
admin@raspberrypi:/home/bitcoin/loop/cmd $ go install ./...
github.com/lightninglabs/loop/cmd/loop
panic: runtime error: index out of range [-1445]

maybe something with your go install went wrong ... try
/home/admin/config.scripts/bonus.go.sh off
/home/admin/config.scripts/bonus.go.sh on

OK - done that - this is what I got -
admin@raspberrypi:/home/bitcoin/loop/cmd $ /home/admin/config.scripts/bonus.go.sh off
Check Framework: Go
Installed go version go1.13.3 linux/arm
admin@raspberrypi:/home/bitcoin/loop/cmd $ /home/admin/config.scripts/bonus.go.sh on
Check Framework: Go
Installed go version go1.13.3 linux/arm

hmmm do this again:
sudo rm -rf /usr/local/go
/home/bitcoin/loop/cmd $ /home/admin/config.scripts/bonus.go.sh on

And then try the bonus loop script again.

OK - installing GO now - watch this space.

Ok - LOOP now installed with no errors.
I've just rebooted the RPi4 to get a clean start and I will check if LOOP is available in RTL again when back up and running.

OK that maybe the right moment to remind that there is a way to donate to the project on my tallycoin page ;)
https://tallyco.in/s/r5lx23/

Sure! - no worries! - As soon as my node spends some time online making money, donations to the project will start flowing.

Yep! - LOOP v0.8.0 now working fine.
Who would have thought the problem was caused by a corrupt GO installation - you learn something new every day!
Thanks for your help.

authors: marssystems rootzoll

repo: rootzoll/raspiblitz


text:
Fix JTC segfault

Purpose
Addresses #132. Fixes a segfault that could occur in regular use of the joint_trajectory_controller, as exposed by the unit tests.
Summary
There was a race condition in the JTC, where rt_active_goal_ could be reset() in one thread (joint_trajectory_controller.cpp:568) but then dereferenced elsewhere. This would cause a segfault.
For example, in JointTrajectoryController::update(), we check that rt_active_goal_ is non-null, and then dereference it a couple lines later. But if we get unlucky with timing, we can reset the shared_ptr in another thread in-between the non-null check and the dereference. We don't currently have the appropriate thread safety mecanisms in place.
By taking a copy of the rt_active_goal_ shared ptr before checking and using it, we ensure the local copy will never becoming invalid while we're holding it. The RealtimeBuffer is required since we need to read and write to the shared ptr concurrently from multiple threads.
Testing done
:heavy_check_mark: colcon test --packages-select joint_trajectory_controller --retest-until-fail 100

The CI failure looks unrelated: colcon: error: Mixin 'coverage-gcc' is not available for 'test'.
ros-tooling/setup-ros v0.1.3 was just released a few days ago, maybe something changed?

Thanks a bunch for this fix, a big step toward a green pipeline! :D

authors: bmagyar matthew-reynolds


text:
feat: Add ClickedPoint Panel

A simple panel has been added in order to decrease the complexity of using rviz/PublishPoint tool so that the coordinates of the clicked point will be shown in the panel and there will be no need to subscribe to /clicked_point topic anymore.

@dhood Can you please update me about the state of this PR? Is it going to be merged soon?
Thanks.

Hi @alireza-hosseini, thanks for the contribution! And thanks for your patience.
I can appreciate that you are interested in seeing the last clicked pointed visualised in the display. An issue with the implementation though is that it's hard-coded the topic to /clicked_point, while the Publish Point tool can be configured to publish on different topics via the Tool Properties panel. That means this panel will stop working if someone changes the tool's topic.
Would the following be sufficient for your use case?

Update the default status message of the tool (shown at the bottom of rviz) to say the last clicked point.
Disable the "single click" option on the publish point tool so the status is still displayed after clicking.

If so, that would be the simplest change to be able to see the last clicked point.

I'm not quite sure about the utility of this PR. If I understand you, @alireza-hosseini, correctly, you want to display the published point. However, having the PublishPoint tool activated, the to-be-published point is shown in the status bar. Doesn't that suffice?
If not, and you want to see the actually published point for a while, a simpler way to go (rather than adding another panel) was suggested in https://github.com/ros-visualization/rviz/pull/1194#issuecomment-379415779. However, you didn't react on this.
For this reason, I will close this PR for now. If you are still interested in the proposed solution, please feel free to open a corresponding issue or - even better - file a pull request.

authors: alireza-hosseini dhood rhaschke

repo: ros-visualization/rviz


text:
Fix dev build dep on TinyXML2

Tests weren't properly depending on tinyxml2_vendor.

@mjcarroll it seems like we haven't actually needed this change for our Windows builds nor have I seen any user reports about it.
At first I was hoping to avoid explicit dependencies on our vendor packages but without this patch we're basically just "getting lucky" with TinyXML2 being available prior to finding tinyxml2_vendor. So let's get CI sorted and get this merged.

So let's get CI sorted and get this merged.

We dropped Travis from the ROS 2 branch in #142.

Do you want me to rebase?

Do you want me to rebase?

The PR will get squash-merged and there aren't any current conflicts. As long as we use the branch feature on ci.ros2.org this branch will be merged into the ros2 one for CI. But it can't hurt.

authors: mjcarroll nuclearsandwich

repo: ros/pluginlib


text:
mongodb_store: 0.4.2-0 in 'indigo/distribution.yaml' [bloom]

Increasing version of package(s) in repository mongodb_store to 0.4.2-0:

upstream repository: https://github.com/strands-project/mongodb_store.git
release repository: https://github.com/strands-project-releases/mongodb_store.git
distro file: indigo/distribution.yaml
bloom version: 0.6.4
previous version for package: 0.4.1-0

libmongocxx_ros
* instead of lsb-release read /etc/os-version from CMake to find OS version
* Contributors: Ferenc Balint-Benczedi

mongodb_log
* instead of lsb-release read /etc/os-version from CMake to find OS version
* Contributors: Ferenc Balint-Benczedi

mongodb_store
* instead of lsb-release read /etc/os-version from CMake to find OS version
* Contributors: Ferenc Balint-Benczedi

mongodb_store_msgs

No changes

@hawesie Heads-up: The change from lsb_release to /etc/os-release makes the code not OS independent anymore. For example Debian doesn't provide a VERSION_CODENAME in /etc/os-release.

authors: hawesie mikaelarguedas

repo: ros/rosdistro