Feature: Tibia News endpoints

This feature includes following endpoints:

GET /v3/news/archive
GET /v3/news/archive/:days
GET /v3/news/id/:news_id
GET /v3/news/latest
GET /v3/news/newsticker

Codecov Report

Merging #32 (b885a1c) into main (afdf2d5) will decrease coverage by 0.67%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main      #32      +/-   ##
==========================================
- Coverage   13.25%   12.57%   -0.68%
==========================================
  Files          13       15       +2
  Lines        1803     1900      +97
==========================================
  Hits          239      239
- Misses       1556     1653      +97
  Partials        8        8

Impacted Files
Coverage Δ

src/TibiaNewsV3.go
0.00% <0.00%> (ø)

src/TibiaNewslistV3.go
0.00% <0.00%> (ø)

src/webserver.go
12.86% <0.00%> (-0.25%)
:arrow_down:

Continue to review full report at Codecov.

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


Generate models with properties of built-in types from Cadl

Models with properties of Cadl built-in types
This tracks the work to generate models (input/output/round-trip) from a Cadl API description that have properties of the following Cadl built-in types:
Input Cadl file
Cadl testserver models/primitive-properties
Expected output
Files:

[x] PrimitivePropertyModel.cs
[x] PrimitivePropertyModel.Serialization.cs
[x] Cadl types map to .NET types as described in type mapping below
[x] RequiredBodyDateTime is serialized as writer.WriteStringValue(RequiredBodyDateTime, "O")
[x] RequiredDuration is serialized as writer.WriteStringValue(RequiredDuration, "P")

Basic type mappings

[x] Cadl string -> .NET string
[x] Cadl int32 -> .NET int,

note: resiliency work tracked separately by https://github.com/Azure/autorest.csharp/issues/2354#issuecomment-1191995113

[x] Cadl int64 -> .NET long
[x] Cadl safeint -> .NET long,

note: expect service-side validation that value is within int53 range

[x] Cadl float32 -> .NET float

note: there is no Azure API resiliency requirement for float to grow to a double

[x] Cadl float64 -> .NET double
[x] Cadl zonedDateTime -> .NET DateTimeOffset

note: RFC3339 if serialized in JSON body
header serialization using RFC7321 if serialized via a header, tracked by https://github.com/Azure/autorest.csharp/issues/2493

[x] Cadl duration -> .NET TimeSpan
[x] Cadl boolean -> .NET boolean

Assigned to me during design specification phase; will reassign once design is complete for implmentation.

Moving collection and dictionary properties to https://github.com/Azure/autorest.csharp/issues/2453

Moving PlainDate and PlainTime to https://github.com/Azure/autorest.csharp/issues/2473, as they are out of scope for the August MVP.  @KrzysztofCwalina FYI

See the test case here: https://github.com/Azure/autorest.csharp/blob/d969aba11793bab86d3ca39e7252e94171c5ed31/test/AutoRest.TestServerLowLevel.Tests/LowLevel/Generation/ModelWriterTests.cs#L30-L51
I think we can close this issue.

@lirenhe / @archerzz, could you provide the output of the generator on https://github.com/Azure/cadl-ranch/tree/main/packages/cadl-ranch-specs/http/models/roundtrip-basic, so I can confirm that this issue is complete?

@lirenhe / @archerzz, could you provide the output of the generator on https://github.com/Azure/cadl-ranch/blob/main/packages/cadl-ranch-specs/http/models/primitive-properties/main.cadl, so I can confirm that this issue is complete?


Please saw these review

No one can register on your forums.
https://forum.codeigniter.com/member.php
I think we could teach an Orangutan to produce a higher quality product.
 It just brings a smile to my face.

sorry your girlfriend dumped you

taylor,
Actually I dumbed her way before she could have ever dumbed me.
On Mon, Feb 10, 2020 at 9:29 PM Tyler<EMAIL_ADDRESS>wrote:

sorry your girlfriend dumped you
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/bcit-ci/CodeIgniter/issues/5904?email_source=notifications&email_token=AAAXTKB4GP7BQYTSONXXRGLRCIEQBA5CNFSM4KSZDTOKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELLBEHI#issuecomment-584454685,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAXTKGCHXKJ37XEK77M4YDRCIEQBANCNFSM4KSZDTOA
.

@zee85 What issues did you have creating an account? I just created a new account and it worked just fine for me. I didn't go through email verification, though, so if you're hitting a snag there, it'd be great to know so we can try and get it fixed.

Are you part of the current CI team?

FYI, I've blocked zee85.
3 issues and multiple comments - his entire activity here, bar the last comment in this thread - have all been openly hostile, personal attacks against me. I wish there was at least a visible reason for that, but ... well, I guess some people are just like that.


XCODE DOESN'T COMPILE

Hi, first of all congratulations for the library, it's great.
When I try to build the project with Xcode it fails. The error is next:
Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_FLAnimatedImageView", referenced from:
      type metadata for DKPhotoGallery.DKPhotoImageView in DKPhotoImageView.o
  "_OBJC_METACLASS_$_FLAnimatedImageView", referenced from:
      _OBJC_METACLASS_$__TtC14DKPhotoGallery16DKPhotoImageView in DKPhotoImageView.o
  "_OBJC_CLASS_$_FLAnimatedImage", referenced from:
      objc-class-ref in DKPhotoBaseImagePreviewVC.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

However, when I execute tns debug ios in console it's build perfectly and the app run fine.
What`s happening? Maybe Do I forgot some configuration?
Thanks!

Try to clean your project with Command + Shift + K.


Detected integration that restore_state.RestoreStateData.async_get_instance is deprecated

2023-07-12 14:51:38.688 WARNING (MainThread)
[homeassistant.helpers.frame]
Detected integration that restore_state.RestoreStateData.async_get_instance is deprecated,
and not intended to be called by custom components;
Please refactor your code to use RestoreEntity instead;
restore_state.async_get(hass) can be used in the meantime.

Please report issue to the custom integration author for pyscript
using this method at custom_components/pyscript/__init__.py,
line 83: restore_data = await RestoreStateData.async_get_instance(hass)

Duplicate of #473.


Bot has stopped, and is no longer crawling.

Bot has stopped, and is no longer crawling.

It was stopped a few days ago because someone noticed we are losing addresses.
https://github.com/LukePrior/nbn-upgrade-map/issues/326#issuecomment-1951680109

It was stopped a few days ago because someone noticed we are losing addresses. [#326 (comment)]

Yes, that was me.  Wasn't sure the fact that it was stopped was intentional or not.

See other thread


ndarray views and binary encoding

This PR adds support for ndarray views, or tracking references inside nd-arrays. In a nutshell:
        # the fact that this works is a defining feature of this package
        row = [1, 2, 3]
        nested_list = [row, row]
        nested_list_ = roundtrip(nested_list)
        nested_list_[0][0] = -1
        assert nested_list_[1][0] == -1

        # so it would be kinda nice if this worked the same way; which it does as per this PR
        row = np.arange(3)
        jagged_array = [row, row[:]]
        jagged_array_ = roundtrip(jagged_array)
        jagged_array_[0][0] = -1
        assert jagged_array_[1][0] == -1

Also, arrays with more elements than a given threshold are encoded as (optionally) compressed b64. This is a much simpler and somewhat separate issue; so perhaps it does not belong in this PR, though personally I would really like to see that merged as well. For big arrays, the computational overhead of conversions to string are huge, and the human-readability argument for them is pretty much void.
Feedback is very much welcome!

Also, this PR fixes a bug when pickling arrays with a shape containing zeros; see the test suite.

Done reviewing. Other than those minor notes this looks really great.  Looking forward to merging this!

One open question I still have is how to make the serialization behavior more composable. There are several parameters to the current handlers; when to store as binary, if ever; what compression to apply, if any; when to store views and when to make deep copies; and maybe others.
Seems like it would not be too hard to allow constructor arguments on handler subclasses, and register an instance instead of the class; just need a little refactor to bind the context differently depending on if the registered handle is a class or instance. Thoughts?

Constructor arguments would be a good general-purpose way of fixing it.  Another way would be to have the pickler/unpickler have a self.handler_data = {} that handlers can use for stashing things via self.context.handler_data['numpy.foo'] = 'bar' but I'm not sure if that'd be a little too much of a coupling between handler and pickler/unpickler.

Yeah; another thing is the inheritance relation I have right now does not allow you to

Thanks for the feedback! Id like to add some tests relating to byte-ordering still (not 100% sure that works correctly with views yet), and add init methods to the handlers as discussed; but I think that will be all for now then.

By the way; id recommend bumping the minor version number; even though I expect existing data to load just fine, people may be relying on the old behavior, where serialization destroys views.

Good to go, as far as I am concerned!

I think the python version compatibility issues have been resolved; but it would be nice to add CI I suppose. only tested on windows so far.
Ive reworked the way byteorder information is stored quite a bit. The byteorder of views is now stored relative to their base array (absent in the default case of identical byteorder), which also means that there is no need to store it with all text arrays, which was kinda verbose and ugly.

To add to my previous comment; I think it would be ideal if the serialization behavior of both the stride order and byte order would be configurable. From a serialization-purity perspective, we would like to restore the exact byteorder and strides that we put in in the first place; but for practical intents and purposes, it is typically much more desirable to take the opportunity to 'normalize' these attributes to their numpy/platform defaults while we have the chance. There are arguments to be made for both, and I don't think this choice should be forced at the library level. Would be nice if in the constructor we could specify byteorder and strideorder as either relative to platform default, or absolute. But it will require some tinkering.
Another question; should the binary format be explicitly stored? Already ran into this problem when applying jsonpickle, when changing from bz2 to zlib compression... would also make it easier to support npz format as well.
By the way, I realize I havnt really given any thought yet to object arrays; they are fundamentally rather different from a serialization perspective, since they contain references. I suppose these should always be serialized as text... which is fine since they are rarely very big anyway... Ill make some tests for it.

print (jsonpickle.encode([dict(a=1)]*2, make_refs=True))
[{"a": 1}, {"a": 1}]

Ran into this while working on object arrays; is this a bug? I would expect to see one dict and a reference here. Or are references to primitive types such as lists and dicts not supported?

For simplicity we only track references to objects that can't be ordinarily encoded by json as-is. We don't track dicts or lists but I can see how that could be useful, and it is a better, more general solution.
The referencing machinery is something that could benefit from a redesign.  Right now the IDs stored in json are basically the index into the list of objects we've seen as traversing, which can be fragile and probably would break down if we were to properly handle list and dict references.
A better way might be to change the storage into a flat object dict keyed by IDs (id(...) like we currently do?) that we store and restore in dependency (and reverse) order.  In order to ensure that we can recreate all references we could also store the list of keys so that the decoder can traverse the objects in the reverse order as it did when encoding them.
If you git grep _Proxy you'll see one part of the current design that would be really great to eliminate/redo.  Another possibly questionable thing is that we're dependent on the final json being written with sorted keys (git grep sort).  It would be nice if that wasn't required.

If explicitly storing the binary format helps the current (and possible future) formats then that sounds like a good idea to include IMO.

Thanks for the elaboration; looking forward to the redesign that unifies this behavior. This behavior surprised me as well; is there a rationale for that?
print (jsonpickle.encode([[NumpyTestCase]]*2, make_refs=True))
[[{"py/type": "__main__.NumpyTestCase"}], {"py/id": 1}]
print (jsonpickle.encode([NumpyTestCase]*2, make_refs=True))
[{"py/type": "__main__.NumpyTestCase"}, {"py/type": "__main__.NumpyTestCase"}]

Wrt the sorting: from a human readability perspective, I think itd be nice if all objects being referenced explicitly stored their own unique id, rather than having this id encoded implicitly. That way, if I look at my json and see a py/id tag, I could quickly crtl-f the corresponding id to jump there.

What work still needs to be done on this PR to get it merged?

@Korijn the PR as-is breaks python2 so we can't merge it until those issues are addressed. That said, I see there was a last 2.7 fix commit, which should help, but I don't know if the issues about "no newline at end of file" were ever addressed.
I still see base64.encodebytes in the diff, so I think that change needs to be removed since it breaks python2 and it doesn't change any observable behavior for other versions, so it doesn't make sense to change that.  I think if that's addressed then it should be python2-compatible.
I just double-checked and make tox still fails for python2.7.  It does pass for python3.4.  One more fix, pretty please?

Sorry for the delay; my list of things that id ideally still like to change to this PR kept growing, while my amount of free time kept shrinking. Finally have my new apartment more or less in order though, so hopefully one of these days I can polish this off so it is good to go.


PingAsync() doesn't work if remote connection isn't authenticated

Should probably show an authentication popup

Sure, part of #2338

Ok, then I'll apply a quick fix to unblock current switch between connections.


Deploy implementation/common core for more advanced usage of API

Currently, the API is available on maven, but there's some specific platform agnostic code that exists in common that is only usable as a dependency if one were to manually add a platform jar to their repo. I'd rather be able to depend on the common core from maven.
I know that @bloodmc uses it quite extensively

I actually just removed all usage of common so I won't need this =).

I could deploy the common code to Sonatype snapshots or something like that - although I'm intrigued as to exactly what parts you're using?
If it's just small bits, certain methods or hooks, these could be exposed in the API.

This can be closed as I am only using API now.


Update 'Mark Your Calendar' dates

I received an email from someone worried that abstracts had already closed
Could we please update these dates

to something like (really just placeholders for now):

Open now: Registration is now open
Open now: Call for abstracts is now open
Opening soon: Scholarship applications
October 30, 2022: Call for abstracts closes
November 14, 2022: Notification of abstract decision

I wasn't sure where to edit - is it the raw HTML or is there something like markdown to edit?

@kozo2 could you please make these changes

@PeteHaitch Sorry for my late reply.
I updated https://biocasia2022.bioconductor.org/ like that.

Thank you, Kozo!

Scholarship applications are now open: https://forms.gle/8Fjzngv9pGYLQUaZ6
Could you please update the website @kozo2
Thank you!

@PeteHaitch I updated https://biocasia2022.bioconductor.org/.

Thank you!


Upgrade to Spring Boot 2.1.9.RELEASE

Thanks very much for the pull request. As the change is so small, we prefer to handle this sort of thing ourselves as processing a pull request adds too much overhead. If you are interested in contributing, please look out for issues labelled as ideal for contribution in the various Spring repositories.

@ocristian Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@ocristian Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.


[Docs] Fix typo in code example in native-stack-navigator.md

Fixed typo in code example.
READ ME PLEASE!
TL;DR: Make sure to add your changes to versioned docs
Thanks for opening a PR!
The docs cover several versions of react-navigation, and in some cases there are several files (for version 1, version 2 and etc.) that all describe a single page of the docs (eg. "Getting Started").
Please make sure that the edit you're making in docs/file-you-edited.md is also included in the file for the correct version, eg. /versioned_docs/version-3.x/file-you-edited.md for version 3. If such file doesn't exist, please create it. :+1:

Thanks! 🎉


improving doc for lib.rs

continues https://github.com/arijit79/minus/pull/122

I think we should include a common patterns section or something like that to give a brief example of some of the major features of minus and then direct them to the respective modules which concerns that stuff.

I'm unsure about that because this might become complicated.
When I started to use your library, your example section was helping me a lot and I then just used the search bar to get more information about the structs. In my opinion that was fine and also good.

Well then let's drop this idea.

Well then let's drop this idea.

Nono, you can create a suggestion-structure if you want. That's just my opinion! It doesn't mean that I'm right :)

Nah I will add them in the individual modules so that's it's easier for the reader to understand the stuff. If later down the line I feel that we need something like this, I will just add it then.

Merged.


Add search to component list

The original categories API PR (#183) demonstrated how the user can add search to the component list to filter the list of available components. Puck could implement an opt-in search as part of its core feature-set.
https://github.com/measuredco/puck/assets/985961/7ae681df-199a-4606-8077-51c94fcb1c58

I’d like to bring up the Elementor widget class definition. It allows developers to create a keyword list, enabling search and filtering with words other than just the widget title.
https://developers.elementor.com/docs/widgets/widget-data/


Basic framework for attribute editing

This is an add on module for editing attributes within cas.
It's very rough so far, it won't even build successfully yet. None of it is wired up and I still have some understanding to figure out with regard to how properties load, there are a ton of style issues, etc, etc -- but I believe all of the conceptual pieces are there to give an overview of the approach. I wanted to get it visible as quickly as possible to try to make the 5.2 release window.
Feedback is encouraged, there are a few pieces I'm not super happy with (bringing EditableAttributeRepository and EditableAttributeValueRepository together in a clean way, really). I should have it finished up and tested tomorrow or Friday, hopefully.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Marcus Watkins seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Thank you for the PR.
Could you please describe:

What exactly is the intention of this pull request? What problem does it solve, and why?
What, at a high level, are the key components here?
What, at a high level, is the user-facing functionality?

I recommend you close the pull request and start at smaller chunks. We simply will not be able to review and merge a batch that has 36 files changes with all new functionality in time, and it's likely this will go stale for a long time.

In my head there was a perfect connection between this and the discussion we were having two days ago, but now I'm realizing most of the connections we're in my head :)
This is for password question management.
Here's the original discussion: https://github.com/apereo/cas/issues/2950
When implenting it, I realized there's no good reason to just leave it at password questions. Providing for those gets you 99% of the way to editing (mostly) any attribute. So this PR is a generic version of attribute management.
It's almost a direct copy of the aup module, with the distinction that there are two repository types. EditableAttributeRepository stores settings about the attributes (see the changes made to the config doc). EditableAttributeValueRepositories store the actual values in the user (via ldap, rest or jdbc modules).
There is an associated web flow module, view and properties object to accommodate everything.
I'm not sure how we could break it up into smaller chunks, though. This is pretty much the smallest implementation that would support various drivers. I could remove the drivers and config hooks, allowing only for custom implementations? Open to suggestions there...

Ah gotcha. As I was browsing through the files I was expecting things to be more PMish :) and couldn't quite make out the connection between that and what you consider an editable attribute.
So ok, you essentially have put together designs where CAS would be able to generically edit a given attribute from some sort of data source backend, and one class of attributes would be those that deal with security questions. So far, so good. I understand the motivation where today, there exist islands of similar functionality that deal with AUP and such and I guess you were inspired to kill many birds with one design. Very good!
However, I recommend that you back out most changes and solely/exclusively focus on a smaller problem with a much smaller scope that only deals with security questions and attributes associated with those. It might seem counter-productive but I am in fact recommending that you should perhaps go for yet another island. My recommendations stems from the fact that I believe the work you are doing, while great as it can be, is a little premature, for the following reasons:

The password management functionality in CAS is fairly new; in fact most "serious" deployments would end up deploying a separate standalone app altogether to handle that sort of thing. While I personally have high hopes for this thing in CAS today to take off and remove that need, the reality is that the margin is far too narrow to dedicate an entire framework and technical batch to handle more advanced operations such as this more generically. I could be entirely wrong here of course, and I also suggest you shoot a message to the cas mailing lists and ask around; if there is enough interest to spend time and energy maintaining this for the broader masses and have other modules leverage this behavior, by all means. Happy to jump on board, but it seems like something of a nuclear power plant designed to power a light bulb.

Another factor in me hesitating is that sort of framework you're working on where CAS ends up updating essentially an identity store is not quite a good fit for CAS. As a general framework allowing CAS to edit attributes and principal data, the work seems overkill given most "serious" deployments have dedicated IDM solutions solely tasked for that sort of thing where CAS simply becomes a consumer. Much of that framework already exists outside, and will continue to live as such with complex rules and engines provisioning things here and there. The sort of "update" ops CAS ends up doing mostly deal with one attribute here as a boolean and few over there for blah. Fairly limiting and very focused. This is why I recommend you focus on a much smaller problem; I can promise you that the adoption of the "general framework" would be rare and eventually, I am afraid, it will end up as code once written and then deleted only to remain as an extension for you.

Please don't this the wrong way; I am not certainly referring to your needs as "not serious" and I am rarely one to call something "outside of core vision". (In fact I wrote a whole blog post about the exact opposite) I think everything is in scope given proper demand and adoption possibility at the right time and I don't see this amount work would be worth it right now; but that's just me. I certainly do not want to discourage you from contributing, but a few more convincing votes would be great to express larger interest around the overall design of this possibly extracted from the mailing lists, etc.
I am also going to ping @frett @tsschmi @dima767 to name a few to see what they might have to say, as more active contributors to the project.

That makes sense, though it's worth pointing out that while it touches a lot of files, it's really not much more complex or involved than the aup or consent modules. And it certainly doesn't aim to replace any of them.
But it absolutely could end up never being used outside of our implementation. We don't run a separate identity management system, it's overkill for our needs. But we do require password question answers (and couple other attributes) so we end up having to create that management ourselves.
I'd be willing to back it up to only deal with password management if you feel that would be a better fit. After all, that's really the same code just with less configuration. Ideally I could hook it such that it would be possible to extend.

I'd be willing to back it up to only deal with password management if you feel that would be a better fit. After all, that's really the same code just with less configuration. Ideally I could hook it such that it would be possible to extend.

Excellent. I think this would be a pretty good action plan; bonus points for extension policies later on which helps should use cases and scope ever grow beyond what we think they are today :)
Thanks very much.

I've been thinking about it all night and I'm having trouble coming up with a less complicated solution, even for just embedding it in the pm module. I think I'd end up touching the exact same number of files either way. The crux of the issue comes back to storage and validation of available password questions.
When simply displaying them it's easy, you just grab what's there and present it. But for editing you can't just have a predefined set of 3 questions -- some users' mothers may not have a maiden name, for example. So the allowable questions need to be stored somewhere resulting in another storage mechanism somewhere. Then you need to ensure they fill it out properly (not choosing the same question twice, etc) so you need a validator in there somewhere. Plus each driver needs to know how to update them, etc, etc.
When all is said and done you're at the same place we are here with this module. :/
Here's a breakdown of the files modified, why they're needed, and if/where they'd still be needed in an add-on to pm:

New File
Purpose
Associated pm change

CasConfigurationProperties
Map settings to cas properties
None

EditableAttributeProperties
Store settings
PasswordManagementProperties

Configuration-Properties.md
Docs change
Same

settings.gradle
Link to new modules
None

build.gradle
Module build file (core)
None

EditableAttributeRepository
Interface to retreive available questions
New equivalent

DefaultEditableAttributeRepository
Default implementation of above
New equivalent

EditableAttributeValueRepository
Interface to retrieve question answers
PasswordManagementService

AbstractPrincipalEditable AttributeValueRepository
Retrieve available question options
None?

DefaultEditableAttribute ValueRepository
Interface to set questions and answers
BasePasswordManagementService

EditableAttributeValueValidator
Interface to validate questions/answers
New equivalent

DefaultEditableAttributeValueValidator
Default implementation of above
New equivalent

build.gradle
Module build file (jdbc)
None

JdbcEditableAttributeValueRepository
JDBC driver
JdbcPasswordManagementService

CasEditableAttributeJdbcConfiguration
JDBC Configuration
PasswordManagementProperties

spring.factories
(jdbc)
None

JdbcEditableAttributeValueRepositoryTest
Test cases
None

build.gradle
Module build file (ldap)
None

LdapEditableAttributeValueRepository
LDAP Driver
LdapPasswordManagementService

CasEditableAttributeLdapConfiguration
LDAP Configuration
PasswordManagementProperties

spring.factories
driver loader
None

build.gradle
Module build file (rest)
None

RestEditableAttributeValueRepository
Rest driver
RestPasswordManagementService

CasEditableAttributeRestConfiguration
Rest configuration
PasswordManagementProperties

spring.factories
driver loader
None

build.gradle
Module build file (flow)
None

CasEditableAttribute WebflowConfiguration
Web flow configuration
PasswordManagementWebflowConfiguration

EditableAttributeFormAction
Form action for saving answers
New equivalent

EditableAttributeWebflowConfigurer
Configure web flow
PasswordManagementWebflowConfigurer

spring.factories
driver loader
None

messages.properties
Button labels
Same

casEditableAttributesView.html
View for displaying form
Same

Of the 32 new/edited files 10 are build files or related (spring.factories, build.gradle, etc). 19 would still be required in some form whether directly in the pm or a sub module, leaving only 2-3 fewer new/changed files. The total lines of changed code would be roughly equivalent, except now they'd be sprinkled in with existing code instead of isolated into their own module.
I'm willing to try it, but I feel like it's not an obviously 'better' solution, or even more likely to be accepted. For us it's worse because we'd have to modify the result in an overlay to support our use case.


Missing translations and wrong text in dialog

Where to find:

one workflow > rename state > delete

The displayed title and content are wrong
(Wanted behaviour in the comment below)

The current dialog:

The dialog if you try to delete selected elections:

Wanted behaviour:
The dialog should not have text content besides the title. The title should hold all information: Are you sure you want to delete the state "eingereicht"


WIP: adding 24-bit support to io.wavfile

See #6849, based on the code at: https://gist.github.com/josephernest/3f22c5ed5dabf1815f16efa8fa53d476
This is a first pass at converting the changes made by @josephernest to a form more likely to get merged. It still needs tests and a review of the API changes, as well as documentation updates. That said, comments are welcome!

After thinking about it, I suggest a cleaner API:
    Parameters
    ----------
    filename : string or open file handle
        Input wav file.
    mmap : bool, optional
        Whether to read data as memory-mapped.
        Only to be used on real files (Default: False).
    return_metadata : bool, optional
        Whether to return a dictionary containing metadata such as
        cue markers, loops, pitch (if present) (Default: False)

    Returns
    -------
    rate : int
        Sample rate of wav file.
    data : numpy array
        Data read from wav file.  Data-type is determined from the file;
        see Notes.
    metadata : dictionary

def read(filename, mmap=False, return_metadata=False):
   f0 = None
   markers = []
   loops = []

   ...

   metadata = { 'pitch': f0, 'markers': markers, 'loops': loops }

   if return_metadata:
    result.append(metadata)

Does read() return an int32 array for 24bit data? In that case read() should IMO also return the bit depth, so that the signal can be converted to a float in the range [-1.0; +1.0] and dBFS can be calculated.

@matthiasha
I suggest to add a parameter
def read(...., normalized=False):

When normalized is True, it would return a float in [-1; +1] no matter the
bit depth, etc.
Very useful in practical applications, because it allows to load many
different files with read(...) without having to care about low-level
questions like "should I divide by 223 or 231 or 2**15?".
On Tue, Dec 20, 2016 at 2:39 PM, matthiasha<EMAIL_ADDRESS>wrote:

Does read() return an int32 array for 24bit data? In that case read()
should IMO also return the bit depth, so that the signal can be converted
to a float in the range [-1.0; +1.0] and dBFS can be calculated.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/pull/6852#issuecomment-268245092, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AF4eE_MqSalb6xBCKJxSyDXo58t_pO4yks5rJ9p1gaJpZM4LK6Ba
.

normalization is a somewhat separate question, and probably best
discussed in a separate issue.

@pv Sorry I probably chose a wrong word: I'm not speaking about 0dBfs normalization for every sound file, I'm just speaking about mapping

[- INT32_MAX, INT32_MAX] to [-1.0, 1.0]    for a 32 bit soundfile

[- INT16_MAX, INT16_MAX] to [-1.0, 1.0]    for a 16 bit soundfile

etc.
I should find a better word than "normalize" that is already used for something else in audio. Any idea?

We have a discussion before about normalization, but should probably open a separate issue about it. If it's absolutely necessary for 24-bit to be useful (?) then we should probably tackle that discussion and PR separately first.

I've tested the wavfile.py provided by this PR (https://github.com/scipy/scipy/blob/020992a18b37a9c4991be19861d9871a9f94deb7/scipy/io/wavfile.py). To correctly represent 24bit data in an int32, we should use the 24 MSB, and have the 8 LSB equal zero (currently we use 24 LSB).
This is because audio signal level in the digital domain is measured relative to full scale, which cannot be reached if we don't use the MSBs.
I've attached 1000Hz_-10dBFS_24bit_48kHz.zip.
This file contains a sine tone with a level of -10dBFS (the level of a sine is measured by its peak value). Now my test:
sr, a = wavfile.read('1000Hz_-10dBFS_24bit_48kHz.wav')
20 * numpy.log10(float(a.max()) / 2**31)
-58.164798546035584

The resulting value should be -10. Because the 8 MSB are zero, the value is 6.02dB * 8 = 48.16dB lower.
By fixing this issue, the output of the new code would fit my usecase (mostly measuring signal levels). I also really like the approach proposed in https://github.com/scipy/scipy/pull/6852#issuecomment-266532025, returning all metadata as a dict. This dict could be step-by-step extended without breaking existing API.

@matthiasha It seems that your test .wav file is non-standard. Here is the result with good old SoundForge 8 (that I use since years, and that is able to open nearly any kind of WAV):

Sorry, I don't use SoundForge. Please try Adobe Audition or Audacity (which is free).

From a music producer point of view, SoundForge has been the reference for
audio in many studios since the 90s, long before Audacity even existed, and
long before Adobe bought and rebranded Cool Edit Pro into "Audition".
I'm saying this to say that, if the good old swiss-knife SoundForge 8.0
cannot open this WAV file, this WAV file probably doesn't respect the early
WAV standard (
https://web.archive.org/web/20141226210234/http://www.sonicspot.com/guide/wavefiles.html),
and I wouldn't use this file as a test file. (This software can open any 8
bit, 16 bit, 24 bit, 32 bit, 32bit IEEE float WAV, big or little endian,
and all sorts of strange soundfiles.)
PS : you're right, I opened with Audacity and Audition, and it works, but
the fact SF cannot open it is a red flag (at least for me).
PS2 : can you give a few details about how you did produce the file?
On Sat, Dec 24, 2016 at 11:57 AM, matthiasha<EMAIL_ADDRESS>wrote:

Sorry, I don't use SoundForge. Please try Adobe Audition or Audacity
(which is free).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/pull/6852#issuecomment-269079587, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AF4eE26odklf5woRavW784DPltBUp3l2ks5rLPp_gaJpZM4LK6Ba
.

I used sox (linux command line tool). Probably the file could be saved in
Audition and then opened in soundforge? If that works, please upload the
new version. You could also cut it, for this test a few milliseconds of
mono audio would actually be sufficient.
josephernest<EMAIL_ADDRESS>schrieb am Sa., 24. Dez. 2016,
12:36:

From a music producer point of view, SoundForge has been the reference for
audio in many studios since the 90s, long before Audacity even existed, and
long before Adobe bought and rebranded Cool Edit Pro into "Audition".
I'm saying this to say that, if the good old swiss-knife SoundForge 8.0
cannot open this WAV file, this WAV file probably doesn't respect the early
WAV standard (
https://web.archive.org/web/20141226210234/http://www.sonicspot.com/guide/wavefiles.html
),
and I wouldn't use this file as a test file. (This software can open any 8
bit, 16 bit, 24 bit, 32 bit, 32bit IEEE float WAV, big or little endian,
and all sorts of strange soundfiles.)
PS : you're right, I opened with Audacity and Audition, and it works, but
the fact SF cannot open it is a red flag (at least for me).
PS2 : can you give a few details about how you did produce the file?
On Sat, Dec 24, 2016 at 11:57 AM, matthiasha<EMAIL_ADDRESS>wrote:

Sorry, I don't use SoundForge. Please try Adobe Audition or Audacity
(which is free).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/pull/6852#issuecomment-269079587, or
mute
the thread
<
https://github.com/notifications/unsubscribe-auth/AF4eE26odklf5woRavW784DPltBUp3l2ks5rLPp_gaJpZM4LK6Ba
.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/pull/6852#issuecomment-269080916, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABwMCzmCgz_JAuQ68lA6tc9HiW0X74jPks5rLQPDgaJpZM4LK6Ba
.

The code in the proposed wavfile.py:
    if bit_depth == 24:
        a = numpy.empty((len(data)//3, 4), dtype='u1')
        a[:, :3] = data.reshape((-1, 3))
        a[:, 3:] = (a[:, 3 - 1:3] >> 7) * 255
        data = a.view('<i4').reshape(a.shape[:-1])

Can be changed to:
    if bit_depth == 24:
        a = numpy.empty((len(data)//3, 4), dtype='u1')
        a[:, 1:4] = data.reshape((-1, 3))
        data = a.view('<i4').reshape(a.shape[:-1])

Then:
sr, a = wavfile.read('1000Hz_-10dBFS_24bit_48kHz.wav')
assert abs(20 * numpy.log10(float(a.max()) / 2**31) + 10) < 0.1
print(20 * numpy.log10(float(a.max()) / 2**31))
-9.9999992398

Thanks a lot @matthiasha for the sox commands, I'll try it just after holidays.
Even without any modification, you can already have the right -10 dB by using / 2**23 instead of / 2**31 (I think it makes sense to divide by 2**23) :
print(20 * numpy.log10(float(a.max()) / 2**23))
-9.99999596545

Right, but I can use 2**23 only if I have information about the bit depth.
I'm in favour of

The metadata-dict approach proposed above, which would also give the bit
depth
Offering normalization to float (-1;+1), defaulting to false as has been
proposed before

I think the integer representation of 24bit PCM in the upper bits of int32
would be more appropriate. Consider writing it as int32 data back to disk:
with the current (LSB) approach, the file becomes 48dB too silent.
josephernest<EMAIL_ADDRESS>schrieb am So., 25. Dez. 2016,
12:08:

Thanks a lot @matthiasha https://github.com/matthiasha for the sox
commands, I'll try it just after holidays.
Even without any modification, you can already have the right -10 dB by
using / 223 instead of / 231 (I think it makes sense to divide by
2**23) :
print(20 * numpy.log10(float(a.max()) / 2**23))
-9.99999596545
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/pull/6852#issuecomment-269118189, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABwMC_1uGxg3OnGrGwvxv1FtJfBzQ5Hrks5rLk6UgaJpZM4LK6Ba
.

@matthiasha I added the dictionary of metadata approach. Let me know what you think.

We don't store numerical data here, but audio samples. What IMO is important to have consistent is the level (dB) of the signal, independent of the bit depth.
@josephernest: the data is not 24bit anymore, but 32bit. If you want to get the 24-bit equivalent, you can right-shift it: 873741568 >> 8 = 3413053. If you use your wave file editor and change the bit depth from 24 to 32 bits, the sample value will change from 3413053 to 873741568.
I haven't had a look at the write function yet. What I think it should do:

numpy datatype has more bits than output bit depth: right-shift the data (keep MSB, truncate LSB)
numpy data type has less bits than output bit depth: left-shift the data

If we go the other way and store 24bit in the LSB of int32, the write function in contrast needs to be designed so that it writes the LSB. With this approach, if we have some real 32bit data and choose to write it as 24bit, the 8MSB will get truncated and thus destroy the audio.

I would suggest looking at what other (non-Python) audio file libraries
do with this.

I don't know what is the state of this pull request, but I made few enhancement on @josephernest code, there were some bugs (as far as I can see from his last gist https://gist.github.com/josephernest/3f22c5ed5dabf1815f16efa8fa53d476)
here is my updated version if you are interested: https://gist.github.com/X-Raym/90f338b637fcf2ea986f362498185d1d
Cheers !

Note: my version now also supports unsupported chunks, so that they can be rewritten to a new file, without losing any metadata (bext, list info etc).

Is it going to be released with 1.2.0?

@v-iashin No unfortunately this is still open

@v-iashin @ilayn After having thought about it during months, I think the only way to do if we want to keep back-compatibility is to have a metadata parameter, defaulting to False. Example:
sr, x = read('test.wav')

sr, x, md = read('test.wav', metadata=True)

with md being a dict:
{'loops': [[..., ...]],
'markers': [..., ....],
'markerlabels': ['...', '...'],
'pitch': 440.0,
'bitrate': 24})
Who would like to do this? @perimosocordiae we could try to do it?

Can this be broken up into smaller PRs to get them through?  Since different features require different discussions and maybe some don't require any discussion?

Can this be broken up into smaller PRs to get them through?

+1 to break this up. And +1 for using the MSB for 24-bit samples returned as 32-bit ints, so they don't need to be distinguished from other 32-bit ints further down the line (and will not require adding the meta dictionary right away).
Note that instead of:
    if bit_depth == 24:
        a = numpy.empty((len(data)//3, 4), dtype='u1')
        a[:, 1:4] = data.reshape((-1, 3))
        data = a.view('<i4').reshape(a.shape[:-1])

we can also start reading the samples one byte earlier and use stride tricks:
    if bit_depth == 24:
        # view data as int32 with one byte of overlap between samples
        a = np.lib.stride_tricks.as_strided(
                data[:0].view(np.int32),
                shape=(len(data) // 3,),
                strides=(3,))
        # mask out the LSB
        data = a & np.int32(0xffffff00)

Not sure what's faster. The latter is harder to understand and will require a modification further above so that data[0] is the byte before the first 24-bit sample, to be used as the first throwaway LSB.

(I modified my version of wavfile.py to read markers and marker regions, by the way.)

Not sure what's faster.

I was curious. The second option is faster.
In [1]: import numpy as np

In [2]: data = np.random.randint(255, size=int(3e8) + 1, dtype=np.uint8)

In [3]: def unpack_int24a(data):
   ...:     a = np.empty((len(data) // 3, 4), dtype='u1')
   ...:     a[:, 1:4] = data.reshape((-1, 3))
   ...:     return a.view('<i4').reshape(a.shape[:-1])
   ...:

In [4]: def unpack_int24b(data):
   ...:     a = np.lib.stride_tricks.as_strided(
   ...:         data[:0].view(np.int32),
   ...:         shape=(len(data) // 3,),
   ...:         strides=(3,))
   ...:     return a & np.int32(0xffffff00)
   ...:

In [5]: np.allclose(unpack_int24a(data[1:]), unpack_int24b(data))
Out[5]: True

In [6]: %timeit a = unpack_int24a(data[1:])
1 loop, best of 3: 561 ms per loop

In [7]: %timeit b = unpack_int24b(data[1:])
1 loop, best of 3: 195 ms per loop

That's for a hypothetical in-memory file of about 17 minutes at stereo, 48 kHz. The second option requires a continuous input array that starts one byte before the first sample, but that's not a problem for a .wav file. And the second option should be changed to use a dtype with specified endianness.

FYI: There is a bug in this version (originally proposed by @matthiasha back in https://github.com/scipy/scipy/pull/6852#issuecomment-269114116):
def unpack_int24a(data):
    a = np.empty((len(data) // 3, 4), dtype='u1')
    a[:, 1:4] = data.reshape((-1, 3))
    return a.view('<i4').reshape(a.shape[:-1])

np.empty should be changed to np.zeros.
numpy.empty does not initialize the memory that it allocates, so the values in a are indeterminate.  See how the return value of unpack_int24a(data) changes on each call:
In [338]: data
Out[338]:
array([  1,   0,   0, 255, 255, 127, 255, 255, 255,   4,   0,   0],
      dtype=uint8)

In [339]: unpack_int24a(data)
Out[339]: array([       261,<PHONE_NUMBER>,       -256,       1024], dtype=int32)

In [340]: unpack_int24a(data)
Out[340]: array([       256,<PHONE_NUMBER>,       -256,       1024], dtype=int32)

In [341]: unpack_int24a(data)
Out[341]: array([       366,<PHONE_NUMBER>,       -206,       1076], dtype=int32)

In [342]: unpack_int24a(data)
Out[342]: array([       261,<PHONE_NUMBER>,       -256,       1024], dtype=int32)

In [343]: unpack_int24a(data)
Out[343]: array([       366,<PHONE_NUMBER>,       -206,       1076], dtype=int32)

Hi, is there any chance for resolving this issue in the next release ?
(Thanks for your Work)

Here's my (messy unfinished) changes for extracting cue regions in case it's helpful to anyone: https://github.com/X-Raym/wavfile.py/compare/master...endolith:metadata_develop?expand=1


Decorators are not linked, emit RuntimeWarning

.. code:: python

    from functools import lru_cache

    @lru_cache
    def f(x): pass

    @lru_cache(maxsize=None)
    def f(x): pass

would ideally have lru_cache autolinked when used as a decorator, but instead we get:
sphinx_codeautolink/extension/block.py:224:
	RuntimeWarning: Could not match transformation of `lru_cache`
	on source line 3 <or line 6> in document "example.html", source:

from functools import lru_cache

@lru_cache
def f(x): pass

@lru_cache(maxsize=None)
def f(x): pass

I'm running Python 3.8, sphinx-codeautolink 0.2.1

Thanks for the report, I'll work on this today! It's most likely due to the assumptions in our matching regex 👍

Should. Not. Have. Skipped. eyeballing the documentation. Now we have @ signs all over 😅 Also, we need stricter tests.


Unable to run interactsh-server either as a docker container or as a k8s pod.

I am able to run the interactsh-server on a local ubuntu machine using the domain as mentioned below. But when I try to run the same as docker container or a kubernetes pod I am hitting an issue.
Need instructions to run the interactsh-server as a pod on a k8s env.
On a local machine:
root@gateway-01:~# /root/go/bin/interactsh-server -domain oast.hackwithautomation.co.in

    _       __                       __       __
   (_)___  / /____  _________ ______/ /______/ /_
  / / __ \/ __/ _ \/ ___/ __ '/ ___/ __/ ___/ __ \
 / / / / / /_/  __/ /  / /_/ / /__/ /_(__  ) / / /
/_/_/ /_/\__/\___/_/   \__,_/\___/\__/____/_/ /_/ 1.0.6

                projectdiscovery.io

[INF] Public IP: <IP_ADDRESS>
[INF] Outbound IP: <IP_ADDRESS>
[INF] Loading existing SSL Certificate for:  [*.oast.hackwithautomation.co.in, oast.hackwithautomation.co.in]
[INF] Listening with the following services:
[SMTP] Listening on TCP <IP_ADDRESS>:25
[LDAP] Listening on TCP <IP_ADDRESS>:389
[DNS] Listening on TCP <IP_ADDRESS>:53
[DNS] Listening on UDP <IP_ADDRESS>:53
[SMTPS] Listening on TCP <IP_ADDRESS>:587
[HTTP] Listening on TCP <IP_ADDRESS>:80
[HTTPS] Listening on TCP <IP_ADDRESS>:443

On a docker container
root@gateway-01:~# docker run -t projectdiscovery/interactsh-server -domain oast.hackwithautomation.co.in

    _       __                       __       __
   (_)___  / /____  _________ ______/ /______/ /_
  / / __ \/ __/ _ \/ ___/ __ '/ ___/ __/ ___/ __ \
 / / / / / /_/  __/ /  / /_/ / /__/ /_(__  ) / / /
/_/_/ /_/\__/\___/_/   \__,_/\___/\__/____/_/ /_/ 1.0.6

                projectdiscovery.io

[INF] Public IP: <IP_ADDRESS>
[INF] Outbound IP: <IP_ADDRESS>
[INF] Requesting SSL Certificate for:  [*.oast.hackwithautomation.co.in, oast.hackwithautomation.co.in]
[ERR] An error occurred while applying for a certificate, error: [*.oast.hackwithautomation.co.in] Obtain: [*.oast.hackwithautomation.co.in] solving challenges: presenting for challenge: could not determine zone for domain "_acme-challenge.oast.hackwithautomation.co.in": unexpected response code 'SERVFAIL' for _acme-challenge.oast.hackwithautomation.co.in. (order=https://acme-v02.api.letsencrypt.org/acme/order/691679747/118774696467) (ca=https://acme-v02.api.letsencrypt.org/directory)
[ERR] Could not generate certs for auto TLS, https will be disabled
[INF] Listening with the following services:
[HTTP] Listening on TCP <IP_ADDRESS>:80
[LDAP] Listening on TCP <IP_ADDRESS>:389
[SMTP] Listening on TCP <IP_ADDRESS>:25
[DNS] Listening on UDP <IP_ADDRESS>:53
[DNS] Listening on TCP <IP_ADDRESS>:53
[HTTPS] Listening on TCP <IP_ADDRESS>:443
[SMTPS] Listening on TCP <IP_ADDRESS>:587
[ERR] Could not serve http on tls: open : no such file or directory

On a Kubernetes pod
root@gateway-01:~# kubectl exec -it interactshserver-56989bd69f-2cm9t bash
root@interactshserver-56989bd69f-2cm9t:/go# cd bin/
root@interactshserver-56989bd69f-2cm9t:/go/bin# ./interactsh-server -domain oast.hackwithautomation.co.in

    _       __                       __       __
   (_)___  / /____  _________ ______/ /______/ /_
  / / __ \/ __/ _ \/ ___/ __ '/ ___/ __/ ___/ __ \
 / / / / / /_/  __/ /  / /_/ / /__/ /_(__  ) / / /
/_/_/ /_/\__/\___/_/   \__,_/\___/\__/____/_/ /_/ 1.0.6

                projectdiscovery.io

[INF] Public IP:
[INF] Outbound IP: <IP_ADDRESS>
[INF] Requesting SSL Certificate for:  [*.oast.hackwithautomation.co.in, oast.hackwithautomation.co.in]
[ERR] An error occurred while applying for a certificate, error: [*.oast.hackwithautomation.co.in] Obtain: registering account<EMAIL_ADDRESS>with server: provisioning client: performing request: Get "https://acme-v02.api.letsencrypt.org/directory": EOF
[ERR] Could not generate certs for auto TLS, https will be disabled
[INF] Listening with the following services:
[HTTP] Listening on TCP <IP_ADDRESS>:80
[HTTPS] Listening on TCP <IP_ADDRESS>:443
[DNS] Listening on TCP <IP_ADDRESS>:53
[SMTP] Listening on TCP <IP_ADDRESS>:25
[DNS] Listening on UDP <IP_ADDRESS>:53
[SMTPS] Listening on TCP <IP_ADDRESS>:587
[LDAP] Listening on TCP <IP_ADDRESS>:389
[ERR] Could not serve http on tls: open : no such file or directory

Do we have to do some any other additional configurations for running interactsh-server on a kubernetes?
Is there is any instructions for that? If so Could you please share those

Looks like the problem is related to generation certificates via letsencrypt. You can provide private key and certificate via CLI option after mounting them into the Container

@raghumannn make sure you expose ports in the container. I ended up using --network host to allow the container to have access to all the ports. I'm not sure what is default in the Dockerfile, but I noticed I needed this for interactions to register; otherwise I would get a connection refused. You could also try more specific ports with -p 80:80 -p 389:389.
For certs, I am using certbot for the container and map a volume to my host with -v /etc/letsencrypt/live/<domain>:/root. I then have a cronjob to check for updates with certbot renew daily. Here are some examples from my Ansible playbook:
# Get certs. It will output a statement to to create a TXT record for your DNS record to validate your domain.
# I then create an A record to wildcard all subdomains.
# I think this would be preferred due to the random subdomain generation
certbot --manual -d '*.mydomain.com' --agree-tos certonly --register-unsafely-without-email

# Another option is to use the standalone feature. This will bring up a server for validation on your host.
certbot --standalone -d '*.mydomain.com' --agree-tos certonly --register-unsafely-without-email

# I prefer to map a path on my host to share certs, payloads, and a custom index file with the container. In this case
# {{ tool_directory }} is the path you want to share.
docker run --network host -v {{ tool_directory }}:/root projectdiscovery/interactsh-server:latest -d {{ interactsh_domain }} -sa -cert /root/fullchain.pem -privkey /root/privkey.pem -http-index /root/index.html -http-directory /root/payloads --wildcard

Hope this helps someone!

Closing as completed


1.16.5 FORGE clinet side only doesnt render boxes

Heres an issue while on a vanilla server none of the boxes render at all correctly you get red lines aroudn spawn and green lines in the nether no red boxes at all (that would be a no dah add the mod into the server but can it be made to work only clinet side as well?

Please join the discord for support on what you can do to use this mod when connecting to the server. Due to lack of metadata on clients there is nothing that can be automatically to make this work with servers.


Add button to disable/enable video in meetings

Summary
Add a button to disable and re-enable video in meetings for our very low bandwidth users. This is perhaps not the optimal implementation, but seeing as the next piece of work is to basically throw all this out, I don't think it matters too much. The icon for the enable/disable video button isn't perfect, especially given we don't have a strikethrough version, but it's what we've got and seems to get the message across. Also added tooltips for the other buttons in the sidebar (mute and screen share).
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] Ran make check-style to check for style errors (required for all pull requests)
[x] Ran make test to ensure unit and component tests passed
[ ] Has server changes (please link)
[ ] Has redux changes (please link)
[x] Has UI changes
[ ] Touches critical sections of the codebase (auth, posting, etc.)

Force pushed amended last commit after npm install @rifflearning/simplewebrtc@latest which updated the package-lock.json file.


Supernova integration

With the release of Supernova 2.0 that supports all of the DTCG spec, Cobalt should test compatibility with their export-to-GitHub workflow.
While I’m not interested in supporting every commercial/private product, this is the first product I’m aware of that has first-class support for exporting DTCG, so theoretically it should export files the same as the many tokens.json examples in this project. But I’m also interested in testing some of the metadata Supernova generates, and just use it as a learning experiment overall.

Well, upon further investigation, sadly Supernova does not export to the DTCG spec. Or at least, not the current version. I’m not interested in writing/maintaining a custom exporter for a for-profit company, but if they decide to update their DTCG exporter and re-release it on their platform, I’ll reopen this issue.


panel-group with panel-collapse mixed with table

The panel-group component does not mixing the both sides of table component when is inserted inside a panel-collapse. if i put "panel panel-collapse collapse", the panel-heading is rendered without border-size and color.

@tiagocassio We can't help you unless you post a JS Fiddle that demonstrates the problem.

Oh, sorry my bad! Please check:

This first is inside a panel-collapse without .panel class (see the table border at bottom is not aligned with the panel):
http://jsfiddle.net/ns4t2rbc/

This other is inside a panel-collapse with .panel class (see, the panel-heading without bottom border. its looks like the table is inserted inside the panel-heading and not the "shadow" panel-body class istead):
http://jsfiddle.net/ns4t2rbc/

X-Ref: #17395

Calling it a won't fix. It wouldn't be too difficult to add support for responsive tables in collapsing panels, but I'm honestly completely unmotivated to do it given it'd add a decent amount of new selectors to the compiled CSS. It's possible, but not all the worthwhile (because v4 mostly).
Also, that second example is invalid—no .panel class should be on the collapsing element.


[Feature Request]: Skip Network - option to enable network by default?

Feature Summary:
If you enable SkipNetwork, it disables network by default. Is it possible to have an option in the config to enable it by default, instead? Really a non-issue, it decreases boot time significantly anyway, but hey, why not if it can be done.

Is your proposal related to a problem?
Nope

Describe the solution you'd like
An option in the config

Describe alternatives you've considered
Coping

Thank you for the laugh. I'll change it so that SkipNetwork is enabled by default in the next version. I assume most people would rather the fast boot-up and then just to dip-in to the options menu if they want to turn the network stuff back on.

Oh, no, you misunderstood what I meant - I want the actual network capabilities to be set in the config, as in, if you enable SkipNetwork, you can also set a config for whether it should enable or disable the network features after skipping - saves the hassle of both pressing it on startup or setting it in the in-game settings.

Oh, no, you misunderstood what I meant - I want the actual network capabilities to be set in the config, as in, if you enable SkipNetwork, you can also set a config for whether it should enable or disable the network features after skipping - saves the hassle of both pressing it on startup or setting it in the in-game settings.

Aha I get what you mean now. Will have a look at this.

Added this in v1.1.2. It can look a little janky as the network features dialog pops-up for a split-second but I'm afraid I can't do any better than that!

It's alright, thanks for your work!


CxfHandler.loadClass() should not fail silently

It currently just warns. It should throw an exception so that users do not need to struggle with typos in their application.properties
    private static Class<?> loadClass(String className) {
        try {
            return Thread.currentThread().getContextClassLoader().loadClass(className);
        } catch (ClassNotFoundException e) {
            // silent fail
        }
        try {
            return Class.forName(className);
        } catch (ClassNotFoundException e) {
            LOGGER.warn("failed to load class " + className);
            return null;
        }
    }

I have hit this again. It needs to fail hardly.

I think there's a couple scenarios we need to account for here:

typo in application.properties
a missing dependency containing a referenced class, eg. org.apache.cxf.ext.logging.LoggingFeature

Not sure on the value of throwing a RuntimeException though; my understanding is that some of these may be loaded lazily and not at application startup.  Perhaps including the stacktrace instead of just a simple warning message would make it more obvious?

my understanding is that some of these may be loaded lazily and not at application startup

Could you please explain what you mean with lazy loading? - sounds like dynamic class loading during the application life time; e.g. loading at t1 does not succeed, but succeeds later at t2, because the classpath has changed? Such scenario is not possible on Quarkus and esp. GraalVM. All code has to be known at build time. But maybe you mean something else?

Definitely not dynamic class loading - what I was referring to was literally lazy loading as documented here:
https://quarkus.io/guides/cdi-reference#lazy_by_default
The code has changed a lot in recent times, so it may no longer be an issue, but if my memory serves me well, there were some instances under which this happened in earlier versions ...

Thanks for explaining, @shumonsharif. I am still not sure how the CDI container may affect what we do in CxfHandler.loadClass() - that's pure class lookups by class name what we do there. I do not see how the the CDI container could be involved. We do not lookup beans.

I was under the impression CxfHandler.loadClass() only ever gets called if a CDI bean lookup fails?
Again, it may no longer be the case, but I thought there were some cases where the CDI bean lookup path would only get triggered after the initial request invocation.  I honestly have not even looked at the code, but I'll try to dig into it later this week and keep you posted if I see this being an issue.


Update all the (PHP) things

Purpose
Update dependabots grumblings
Approach
composer update
Checklist

[x] I have performed a self-review of my own code
[ ] ~I have added relevant logging with appropriate levels to my code~
[ ] ~I have updated documentation (Confluence/GitHub wiki/tech debt doc) where relevant~
[ ] ~I have added tests to prove my work~
[ ] ~I have added welsh translation tags and updated translation files~
[ ] ~I have run an accessibility tool on any pages I have made changes to and fixed any issues found~
[ ] ~The product team have tested these changes~

smoke-tests image updates incoming


Rails Cache

Over the years, we have rarely used caching with Rails. And when we did, it was added afterwards in the life of the project, not at the beginning. But performance-wise, the apps we develop would gain a lot. And in terms of efficiency, it would be easier to develop with caching setup and in mind from the start.
Rails 5.2 improve a lot the built-in cache feature, so I think it's time to revisit this topic.

Review what's new in Rails caching, especially Redis Cache Store
Enable caching by default in the Rails Template
Implement a base application with caching working from the start

Not totally relative to this issue, just want to take a note here, be aware if we want to use Redis for Cache and Sidekiq 😄

@olivierobert based on @andyduong1920's note, it means the infrastructure would need 2 Redis instances. This also means higher infrastructure costs at the project start.
With that in mind, is it still interesting to move forward with this idea? If not, let's close the issue 🙌

Considering caching from the beginning would benefit the product we build. Like localization, it can be added later but it is a bit of a pain in the 🍑 Also, it would also benefit the team to think about performance from the get-go and to know more about caching strategies with Rails 🧠
Granted, it is not a must-have feature for the template. However, having the option to add a redis cache store would be great. Second, when Solid Queue is released, then we would not need to use sidekiq, hence the increased cost concern could be mitigated.

Thanks for your update. 🙏
This story remains interesting and I will consider it for future sprints. Probably starting with a showcase: we need to try the whole implementation and deploy it in the cloud to ensure we have a good mastery of it, before adding it as an optional add-on to the template 🙌


can't start an existing profile when my host IP addr changes

When i get a different IP addr (my laptop host) and try to start an existing saved profile i get the following error:
./oc-cluster up origin-141-demo-metrics-fis2
Performing some customization for platform linux
Using Docker0 (<IP_ADDRESS>) ip as external cluster and router address
[INFO] Running a previously created cluster
oc cluster up --public-hostname <IP_ADDRESS>.xip.io --routing-suffix apps.<IP_ADDRESS>.xip.io --host-data-dir /home/rsoares/.oc/profiles/origin-141-demo-metrics-fis2/data --host-config-dir /home/rsoares/.oc/profiles/origin-141-demo-metrics-fis2/config --use-existing-config -e TZ=BRT --metrics=true --routing-suffix=<IP_ADDRESS>.xip.io
-- Checking OpenShift client ... OK
-- Checking Docker client ... OK
-- Checking Docker version ... OK
-- Checking for existing OpenShift container ... OK
-- Checking for openshift/origin:v1.4.1 image ... OK
-- Checking Docker daemon configuration ... OK
-- Checking for available ports ...
   WARNING: Binding DNS on port 8053 instead of 53, which may not be resolvable from all clients.
-- Checking type of volume mount ...
   Using nsenter mounter for OpenShift volumes
-- Creating host directories ... OK
-- Finding server IP ...
   Using x.x.x.x as the server IP
-- Starting OpenShift container ... FAIL
   Error: Docker run error rc=2
   Details:
     Image: openshift/origin:v1.4.1
     Entrypoint: [/bin/bash]
     Command: [-c for name in x.x.x.x rsoares; do ls /var/lib/origin/openshift.local.config/node-$name &> /dev/null && echo $name && break; done]
[ERROR] Cluster has not started correctly. Profile configuration will be preserved

I tried to manually rename these directories, but no success
 ls -la /var/lib/origin/openshift.local.config/                                                                                1 ↵
total 4
drwxr-xr-x. 5 root root   65 fev 13 17:14 .
drwxr-xr-x. 4 root root   67 jan 19 10:07 ..
drwxr-xr-x. 2 root root 4096 fev  1 21:44 master
drwxr-xr-x. 2 root root  209 jan 19 10:07 node-x.x.x.x
drwxr-xr-x. 2 root root  209 fev  1 21:32 node-rsoares

for name in x.x.x.x rsoares; do ls /var/lib/origin/openshift.local.config/node-$name &> /dev/null && echo $name && break; done

x.x.x.x

@rafaeltuelho It seems I have a bug, as I set the routing-suffix and it seems you've also passed it as argument so it get double set and probably that's an error in the underlying oc cluster.
cc/ @csrwng Can this be a problem? Why is he getting x.x.x.x as server IP?

@rafaeltuelho what oc client version are you using?

@jorgemoralespou , at this moment I'm using Origin 1.4.1:
 oc version
oc v1.4.1+3f9807a
kubernetes v1.4.0+776c994
features: Basic-Auth GSSAPI Kerberos SPNEGO

Server https://<IP_ADDRESS>.xip.io:8443
openshift v1.4.1+3f9807a
kubernetes v1.4.0+776c994

The x.x.x.x above is just to mask my hots real ip addr :-)

@rafaeltuelho there's an issue openned in oc cluster to try to hace a consistent node name between restarts when roaming and not get the node ip which can be different leading to these problems.
@csrwng do you know if this can be customized via an env or in any other way?

hum, this is critical for oc-cluster-wrapper tool. The main advantage is the ability to reproduce a setup... But with this issue it's not possible to reuse a saved profile if you change your host IP addr.

I'm traveling at the moment but will look into it once I'm back. I haven't experienced this before and there's no other report on this so I wonder if it's due to any other circumstance. Will definitely look more carefully soon.
I don't change ip even when I roam since I have an alias on <IP_ADDRESS> to my loopback that is what I use. This is more consistent and less troublesome.

@jorgemoralespou, how can I tell oc-cluster to use a specific alias ip or loopback to overcome this issue?
I though passing  --public-hostname <IP_ADDRESS>.xip.io and --routing-suffix=<IP_ADDRESS>.xip.io would be sufficient. isn't it?

I just use --public-hostname=x.y.z and --routing-suffix=apps.lcup and I have a dnsmasq locally for .apps.lcup routed to x.y.z
I don't like to rely on xip.io, which is handy but not for my day to day work.
I guess I should blog how I do it as it will be handy for people.
I'll try to do it soon.
In the meantime, you can still use xip.io for the --routing-prefix but not for the public-hostname use the loopback ip.

@jorgemoralespou , Thanks for your help!
It only works if I use a loopback IP alias (eg: <IP_ADDRESS>) like you suggested. I tried with --public-hostname=<IP_ADDRESS> but the containers can't resolve external addresses (eg: github.com) as described in [1]. Even configuring my local Fedora firewalld to accept traffic on 8443, 53, 5053.
Anyway, it worked fine using an ip alias <IP_ADDRESS>
[1] https://github.com/openshift/origin/issues/10139

I meet the same issue,
I setup a server with ip <IP_ADDRESS>, then need to change a server, I restore the os backup to another server with ip <IP_ADDRESS>
I add a ip alias with "ifconfoig lo:0 <IP_ADDRESS>",  but still can not start my cluster.

@wulliam This is not supported by "oc cluster" which is the underlying technology used. I think 3.6 brings a fix for this. Could you try with that version (the latest I think is (v3.6.0-alpha.2) and go through that use case?
If not, please open a bug there. https://github.com/openshift/origin/issues

@jorgemoralespou Thanks for your help! I finally start my cluster with all my previous work back.
To help anyone who meet the same issue, I will describe what I do as below.

Go to --host-config-dir "/root/.oc/profiles/landaojia/config" to replace the ip address in config files with bash grep -rl '<IP_ADDRESS>' * |xargs -I {} sed -i 's/<IP_ADDRESS>/<IP_ADDRESS>/g' {}, and rename "node-<IP_ADDRESS>" to "node-<IP_ADDRESS>"

oc-cluster up sunwayxiyi create a new project, and use the new "key,crt,kubeconfig" files to overwrite landaojia (your) projects. example bash to overwrite openshift origin key crt kuberconfig files

Go to edit "/root/.oc/profiles/landaojia/run", replace oc cluster up --version  v1.5.0 to oc cluster up --version  v3.6.0-alpha.2

Note:
If you ignore step2 not replace new key crt kuberconfig files, openshift can not start with error 2017-06-15 01:41:32.403931 I | etcdserver/api/v3rpc: Failed to dial <IP_ADDRESS>:4001: connection error: desc = "transport: x509: certificate is valid for <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, not <IP_ADDRESS>"; please retry.
If in step3, use "v1.5.0-alpha.3" instead of "v3.6.0-alpha.2", openshift can start, but your open shift project is empty, and you will lost your openshift project.
If in step2, if you replace the ip address in etcd binary file path --host-data-dir "/root/.oc/profiles/landaojia/data", the file will be broken, openshift can not be started.


Is this a Dledger bug? Only the master is working

Rocketmq 4.9.1 dledger cluster mode, in the console, only the master has a Consume Count, and the slave is 0.

The configuration file is as follows:
brokerClusterName = RaftCluster
brokerName=RaftNode00
listenPort=30911
namesrvAddr=<IP_ADDRESS>:9876;<IP_ADDRESS>:9876;<IP_ADDRESS>:9876
storePathRootDir=/data/rmqstore/node00
storePathCommitLog=/data/rmqstore/node00/commitlog
enableDLegerCommitLog=true
dLegerGroup=RaftNode00
dLegerPeers=n0-<IP_ADDRESS>:40911;n1-<IP_ADDRESS>:40912;n2-<IP_ADDRESS>:40913
dLegerSelfId=n0
sendMessageThreadPoolNums=8
defaultTopicQueueNums=40

There is no problem here. Reading from slave is disabled by default. You can enable slave reading by passing slaveReadEnable=true.

这里没有问题。默认情况下禁用从从设备读取。您可以通过传递 slaveReadEnable=true 来启用从站读取。 默认情况下，可以从slave读取内存后面40%的消息，你可以调整accessMessageInMemoryMaxRatio来调整比例。

Thank you for your answer, I have a question:
Why can't all 3 devices be read by default? If only the master provides services by default, will it cause a lot of pressure?

这里没有问题。默认情况下禁用从从设备读取。您可以通过传递 slaveReadEnable=true 来启用从站读取。 默认情况下，可以从slave读取内存后面40%的消息，你可以调整accessMessageInMemoryMaxRatio来调整比例。

Thank you for your answer, I have a question: Why can't all 3 devices be read by default? If only the master provides services by default, will it cause a lot of pressure?

I think ISSUE#3461 can answer your question.


Allow cutruncate to work for Float32s

Description
Widen allowed types for cutruncate to allow people to truncate vectors of Float32s.
Fixes #890
How Has This Been Tested?
test/test_cutruncate.jl passed.
Checklist:

[ x] My code follows the style guidelines of this project. Please run using JuliaFormatter; format(".") in the base directory of the repository (~/.julia/dev/ITensors) to format your code according to our style guidelines.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[x] Any dependent changes have been merged and published in downstream modules.

Codecov Report

Merging #897 (0b8a896) into main (af3073b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #897   +/-   ##
=======================================
  Coverage   75.73%   75.73%
=======================================
  Files          76       76
  Lines        8020     8020
=======================================
  Hits         6074     6074
  Misses       1946     1946

Continue to review full report at Codecov.

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

Great, thanks Katie! Glad it turned out to be a pretty simple change.


Regression in 4.5.3+ -- cannot open picker, no errors

Environment

flatpickr version used: 4.5.3, 4.5.4, 4.5.6, 4.5.7
Browser name and version: Electron v2.0.18 (Chromium)
OS and version: Linux 5.0.7-arch1-1-ARCH x86_64 GNU/Linux

Code here, although it's wrapped up in some other stuff so I haven't had time to write a minimal repro: https://github.com/ssbc/patchwork/blob/fix-date-picker/modules/gathering/sheet/edit.js
Expected

Clicking the input element opens the date picker.
Clicking away from the input element closes the date picker.
picker = flatpicker(el, config); console.log(picker) returns an object

Actual

Clicking in the input element does nothing, no errors or output.
Clicking away from the input element throws "picker.destroy is not a function"
picker = flatpicker(el, config); console.log(picker) returns []

Hello @christianbundy

Clicking away from the input element throws "picker.destroy is not a function"

This means that a click away from the input somehow re-creates a flatpickr instance. The only time flatpickr itself calls destroy() is when an instance bound to an input element already exists.
I would suggest reviewing the code where you create a flatpickr instance and making sure this code only runs once. Otherwise, I will need a minimal reproduction of the bug to solve it.

Hi @christianbundy, any news on the minimal reproduction?

The only time flatpickr itself calls destroy() is when an instance bound to an input element already exists.

Yeah, we're running destroy(), it isn't something internal to flatpickr.
I can confirm that we're only running the code once, but I haven't had time to write a minimal reproduction.

Do you think you'll have time in the near future or should I close the issue and you can reopen it when you have the minimal reproduction?

That's fine, I'll close for now and re-open when I can write a minimal reproduction. I'll just stick with the old version for now. Maybe others who have this problem will find the issue and have time to write a test-case.


ci(build-and-test): merge build-and-test and build-and-test-daily workflows

Description
This PR merges build-and-test and build-and-test-daily workflows. The implementation of build-and-test-daily was inefficient as it didn’t utilize caching and other optimizations, so triggers and conditions were added to build-and-test to integrate the two.
This change also improves maintainability.
Related links

How was this PR tested?
Notes for reviewers
None.
Interface changes
None.

Effects on system behavior
None.

I think -daily was intentionally not using cache to make sure that the code could be built with a clean environment just in case. However, since the risk for cache making any difference is low so I'm okay with merging it together. @xmfcx I just want to have your opinion as well.


Java - Generated code should not try to override super-class final methods

With a spec like this:
openapi: 3.0.3
info:
  title: Kafka Instance API
  version: 0.13.0-SNAPSHOT
paths:
  /api/v1/notify:
    get:
      summary: Notify something
      operationId: getTopics
      responses:
        "200":
          description: Example.
          content:
            application/json:
              schema:
                type: "string"

The generated code doesn't correctly with this error message:
Compilation failure
[ERROR] /Users/aperuffo/workspace/new-java-sdk/test-kiota/target/generated-sources/kiota/api/v1/V1RequestBuilder.java:[13,33] notify() in com.openshift.cloud.api.accountmanagement.api.v1.V1RequestBuilder cannot override notify() in java.lang.Object
[ERROR]   overridden method is final

The offending code is the following in V1RequestBuilder.java:
    /** The notify property */
    @javax.annotation.Nonnull
    public NotifyRequestBuilder notify() {
        return new NotifyRequestBuilder(pathParameters, requestAdapter);
    }

The full list of final methods in Object is:
getClass()
notify()
notifyAll()
wait()

We can solve this issue by either adding those to the list of "Reserved Names" or having a separate list for Object's members' names to be escaped.

Thanks for reporting this. I think those can live in the existing list. Would you mind sending a PR for this change please?

yup, on me 👍


CA-214 - Fixes examples to allow the use of terraform version 0.13.7.…

Fixes examples to allow the use of terraform version 0.13.7.

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


api redirect fails

I installed TechnicSolder on
/var/www/vhosts/universe-lost.de/technic.universe-lost.de/TechnicSolder
Then I edited the documentroot for apache to
/var/www/vhosts/universe-lost.de/technic.universe-lost.de/TechnicSolder/public
Login to technicsolder works perfekt.
When I try to reach API on
http://technic.universe-lost.de/api/ it says
The page isn't redirecting properly
apache acces log says
<IP_ADDRESS> - - [19/Feb/2015:11:06:10 +0100] "GET /api HTTP/1.0" 301 504 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0"
<IP_ADDRESS> - - [19/Feb/2015:11:06:10 +0100] "GET /api/ HTTP/1.0" 301 502 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0"

my fault tehre was a folder named api


Create Posts “20221211-how-to-publish-your-npm-package”

Automatically generated by Netlify CMS

👷 Deploy Preview for thehashtable processing.

Name
Link

🔨 Latest commit
901c2bc755d941ccd4039b3f58276bab190a4712

🔍 Latest deploy log
https://app.netlify.com/sites/thehashtable/deploys/63962dcb359044000923e26a


e2e/upgradetest: 1 member recovery test

Added an e2e/upgrade test for the newer operator to successfully heal the cluster back to size after a single member failure.
Moved KillMembers() from e2e/util.go to e2e/e2eutil/util.go to make it common between e2e and e2e/upgradetest tests.
Changed the deployment delete grace period to zero, so that the deployment from the previous test is gone before it conflicts with the next test's creation.

Update:

we have experimented with deployment deletion. When we call Deployments().Delete(), Deployment was deleted first and Pod was deleted later from API.

Conclusion: We need to wait for Pod to be deleted from API.

Now waiting for all pods with the label name=etcd-operator to be gone before we successfully return from DeleteOperator().

LGTM


Unable to restore any file

Output of restic version
restic 0.9.1 compiled with go1.10.3 on windows/amd64
How did you run restic exactly?
restic restore --target=e:\temp b732fdec
What backend/server/service did you use to store the repository?
local storage
Expected behavior
restore all files
Actual behavior
repository db146c81 opened successfully, password is correct
restoring <Snapshot b732fdec of [\\?\e:\ARQUIVOS\PUBLICO] at 2018-07-23 11:00:01.8815664 -0300 -03 by INTRANET\Administrador@PROJE-ARCGIS03> to e:/temp
ignoring error for \: node has invalid name
There were 1 errors

the problem was that i'm trying to restore using a Windows OS. If I use the same command in a Linux system, everything works correctly.
The backup was made using Windows, but I have to use Linux to restore.

Thanks for the report! In order to find out what's going on here, can you please paste the output of restic ls -l latest, so we can see the directory structure in the repo? Thanks!

-rw-rw-rw-     0     0<PHONE_NUMBER>-01-29 23:35:44 /\?\e:/ARQUIVOS/TECNICO/.....zip
-rw-rw-rw-     0     0    414 2015-01-29 23:35:44 /\?\e:/ARQUIVOS/TECNICO/.....log
-rw-rw-rw-     0     0     62 2015-01-29 23:36:15 /\?\e:/ARQUIVOS/TECNICO/....dwl
-rw-rw-rw-     0     0    212 2015-01-29 23:35:38 /\?\e:/ARQUIVOS/TECNICO/....dwl2
-rw-rw-rw-     0     0  35328 2015-01-29 23:35:45 /\?\e:/ARQUIVOS/TECNICO/.....db
drwxrwxrwx     0     0      0 2015-01-29 23:36:14 /\?\e:/ARQUIVOS/TECNICO/....
drwxrwxrwx     0     0      0 2015-01-29 23:36:12 /\?\e:/ARQUIVOS/TECNICO/....
drwxrwxrwx     0     0      0 2015-01-29 23:35:45 /\?\e:/ARQUIVOS/TECNICO/....

changed the filenames... this backup has more than 10TB with millions of files.
but take attention to /\\?\e:/ on path of each file and/or dir

Thanks! This looks like another corner case for Windows which I did not know about ;)

Another output of ls when restic backs up from a UNC path via restic backup \\quadra\test:
snapshot 53662d2d of [\\quadra\test\subdir] at 2018-07-30 15:41:47.4426736 +0100 BST):
drwxrwxrwx     0     0      0 2018-06-27 03:51:29 /\\quadra\test
drwxrwxrwx     0     0      0 2018-07-30 15:37:01 /\\quadra\test/subdir
-rw-rw-rw-     0     0 1677824 2018-07-10 21:01:53 /\\quadra\test/subdir/file.txt

Note that GitHub's markdown may be swallowing double-backslashes unless the example is blocked by three backticks

Can someone look into fixing this? Shouldn't be too hard I guess.

Duplicate of #2807.


Attain CII Silver

Current Behavior
The Meshery project is currently a CII "passing" level project.
Desired Behavior
The Meshery Project will ideally be a "silver" level project by working through each of the silver level requirements: https://bestpractices.coreinfrastructure.org/en/projects/3564?criteria_level=1

It seems that there are a varied amount of tasks which are to be done to attain silver status.
Should one create a new issue for every task and tag this as the main issue there?

It seems that there are a varied amount of tasks which are to be done to attain silver status.
Should one create a new issue for every task and tag this as the main issue there?

Individual issues would be great. 👍


Enable the use of nested structures in peewee

Hello,
I love your lib, it is such a produtivity booster to me!
Another lib that I love is Peewee. One little problem that I have is the conversion from peewee to Pydantic models. When you have a nested model, the proposed getter on the documentation fails to convert it. With the proposed path, it convert the nested reference to model to json, and Pydantic take care of the right conversion.

Hey @bratao, thanks for your contribution!
I no longer work with Peewee, and I wouldn't recommend it because it doesn't play well with async/await as it depends on thread locals, and it also doesn't work well with type annotations.
I see the change you are proposing is simple, but I'm not sure how nested models work in Peewee, not sure if that saves them to JSON types, or if it makes automatic relationships with other tables. I fear if it's the second option it would easily end up in infinite recursion when serializing models.
Also, if I accept this I would need to understand it and then maintain it and answer questions about it, etc. And I would actually prefer to recommend other libraries that are made to be compatible with async and await, and that play better with type annotations.
Nevertheless, I think this could be a good candidate for an external blog post, with the tricks you have used to make it work properly for you. :sunglasses: If you write an article like that, you can add it to the external links section in the docs. :memo:
Given that, I'll now close this PR, but thanks for your effort! :cake:


iOS renders a black block instead of loader for both custom and predefined presets.

I Checked the loader on different devices and it works very nice, but on my iPhone 6s it shows a black box instead of desired output

Can you help to debug it, please?

@NetanelBasal How can I help you with it?

The solution is to change the HTML like in the original repo :
{/* Opaque color in Safari and iOS */}
<ContentLoader
  primaryColor="rgba(0,0,0,0.06)"
  secondaryColor="rgba(0,0,0,0.12)">

{/* Semi-transparent color in Safari and iOS */}
<ContentLoader
  primaryColor="rgb(0,0,0)"
  secondaryColor="rgb(0,0,0)"
  primaryOpacity={0.06}
  secondaryOpacity={0.12}>

in this linea apparently
https://github.com/NetanelBasal/ngx-content-loader/blob/b71d908e28e3c57c0316c79cea45b0e7aab65d52/src/lib/src/content-loader.component.html#L14
But i haven't try
Here is the original issue and PR
https://github.com/danilowoz/react-content-loader/issues/93

I would love to see PR copy these changes https://github.com/danilowoz/react-content-loader/pull/96/files. Otherwise, I'll do it when I'm available.

fixed in 1.0.3.

@NetanelBasal this is still reproducible with 1.0.3 in iOS


Fixup #714 (config options and docs added) Make wsdl2java part of Qua…

…rkus code generation phase
related #714

@scrocquesel @llowinge here an attempt to polish the code generation a bit. I added some config options, documentation, test coverage and I also made it possible to generate from multiple WSDL files using different wsdl2java params. Please review & share your feedback. I'll probably merge and release another Alpha before you react, but please be sure that your (and anybody else's) feedback is welcome anyway!

789b375: addressed github-code-scanning feedback.


Change in Typescript 3.6 API causes TypeError when using incremental

Expected behavior:
All Typescript files in project successfully compiled
Actual behavior:
Crashes with the following error:
[16:15:44] TypeError: Cannot read property 'length' of undefined
    at Object.emit [as writeFile] (/home/dara/git/web-services/node_modules/gulp-typescript/release/compiler.js:82:33)
    at Object.writeFile (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:12098:14)
    at emitBuildInfo (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:86238:16)
    at emitSourceFileOrBundle (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:86205:13)
    at forEachEmittedFile (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:85999:28)
    at Object.emitFiles (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:86184:9)
    at emitWorker (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:92134:33)
    at /home/dara/git/web-services/node_modules/typescript/lib/typescript.js:92095:66
    at runWithCancellationToken (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:92185:24)
    at Object.emit (/home/dara/git/web-services/node_modules/typescript/lib/typescript.js:92095:20)

Your gulpfile:
function compile() {
  const tsProject = ts.createProject('tsconfig.json');
  return tsProject.src()
    .pipe(tsProject())
    .pipe(dest('dist'));
}

exports.compile = compile;

tsconfig.json
{
  "compilerOptions": {
    "rootDir": ".",
    "outDir": "dist",
    "module": "commonjs",
    "strict": true,
    "sourceMap": true,
    "incremental": true,
    "lib": ["esnext"],
    "target": "esnext",
    "noImplicitAny": false,
    "esModuleInterop": true
  },
  "include": [
    "src/**/*"
  ],
  "exclude": []
}

My analysis
With Typescript 3.6, the write file callback gets called not just with the js files emitted by the Typescript compiler, but also with the tsconfig.tsbuildinfo file, which has no source files so the sourceFiles parameter is undefined.
This only happens when incremental is set to true and doesn't happen in Typescript 3.5 because the tsconfig.tsbuildinfo was not passed to the callback.
This is likely an intentional change in Typescript, as the tsc command emits a tsconfig.tsbuildinfo file, but until now, it was not given to the write callback.

+1

+1

+1

A temporary workaround as suggested in https://github.com/ivogabe/gulp-typescript/issues/499#issuecomment-538285301 is to set "incremental": false in your tsconfig.json file.

Why is this issue closed? It is still there right?
The workaround above is not really a solution (though I'm happy there is a workaround for now).
I popped in this issue using Typescript 3.7.3.


[rdf] Load an RDF file as unary and binary facts.

Currently, each RDF triple is translated as a Java fact associated to a predicate of arity 3.
We wish to translate RDF triples role assertions into ternary facts, and class assertions into binary facts.

This has been implemented in Rulewerk 0.7.0. The constructor RdfModelConverter(boolean skolemize, String triplePredicateName) can be used with null for the predicate name to get this behaviour.


Missing CMakeLists.txt file for modular deployment

There is no CMAKE file which forces users to manually manage a path dependency to CUB.
The neat way of doing this would be to add a CMAKE file that specifies a build & install interface to the CUB headers.
The end user would then only need to install CUB and then specificy:
find_package(cub REQUIRED)
add_executable(myApp myApp.cu)
target_link_libraries(myApp PRIVATE cub)

This will locate the installed CUB on the system and inform "myApp" of how to interact with the "cub" target, in this case the include paths ("-I").
Example CMakeLists.txt with packaging:
add_library(cub INTERFACE)
target_include_directories(cub INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/cub/>
$<INSTALL_INTERFACE:cub/>)

#
# Packaging for installation (boilerplate code):
#
set(cub_VERSION_MAJOR 1)
set(cub_VERSION_MINOR 8)
set(cub_VERSION_PATCH 0)

#
# Version number:
#
set(cub_VERSION ${cub_VERSION_MAJOR}.${cub_VERSION_MINOR}.${cub_VERSION_PATCH})
#
# Version properties of target
#
#set_property(TARGET cub PROPERTY VERSION cub_VERSION)
set_property(TARGET cub PROPERTY INTERFACE_cub_MAJOR_VERSION ${cub_VERSION_MAJOR})
set_property(TARGET cub PROPERTY INTERFACE_cub_MINOR_VERSION ${cub_VERSION_MINOR})
set_property(TARGET cub PROPERTY INTERFACE_cub_PATCH_VERSION ${cub_VERSION_PATCH})
set_property(TARGET cub APPEND PROPERTY COMPATIBLE_INTERFACE_STRING cub_MAJOR_VERSION)

#
# Install files:
#
install(TARGETS cub EXPORT cubTargets
  ARCHIVE DESTINATION lib/cub-${cub_VERSION}
  LIBRARY DESTINATION lib/cub-${cub_VERSION}
  INCLUDES DESTINATION include/cub-${cub_VERSION}
)

#
# All the header sources get installed to include/cub-*/
#
install(
  DIRECTORY
    cub/
  DESTINATION
    include/cub-${cub_VERSION}
  COMPONENT
    Devel
)
#
# Create a config file:
#
include(CMakePackageConfigHelpers)
write_basic_package_version_file(
  "${CMAKE_CURRENT_BINARY_DIR}/cub-${cub_VERSION}/cubConfigVersion.cmake"
  VERSION ${cub_VERSION}
  COMPATIBILITY AnyNewerVersion
)
#
# Export targets file to a new file (generated by biuld sys)
#
export(EXPORT cubTargets
  FILE "${CMAKE_CURRENT_BINARY_DIR}/cub-${cub_VERSION}/cubTargets.cmake"
  NAMESPACE cub::
)
#
# Top-level config (will be read by someone using the packae ex find_package(cub REQUIRED) )
configure_file(cmake/cubConfig.cmake
  "${CMAKE_CURRENT_BINARY_DIR}/cub-${cub_VERSION}/cubConfig.cmake"
  COPYONLY
)
#
# Installation of config and version files
#
set(ConfigPackageLocation lib/cmake/cub-${cub_VERSION})
install(EXPORT cubTargets
  FILE
    cubTargets.cmake
  NAMESPACE
    cub::
  DESTINATION
    ${ConfigPackageLocation}
)
install(
  FILES
    cmake/cubConfig.cmake
    "${CMAKE_CURRENT_BINARY_DIR}/cub-${cub_VERSION}/cubConfigVersion.cmake"
  DESTINATION
    ${ConfigPackageLocation}
  COMPONENT
    Devel
)

The cubConfig.cmake could look like below:
include("${CMAKE_CURRENT_LIST_DIR}/cubTargets.cmake")
# Below might be done tidier...
set(ROOT_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../)
include_directories("${ROOT_DIR}/include/cub-${cub_VERSION}")

I am very much in favor of this! I'm running into issues with this while trying to make cub a git submodule for use in a library and also pass cub as a dependency to another submodule.

We have been improving our CMake build and packaging infrastructure for a while now. Try out the latest CUB from main and open a new issue if you have a usecase we've missed.


REVERT: PublishSingleFile dll and resources.pri redirection support

Reverting https://github.com/microsoft/WindowsAppSDK/pull/4067
Due to failure in the ingestion

/azp run


Add support for jsx html element highlights

I'm not sure if this is at all how you want to solve this. But since I spent some time toying with this approach, I might as well post it as a PR.
Some notes:

Regex matches all html tags based on the existence of opening chevron and one of explicitly listed tag names. The opening tag then expects either closing chevron or at least one whitespace character (to avoid collisions with type arguments)
Closing tag works similarly except that it doesn't allow any content other than the tag name.
The tag list is just pasted from somewhere and is almost certainly not complete. I can figure out where to find a complete list if the approach is considered good otherwise.

Hmm, I realized this fails with code that uses html tag names as type names.
type div: bool = false;
let foo: option<div> = Some(div)

Whoever's reading this: make sure you've seen my comment at https://github.com/rescript-lang/rescript-vscode/pull/8#issuecomment-764469070 first
I'm open to consider coloring lower-cased JSX tags. But not if they discolor option<foo>. There might be some circumventions for this. I'll think about it.

Whoever's reading this: make sure you've seen my comment at https://github.com/rescript-lang/rescript-vscode/pull/8#issuecomment-764469070 first
I'm open to consider coloring lower-cased JSX tags. But not if they discolor option<foo>. There might be some circumventions for this. I'll think about it.

what about just coloring angle brackets and equal signs?

This is from vim-rescript

That could work, but requires detection the jsx block anyway

Btw @amiralies see https://github.com/rescript-lang/rescript-vscode/#recommendation and https://github.com/rescript-lang/rescript-vscode/pull/8#issuecomment-764469070. Your = should already be colored. Maybe for operators in particular, I can add another scope.

The highlighting (using the same ported grammar) in Sublime Text:

Unfortunately vscode's default dark theme doesn't highlight any operator...

is that the same exact tm grammar mapped to submile-syntax?
I think submile-syntax is more powerful than tm grammar.

It's the same, though for the example above I've tweaked a few things for clarity, ignore that. But the main point is that your theme (and mine, the default vscode dark theme) don't highlight stuff like operators.
Yeah I'm familiar with the difference between the two grammars. Part of why I didn't lazy out with reusing TM grammar for Sublime is precisely because the new Sublime grammar is much nicer.

Note: https://github.com/rescript-lang/rescript-vscode/pull/367 will implement the equivalent of this. Thank you @TomiS !


feat: update action runner to use NodeJS 20

Close #89

[!Note]
Upon transitioning from 12 to 16, it was recommended to bump major version: https://github.blog/changelog/2022-05-20-actions-can-now-run-in-a-node-js-16-runtime/
I'm not sure if this is still the case for NodeJS 20

Thank you for your submission! We require that all contributors sign our Contributor License Agreement ("CLA") before we can accept the contribution. Read and sign the agreement
Learn more about why HashiCorp requires a CLA and what the CLA includes
Have you signed the CLA already but the status is still pending? Recheck it.

hi @JenGoldstrich, I've reverted package version