woke and tools for solidity not working, require version 2.2.0 but pip installs 2.1.0

woke is just installed but not working or logging anything else

PyPi package 'woke' in version 2.1.0 installed but the target minimal version is 2.2.0.
Running 'python3 -m pip install woke -U'
.....
.....
....
Installing collected packages: woke
Successfully installed woke-2.2.0

PyPi package 'woke' in version 2.1.0 installed but the target minimal version is 2.2.0. Exiting...

running
 woke --version

prints 2.1.0

Can you please share a full log from the Tools for Solidity output window? Thank you

PyPi package 'woke' in version 2.1.0 installed but the target minimal version is 2.2.0.
Running 'python3 -m pip install woke -U'
Requirement already satisfied: woke in /opt/homebrew/lib/python3.11/site-packages (2.2.0)
Requirement already satisfied: aiofiles<0.9,>=0.8 in /opt/homebrew/lib/python3.11/site-packages (from woke) (0.8.0)
Requirement already satisfied: aiohttp<4.0,>=3.8 in /opt/homebrew/lib/python3.11/site-packages (from woke) (3.8.4)
Requirement already satisfied: click<9,>=8 in /opt/homebrew/lib/python3.11/site-packages (from woke) (8.1.3)
Requirement already satisfied: eth-abi<5.0.0,>=4.0.0b2 in /opt/homebrew/lib/python3.11/site-packages (from woke) (4.0.0b2)
Requirement already satisfied: eth-hash[pycryptodome]<0.6.0,>=0.5.1 in /opt/homebrew/lib/python3.11/site-packages (from woke) (0.5.1)
Requirement already satisfied: eth-utils<3.0,>=2.1 in /opt/homebrew/lib/python3.11/site-packages (from woke) (2.1.0)
Requirement already satisfied: graphviz<0.20,>=0.19 in /opt/homebrew/lib/python3.11/site-packages (from woke) (0.19.2)
Requirement already satisfied: intervaltree<4.0,>=3.1 in /opt/homebrew/lib/python3.11/site-packages (from woke) (3.1.0)
Requirement already satisfied: networkx<3.0,>=2.5 in /opt/homebrew/lib/python3.11/site-packages (from woke) (2.8.8)
Requirement already satisfied: parsimonious<0.10,>=0.9 in /opt/homebrew/lib/python3.11/site-packages (from woke) (0.9.0)
Requirement already satisfied: pathvalidate<3.0,>=2.5 in /opt/homebrew/lib/python3.11/site-packages (from woke) (2.5.2)
Requirement already satisfied: pdbr[ipython]<0.9.0,>=0.8.0 in /opt/homebrew/lib/python3.11/site-packages (from woke) (0.8.2)
Requirement already satisfied: pydantic<2.0.0,>=1.9.1 in /opt/homebrew/lib/python3.11/site-packages (from woke) (1.10.6)
Requirement already satisfied: pytest<8,>=7 in /opt/homebrew/lib/python3.11/site-packages (from woke) (7.2.2)
Requirement already satisfied: rich<14.0.0,>=13.3.2 in /opt/homebrew/lib/python3.11/site-packages (from woke) (13.3.2)
Requirement already satisfied: rich-click<2.0,>=1.6 in /opt/homebrew/lib/python3.11/site-packages (from woke) (1.6.1)
Requirement already satisfied: tblib<2.0,>=1.7 in /opt/homebrew/lib/python3.11/site-packages (from woke) (1.7.0)
Requirement already satisfied: tomli<3,>=2 in /opt/homebrew/lib/python3.11/site-packages (from woke) (2.0.1)
Requirement already satisfied: typing-extensions<5,>=4 in /opt/homebrew/lib/python3.11/site-packages (from woke) (4.5.0)
Requirement already satisfied: watchdog<3.0,>=2.2 in /opt/homebrew/lib/python3.11/site-packages (from woke) (2.3.1)
Requirement already satisfied: websocket-client<2.0,>=1.4 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from woke) (1.4.2)
Requirement already satisfied: attrs>=17.3.0 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from aiohttp<4.0,>=3.8->woke) (22.2.0)
Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /opt/homebrew/lib/python3.11/site-packages (from aiohttp<4.0,>=3.8->woke) (3.1.0)
Requirement already satisfied: multidict<7.0,>=4.5 in /opt/homebrew/lib/python3.11/site-packages (from aiohttp<4.0,>=3.8->woke) (6.0.4)
Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /opt/homebrew/lib/python3.11/site-packages (from aiohttp<4.0,>=3.8->woke) (4.0.2)
Requirement already satisfied: yarl<2.0,>=1.0 in /opt/homebrew/lib/python3.11/site-packages (from aiohttp<4.0,>=3.8->woke) (1.8.2)
Requirement already satisfied: frozenlist>=1.1.1 in /opt/homebrew/lib/python3.11/site-packages (from aiohttp<4.0,>=3.8->woke) (1.3.3)
Requirement already satisfied: aiosignal>=1.1.2 in /opt/homebrew/lib/python3.11/site-packages (from aiohttp<4.0,>=3.8->woke) (1.3.1)
Requirement already satisfied: eth-typing>=3.0.0 in /opt/homebrew/lib/python3.11/site-packages (from eth-abi<5.0.0,>=4.0.0b2->woke) (3.3.0)
Requirement already satisfied: pycryptodome<4,>=3.6.6 in /opt/homebrew/lib/python3.11/site-packages (from eth-hash[pycryptodome]<0.6.0,>=0.5.1->woke) (3.17)
Requirement already satisfied: cytoolz>=0.10.1 in /opt/homebrew/lib/python3.11/site-packages (from eth-utils<3.0,>=2.1->woke) (0.12.1)
Requirement already satisfied: sortedcontainers<3.0,>=2.0 in /opt/homebrew/lib/python3.11/site-packages (from intervaltree<4.0,>=3.1->woke) (2.4.0)
Requirement already satisfied: regex>=2022.3.15 in /opt/homebrew/lib/python3.11/site-packages (from parsimonious<0.10,>=0.9->woke) (2022.10.31)
Requirement already satisfied: icecream in /opt/homebrew/lib/python3.11/site-packages (from pdbr[ipython]<0.9.0,>=0.8.0->woke) (2.1.3)
Requirement already satisfied: ipython in /Users/mac/Library/Python/3.11/lib/python/site-packages (from pdbr[ipython]<0.9.0,>=0.8.0->woke) (8.8.0)
Requirement already satisfied: sqlparse in /opt/homebrew/lib/python3.11/site-packages (from pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.4.3)
Requirement already satisfied: iniconfig in /opt/homebrew/lib/python3.11/site-packages (from pytest<8,>=7->woke) (2.0.0)
Requirement already satisfied: packaging in /Users/mac/Library/Python/3.11/lib/python/site-packages (from pytest<8,>=7->woke) (23.0)
Requirement already satisfied: pluggy<2.0,>=0.12 in /opt/homebrew/lib/python3.11/site-packages (from pytest<8,>=7->woke) (1.0.0)
Requirement already satisfied: markdown-it-py<3.0.0,>=2.2.0 in /opt/homebrew/lib/python3.11/site-packages (from rich<14.0.0,>=13.3.2->woke) (2.2.0)
Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from rich<14.0.0,>=13.3.2->woke) (2.14.0)
Requirement already satisfied: toolz>=0.8.0 in /opt/homebrew/lib/python3.11/site-packages (from cytoolz>=0.10.1->eth-utils<3.0,>=2.1->woke) (0.12.0)
Requirement already satisfied: mdurl~=0.1 in /opt/homebrew/lib/python3.11/site-packages (from markdown-it-py<3.0.0,>=2.2.0->rich<14.0.0,>=13.3.2->woke) (0.1.2)
Requirement already satisfied: idna>=2.0 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from yarl<2.0,>=1.0->aiohttp<4.0,>=3.8->woke) (3.4)
Requirement already satisfied: colorama>=0.3.9 in /opt/homebrew/lib/python3.11/site-packages (from icecream->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.4.6)
Requirement already satisfied: executing>=0.3.1 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from icecream->pdbr[ipython]<0.9.0,>=0.8.0->woke) (1.2.0)
Requirement already satisfied: asttokens>=2.0.1 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from icecream->pdbr[ipython]<0.9.0,>=0.8.0->woke) (2.2.1)
Requirement already satisfied: backcall in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.2.0)
Requirement already satisfied: decorator in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (5.1.1)
Requirement already satisfied: jedi>=0.16 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.18.2)
Requirement already satisfied: matplotlib-inline in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.1.6)
Requirement already satisfied: pickleshare in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.7.5)
Requirement already satisfied: prompt-toolkit<3.1.0,>=3.0.11 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (3.0.36)
Requirement already satisfied: stack-data in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.6.2)
Requirement already satisfied: traitlets>=5 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (5.8.1)
Requirement already satisfied: pexpect>4.3 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (4.8.0)
Requirement already satisfied: appnope in /Users/mac/Library/Python/3.11/lib/python/site-packages (from ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.1.3)
Requirement already satisfied: six in /Users/mac/Library/Python/3.11/lib/python/site-packages (from asttokens>=2.0.1->icecream->pdbr[ipython]<0.9.0,>=0.8.0->woke) (1.16.0)
Requirement already satisfied: parso<0.9.0,>=0.8.0 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from jedi>=0.16->ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.8.3)
Requirement already satisfied: ptyprocess>=0.5 in /Users/mac/Library/Python/3.11/lib/python/site-packages (from pexpect>4.3->ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.7.0)
Requirement already satisfied: wcwidth in /Users/mac/Library/Python/3.11/lib/python/site-packages (from prompt-toolkit<3.1.0,>=3.0.11->ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.2.5)
Requirement already satisfied: pure-eval in /Users/mac/Library/Python/3.11/lib/python/site-packages (from stack-data->ipython->pdbr[ipython]<0.9.0,>=0.8.0->woke) (0.2.2)

after this nothing else happens, i have reinstalled and tried it on a different codebase, same issue


git-lfs filter-process: git-lfs: command not found, fatal: the remote end hung up unexpectedly

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.72.0 (Universal)
OS Version: macOS Monterey 12.5.1

Steps to Reproduce:

git repository have lfs hooks
click Source Control bar and click refresh button
appearing dialog

click Show Command Output button

> git status -z -uall
git-lfs filter-process: git-lfs: command not found
fatal: the remote end hung up unexpectedly

It results my changes not show in Source Control. But git-lfs is work good in my vscode terminal and git status also show my changes。

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.74.3. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

It solved by disable gitlens extension.


Renamed insert_or_update and update from multiple_subscription_map bo…

Renamed insert_or_update and update from multiple_subscription_map both to insert and return whether element was inserted or already exists

Could you remove subscription_map.cpp update from the PR ?
And could you rebase the PR ?
I already renamed insert_or_update with insert.
See
https://github.com/redboltz/mqtt_cpp/pull/687/commits/13d5192acc04bd479b38ec426f3d7bc205f69b31
And
https://github.com/redboltz/mqtt_cpp/pull/688/files#diff-a35a6276aa5d36d9f80e25692e3bc78a7009bd82f326c9e54cc31c5661aedca9R158
should be remained as insert_or_update. It is for multi_index. It is actually done insert or update.

Now, I'm checking CI issue on #687.

It still CI processing but it seems that the problem has been fixed.
So it is ready for #688. Could you rebase #688 from sub_map_test ?

It is rebased now, but I have some more renames from insert_or_update to insert than you had. Also, i renamed the remove to erase, is that OK ?

I will add comments in the code.

I will add comments in the code.

Also there was a problem in the CI, i fixed this now


multimodal input -> image output

Great work!
I have arranged the input tokens for mm2i according to the token arrangement method for Mixed-Modality Generation described in Figure 3 of the paper. The arrangement is as follows:
[T2I] [SOI] [image token 0] … [image token 255] [EOI] [SOT] [text token 0] … [text token n] [EOT] [SOI] [mask token 0] … [mask token 255] [EOI]
with the model tasked to predict the mask tokens. However, the current results are not satisfactory. Could you please advise on any issues with this arrangement and how they might be corrected?

Hi, have you resolved this issue? Does Show-o support multi-image input?


Azure Synapse

Hi Team, The SQL Data Warehouse should be Azure Synapse.

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

ID: c337b22b-b387-5eea-9b16-656885eae759
Version Independent ID: 6c1ad9b6-fdf4-f23a-20dc-118f262d0a8c
Content: Automated enterprise business intelligence (BI) - Azure Reference Architectures
Content Source: docs/reference-architectures/data/enterprise-bi-adf.md
Service: architecture-center
Sub-service: reference-architecture
GitHub Login: @MikeWasson
Microsoft Alias: pnp

@mjtpena Thank you for your feedback! We will review and provide an update as appropriate.


Make combine work with subqueries

SELECT to_json(r) FROM (SELECT x, z, combine(sum) FROM (SELECT * FROM proc1 ORDER BY y ASC) sq  GROUP BY x, z) r

ERROR: the FROM clause is not a continuous view

Doesn't seem like the PG query analyzer can do this. The sub-query is fully analyzed by the time we get to the parent query.


CI

Very important

This is done with github actions. Here is the documentation on how to do so: https://docusaurus.io/docs/deployment#deploying-to-github-pages

Hey @mmirman can you elaborate more on the issue or is the documentation help is suffiecient?


Output render image of arbitrary resolution

Thanks for your work, I would like to know how to render images of other resolutions from the trained 2DGS.
I tried to rewrite the forward function in gaussianimage_cholesky.py
Change self.H sel.W  to input H,W. The code is as follows:
def forward_HW(self, H, W):
    self.xys, depths, self.radii, conics, num_tiles_hit = project_gaussians_2d(self.get_xyz, self.get_cholesky_elements, H, W, self.tile_bounds)
    out_img = rasterize_gaussians_sum(self.xys, depths, self.radii, conics, num_tiles_hit, self.get_features, self._opacity, H, W, self.BLOCK_H, self.BLOCK_W, background=self.background, return_alpha=False)
    out_img = torch.clamp(out_img, 0, 1) #[H, W, 3]
    out_img = out_img.view(-1, H, W, 3).permute(0, 3, 1, 2).contiguous()
    return {"render": out_img}
However, when H,W = self.H/2 sel.W/2, the rendered image changes from fig1 to fig2.
My understanding and modification may be wrong, so how to render images of other resolutions (greater or less than the original resolution). Very much looking forward to your reply!

At this time, our work cannot support different resolution rendering due to the introduction of accumulated blending. If you want to support different resolution rendering, please use alpha blending.

I am new to 3DGS and know less about it, what is alpha blending? Can you share a relevant link? Thank you so much!

You can see the alpha blending details: Mathematical Supplement for the gsplat Library.

I believe we can just change the model and adjust -- e.g. here is the Cholesky:
            #self.gaussian_model.H *= 8
            #self.gaussian_model.W *= 8
            self.gaussian_model.H //= 2
            self.gaussian_model.W //= 2
            self.gaussian_model.tile_bounds = (
                (self.gaussian_model.W + self.gaussian_model.BLOCK_W - 1) // self.gaussian_model.BLOCK_W,
                (self.gaussian_model.H + self.gaussian_model.BLOCK_H - 1) // self.gaussian_model.BLOCK_H,
                1,
            )
            #self.gaussian_model._cholesky *= 8
            self.gaussian_model._cholesky /= 2
            out = self.gaussian_model.forward()
            out_img = out["render"].float()
            transform = transforms.ToPILImage()
            img = transform(out_img.squeeze(0))
            img.save(str("simple.png"))


Implement Reflect for PhantomData

Objective

Fixed #5144

Solution

impl_reflect! following the example

Testing
N/A
I don't see tests for the other core impl_reflects.

#5145 (comment)
I'm curious why we want this now and not before.

It's still the same issues as before. I think the biggest problem is serialization. It really only adds noise to the serialized output. And if we make it Reflect, then it becomes easy for library authors to forget to ignore it themselves, which means downstream users will see it if they serialize it.
If do this, we may want to consider skipping it during serialization (and other operations such as reflect_partial_eq).

do we want really need this? i feel like PhantomData is supposed to act as if its not there at all (its a :ghost: after all). is there anything not accomplished by annotating #[reflect(ignore)] or is it simply an ergonomic improvement? i'd really rather not have all the "noise" that @MrGVSV mentioned (not just in serialization mind, also in runtime and binary size) just for the sake of a few less tokens to type out.
tldr; the implementation is correct but i'm not sure the feature is desirable.

Maybe it would be better to instead implement a way to always ignore marker types?

I don't know how to fix the unit test. Someone else can give me a pointer or do it themselves if they want. :)

Could there be a way of saying to ignore a whole type when you register it?

Yeah, that would be my preferred solution here.


lint ecosystem: respect no-preview

Addresses https://github.com/astral-sh/ruff/pull/8489#issuecomment-1793513411
That issues still exist on formatter, but since black doesn't support no-preview cli arg, I didn't include it in this PR.

Thanks! You can add this to the formatter too. We don't use comparisons with Black in CI anyway.


AutoCad2018 use this tool will throw exception for a FileDependency Class was missing

I was use autocad 2018,  and after I use netload command to load the MdgDbg dll, it will throw an exception for FileDependencyInfo not exist in acdbmgd.dll

Same problem here.
FileDependencyInfo was deprecated in the 2018 release. See migration guide.
Is there a replacement to this, or what can you use instead?

@ottosson @dengyakui
The Transmittal API can be used to get a list of the files that are referenced by a drawing, such as text and plot styles, along with external references and underlays.  From there, you can get information about each file as needed.
 ' Custom command that opens and accesses the dependents of the files in a transmittal set
    <CommandMethod("FileDependents")>
    Public Shared Sub FileDependents()
        ' Get the current editor
        Dim acEditor As Editor = Application.DocumentManager.MdiActiveDocument.Editor

        ' Create a transmittal operation
        Dim tro As TransmittalOperation = New TransmittalOperation()

        ' Setup the transmittal behavior
        Dim ti As TransmittalInfo = TransInfo(tro.getTransmittalInfoInterface(),
                                              c_destinationRoot)

        ' Define file to add to the transmittal
        Dim tf As TransmittalFile = Nothing
        Dim dwgFile As String = c_dwgFile

        ' Add file to transmittal and parse its information
        If tro.addDrawingFile(dwgFile, tf) = AddFileReturnVal.eFileAdded Then
            ' Get each of the referenced files in the file being added
            Dim tfg As TransmittalFilesGraph = tro.graphInterfacePtr()
            Dim rootTF As TransmittalFile = tfg.getRoot()

            Dim tfList As New List(Of TransmittalFile)()
            tfList.Add(rootTF)

            ' Step through each of the referenced files identified
            While tfList.Count > 0
                tf = tfList(0)
                tfList.RemoveAt(0)

                Dim numberOfDependents As Integer = tf.numberOfDependents
                For i As Integer = 0 To numberOfDependents - 1
                    Dim childTF As TransmittalFile = tf.getDependent(i)
                    tfList.Add(childTF)

                    ' Output the filenames attached to the drawing
                    Application.DocumentManager.MdiActiveDocument.Editor.
                        WriteMessage(Environment.NewLine + childTF.sourcePath)

                    ' See if the dependent file is a drawing or not
                    If System.IO.Path.GetExtension(
                        childTF.sourcePath).ToUpper() = ".DWG" Then

                        ' Open the drawing into memory
                        Dim acDb As New AxDbDocument
                        acDb.Open(childTF.sourcePath)

                        ' If the drawing is not null, display the
                        ' names of each layer in the drawing
                        If Not acDb Is Nothing Then
                            acEditor.WriteMessage(Environment.NewLine & "Layer Names:")

                            ' Step through each of the layers
                            For Each acLyr As AcadLayer In acDb.Layers
                                ' Output the names of each layer
                                acEditor.WriteMessage(Environment.NewLine &
                                                      "  " & acLyr.Name)
                            Next
                        End If

                        ' Set the object to Nothing to close the drawing
                        acDb = Nothing
                    End If
                Next
            End While
        End If

        ' Release the transmittal operation
        tro = Nothing
    End Sub

Command: FILEDEPENDENTS
C:\Program Files\Autodesk\AutoCAD 2016\Sample\Sheet Sets\Architectural\A-02.dwg
Layer Names:
  0
  TB_TEXT4
  DEFPOINTS
  Elevation_Dim
  Exterior Elevations|WALLS
  Exterior Elevations|Elevation_Trim
  Exterior Elevations|Arch_Detail_Door
  Exterior Elevations|LAYER251A
  Exterior Elevations|Elevation_Post
  Exterior Elevations|Elevation_GB
  Exterior Elevations|Elevation_Cladding
  Exterior Elevations|Elevation_Dim
  Exterior Elevations|Elevation_Flashing
  Exterior Elevations|Floor_Plan_Downspout
  Exterior Elevations|Floor_Plan_SplashGuard
  Exterior Elevations (2)
  PS_Viewport
  PS_Annot
  TS-TEXT2
  TB_TEXT1
  TB_TEXT3
  TB_BORDER
  TB_INFORMATION
  TB_CORNERS
C:\Users\ambrosl\appdata\roaming\autodesk\autocad 2018\r22.0\enu\support\acad.fmp
C:\Users\ambrosl\appdata\roaming\autodesk\autocad 2018\r22.0\enu\support\simplex.shx
C:\program files\autodesk\autocad 2018\fonts\txt.shx
C:\WINDOWS\FONTS\sanssb__.ttf
C:\program files\autodesk\autocad 2018\fonts\romans.shx
C:\program files\autodesk\autocad 2018\fonts\romanc.shx
C:\program files\autodesk\autocad 2018\fonts\ROMAND.shx
C:\WINDOWS\FONTS\sanss___.ttf
C:\Users\ambrosl\AppData\Roaming\Autodesk\AutoCAD 2016\R20.1\enu\Plotters\Plot Styles\monochrome.ctb
C:\Users\ambrosl\AppData\Roaming\Autodesk\AutoCAD 2016\R20.1\enu\Plotters\DWF6 ePlot.pc3
C:\Program Files\Autodesk\AutoCAD 2016\Sample\Sheet Sets\Architectural\Res\Exterior Elevations.dwg
Layer Names:
  0
  WALLS
  Elevation_Trim
  Arch_Detail_Door
  LAYER251A
  Elevation_Post
  Elevation_GB
  Elevation_Cladding
  Elevation_Dim
  Elevation_Flashing
  Floor_Plan_Downspout
  Floor_Plan_SplashGuard
  DEFPOINTS
C:\program files\autodesk\autocad 2018\fonts\txt.shx
C:\WINDOWS\FONTS\sanssb__.ttf
C:\program files\autodesk\autocad 2018\fonts\romans.shx


Activating Open Collective

Hi, I'm making updates for Open Collective. Either you or another core contributor signed this repository up for Open Collective. This pull request adds financial contributors from your Open Collective https://opencollective.com/SuperTinyIcons ❤
What it does:

adds a badge to show the latest number of financial contributors
adds a banner displaying contributors to the project on GitHub
adds a banner displaying all individuals contributing financially on Open Collective
adds a section displaying all organizations contributing financially on Open Collective, with their logo and a link to their website

We have also added a postinstall script to let people know after npm|yarn install that you are welcoming donations. Feel free to remove it if you don't want it. [More info]
P.S: As with any pull request, feel free to comment or suggest changes.
Thank you for your great contribution to the Open Source community. You are awesome! 🙌
And welcome to the Open Collective community! 😊
Come chat with us in the #opensource channel on https://slack.opencollective.com - great place to ask questions and share best practices with other Open Source sustainers!

Wow! What a lovely and helpful thing to do. Thank you :-)


[Bug] Numbers not matching between Agent Replies and count_agent_comments

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the issue
Hi,
While checking the numbers between count_agent_comments using the dbt model in zendesk__ticket_metrics table and the number of agent replies in Zendesk explore, I can see the numbers are not matching.

Do you know why there is such a big discrepancy in numbers?
Relevant error log or model output
No response
Expected behavior
I would expect the numbers from count_agent_commands, count_public_agent_comments or total_agent_replies to match the numbers I get for agent replies in Zendesk explore but none of them are matching.
dbt Project configurations
vars:
Needed to keep the surrogate_key function treating null as empty strings following upgrade of db-utils
surrogate_key_treat_nulls_as_empty_strings: true
using_domain_names:         False         #Disable if you are not using domain names
using_organization_tags:    False         #Disable if you are not using organization tags
zendesk__ticket_passthrough_columns: [custom_contact_reason,custom_coupon_code,custom_order_number,custom_carrier,custom_client_contact_reason_no_order,custom_client_contact_reason_order]
Package versions
packages:

package: dbt-labs/codegen
version: ['>=0.7.0', <0.10.0]
package: dbt-labs/dbt_utils
version: ['>=0.8.0', '<2.0.0']
package: fivetran/zendesk
version: [">=0.10.0", "<0.11.0"]

What database are you using dbt with?
bigquery
dbt Version
dbt Version: 1.4
Additional Context
No response
Are you willing to open a PR to help address this issue?

[ ] Yes.
[ ] Yes, but I will need assistance and will schedule time during our office hours for guidance
[X] No.

Hi @gui-brandalley thanks for raising this issue. I believe I understand the source of this discrepancy is due to the following line in our package code
https://github.com/fivetran/dbt_zendesk/blob/e48922ba6e80bb502524722031a87ef4ad34ef00/models/zendesk__ticket_metrics.sql#L103
As you can see we are calculating the number of agent comments as any agent comment regardless if it is internal or public. This is not consistent with what you are sharing how Zendesk counts this metric. Instead, I would assume this is being calculated by leveraging the public agent comments only. Would you be able to confirm if this seems to be the case for your tickets in question. If so, we can move forward with applying a fix to the models to account for this discrepancy.

Hi @gui-brandalley 👋  ! We believe we have solved for this issue and will merge this into our next release in the coming days.
In the meantime, if you'd like to test this fix you can utilize our current branch where we are making the necessary changes.  Here is the git config you'll need to use. Let us know if you have any questions!
packages:
  - git: https://github.com/fivetran/dbt_zendesk.git
    revision: bug/fixing-agent-replies-definition
    warn-unpinned: false

These updates have since been included in the latest v0.11.0 release of the dbt_zendesk package! This should be live on the dbt hub at the top of the hour. As such I will close this issue.
Please feel free to comment here or open a new issue if you see your initial issue persisting. Thanks!

Hi @fivetran-joemarkiewicz
Apologies for the delay, I have just noticed some cases where the count_agent_comments is still 0 with version 0.11.0.
I can't find any clue about what could be the reason but if you need any more details please let me know.
Kind regards,
Guillaume

Hi @gui-brandalley ! I believe we changed the count_agent_replies logic in this ticket but not count_agent_comments. Currently the logic holds  in our model for agent comment count as:
        sum(case when commenter_role = 'internal_comment'
            then 1
            else 0
                end) as count_agent_comments

Is this the logic you'd expect? If it is, could you send us some cases of tickets that aren't fitting this logic? If not, could you let us know what logic you would be expecting?

Hi @fivetran-avinash ,
I can't find any count_agent_replies field in the zendesk_ticket_metrics model. Are you talking about total_agent_replies?

HI @gui-brandalley , sorry, yes, total_agent_replies is what I meant.


Refactor SONGMAN from a singleton into a namespace

This should have minor compile-time improvements.
It should also make for clearer overall code.
Ideally, this should be the first of many such PRs to convert all of our singletons.
Note: Lua is currently broken because of this; Poco knows how to fix it.
Other Note: The physical location of code within the source file could be tidied a bit, additionally some functions are only used internally and should be moved inside of the anonymous namespace.

This is now quite out of date.
Because it's old and I don't really like what I did already for this in retrospect, I'm going to close this for now.
In the future, I might try to return to this thought in a less horrifying way.


Enable Renew/Configure buttons based on selection

Tested to work fine; merging shortly.

Backported to master-3.3.10.


Warnings displayed but card working?

Checklist:

[|] I updated to the latest version available
[|] I cleared the cache of my browser

Release with the issue:
Last working release (if known): From beginning
Browser and Operating System: Chrome / Windows 11

Description of problem:

Javascript errors shown in the web inspector (if applicable):
No errors
Additional information:

Still the same :

I'm using accuweather integration.

Issue to be closed - for accuweather it is needed to change this setting:

I will have a further look at this. If there is less than 5 days of forecast (starting from tomorrow) it is meant to automatically reduce the number of days shown.
Are you able to share a screenshot of your weather.xxx sensor (with all of its attributes) from the developer tools.

Nevermind, I figured it out and it will not show those warnings in the next release.


Minor: Change in person appellation types

1. Change type persname to persname/pref
All person appellations created from the first persName element in person (their URI ends with appellation/0) currently have this E55 Type assigned: <https://sk.acdh.oeaw.ac.at/types/person/persname>.
Should be  <https://sk.acdh.oeaw.ac.at/types/person/persname/pref> instead.
E.g.:
<https://sk.acdh.oeaw.ac.at/pmb2147/appellation/0> a ns1:E33_E41_Linguistic_Appellation ;
        rdfs:label "Altenberg, Peter"@und ;
        ns1:P2_has_type <https://sk.acdh.oeaw.ac.at/types/person/persname>,
            <https://sk.acdh.oeaw.ac.at/types/person/persname/male> .

should be
<https://sk.acdh.oeaw.ac.at/pmb2147/appellation/0> a ns1:E33_E41_Linguistic_Appellation ;
        rdfs:label "Altenberg, Peter"@und ;
        ns1:P2_has_type <https://sk.acdh.oeaw.ac.at/types/person/persname/pref>,
            <https://sk.acdh.oeaw.ac.at/types/person/persname/male> .

2. Change gender Type:
If a persName has a @sex, the E55 Type added to the appellation statement must not be derived from the person/sex-element, but from this attribute in persName. (Otherwise, male pseudonyms of female authors are typed female.)

@linxOD First item works fine, second still as before: Looks like
<https://sk.acdh.oeaw.ac.at/pmb8146/appellation/1> a cidoc:E33_E41_Linguistic_Appellation ;
        rdfs:label "Eckbrecht Andreas"@und ;
        cidoc:P2_has_type <https://sk.acdh.oeaw.ac.at/types/person/persname/female>,
            <https://sk.acdh.oeaw.ac.at/types/person/persname/pseud> ;
        rdf:value "Eckbrecht Andreas" .

Line 3 should say "male" in the end.

@linxOD
I saw that when one of many persName elements has @sex, the respective E55_Type is changed for all the person's persName elements, not just the one. Please change it that in only affects the one (example: https://sk.acdh.oeaw.ac.at/pmb8146/appellation/1 must stay male, but https://sk.acdh.oeaw.ac.at/pmb8146/appellation/0 female).


[ZEPPELIN-5855] Refactor docker plugin and remove powermock

What is this PR for?
Powermock is not supported in JUnit5. We should not be dependent on Powermock. This PR removes the Powermock dependency from the Docker plugin. It also makes some refactoring.
Instead of using environment variables directly, this possibility of configuration is moved to ZeppelinConfiguration. In order not to break the naming scheme in ZeppelinConfiguration, the environment variables that were previously accessed must be changed.
CONTAINER_SPARK_HOME -> ZEPPELIN_DOCKER_CONTAINER_SPARK_HOME
UPLOAD_LOCAL_LIB_TO_CONTAINTER -> ZEPPELIN_DOCKER_UPLOAD_LOCAL_LIB_TO_CONTAINTER
DOCKER_HOST -> ZEPPELIN_DOCKER_HOST
DOCKER_TIME_ZONE -> ZEPPELIN_DOCKER_TIME_ZONE
Except for DOCKER_TIME_ZONE, I have not found any references in the documentation or other files.
What type of PR is it?
Refactoring
What is the Jira issue?

https://issues.apache.org/jira/browse/ZEPPELIN-5855

How should this be tested?

CI

Questions:

Does the licenses files need to update? No
Is there breaking changes for older versions? Yes
Does this needs documentation? No

I need a review.


Support for Formdata

Hey @liyasthomas,
Your changes look good to me!
View build log
TravisBuddy Request Identifier: c472f870-483f-11ea-adaa-75531245892f


Feature request: Automatically support multiple courses

Now we need manually set up every Moodle course. That's not easy. Provide a script or even an admin Web UI, please?

This is a great idea. Right now, I don’t have the bandwidth to dive into this properly, but I have been thinking whether there could be a collaborative effort around this idea.


'housing_type' and 'laundry' filters

Are the 'housing_type' and 'laundry' filters still supported?  They both return "not a valid filter".

Hey @jackdbastian, could you provide the code snippet that raised this issue? I couldn't replicate it.
from craigslist import CraigslistHousing

apts_sfbay = CraigslistHousing(
    site="sfbay",
    category="apa",
    filters={"housing_type": "apartment", "laundry": "w/d hookups"},
)
print(next(apts_sfbay.get_results()))

Hi @irahorecka, I'm not sure what I was doing wrong before but your snippet worked.  Thank you for the help and for maintaining this awesome package!

@jackdbastian no problem, happy to help

Hey @jackdbastian, I created a new python craigslist api library that might be of interest (https://github.com/irahorecka/pycraigslist).


Test Restify clients by mocking API responses

I'm trying to test my restify Json client by mocking out the api. I've tried using sinon, node-fakeweb and now nock. Neither of these mocking solutions seem to work when I use restify's Json or http client.
Does anyone have any idea why restifys clients are behaving differently, from what I can see they are all using node's http.request method - so the mock should work.

I was using node-mocks-http but I realized that it was a bit artificial around the way the POST, GET are handled and skips most of the handlers.
So, unfortunately, I went for full-on integration tests with mocha & supertest. The code seems to be shorter and works pretty decently. Just, I need to have the server spun up to actually test. Oh well, it seems to work well.


Update audio_spec.py

Fix the potential "nan" problem of the precrocess_model in BrowserFftSpec.

@googlebot I signed it!

The preprocess_model used by BrowserFftSpec will produce "nan" results when the input tensors contain too many zero entries. Such inputs are common because there may be delays in the recording device resulting in an empty stream at the beginning of the audio file. This PR fixes this potential "nan" problem by adding a small Gaussian noise to the inputs before they go through the preprocess_model.


Replacing playlist tracks broken in v9.2.2

Bug Report
What i expected:

Replacing tracks in a playlist should work using the spotifyApi.playlists.reorderItems(...) API.
What actually happened:

Replacing tracks no longer works, because there is a wrong body property uri instead of uris (plural)
This is likely because in this line the uri parameter is used instead of uris. (See Spotify API reference)
To reproduce this bug:

const spotifyApi = await Client.create({
    token: {
      clientID: SPOTIFY_CLIENT_ID,
      clientSecret: SPOTIFY_CLIENT_SECRET,
      refreshToken: spotifyUser.refreshToken,
    },
    userAuthorizedToken: true,
    refreshToken: true,
  });

const playlistId = "VALID PLAYLIST ID"
const trackUris = ['VALID TRACK URIS']

await spotifyApi.playlists.reorderItems(playlistId, {
  uris: trackUris,
});

Node Version: 16.15.1

Library Version: 9.2.2

[X] I have already checked issues regarding this bug.

[X] This problem is generated due to version migration.

I created pull request #158 which solves this issue.


large exports don't work

some exports that worked before stop working, for example:
https://viz2.cartodb.com/api/v1/sql?q=select%20lat,long,temp,date%20from%20ow&format=csv

the error is:
"Your query was not able to finish.  Try again."

Sounds reasonable for me but we should provide a way to download large datasets. We could use the COPY command to stream csv or pgdump files

Seems like ogr2ogr is doing a mad query that can be pretty heavy depending on the number of tables:
SELECT c.relname, n.nspname, c.relkind, g.f_geometry_column, g.type, g.coord_dimension, g.srid, 1, c.oid as oid, a.attnum as attnum FROM pg_class c, pg_namespace n, geometry_columns g, pg_attribute a WHERE (c.relkind in ('r','v') AND c.relname !~ '^pg_' AND c.relnamespace=n.oid AND c.relname::TEXT = g.f_table_name::TEXT AND n.nspname = g.f_table_schema AND a.attname = g.f_geometry_column AND a.attrelid = c.oid) UNION SELECT c.relname, n.nspname, c.relkind, g.f_geography_column, g.type, g.coord_dimension, g.srid, 2, c.oid as oid, a.attnum as attnum FROM pg_class c, pg_namespace n, geography_columns g, pg_attribute a WHERE (c.relkind in ('r','v') AND c.relname !~ '^pg_' AND c.relnamespace=n.oid AND c.relname::TEXT = g.f_table_name::TEXT AND n.nspname = g.f_table_schema AND a.attname = g.f_geography_column AND a.attrelid = c.oid) ORDER BY oid, attnum;

In my case in local it takes around 8 seconds with 480 rows. It has nested loops

asked even about this

Yeah, the reference to ‘geometry_columns’ in the query is a bit of a giveaway. Pretty sure it’s just looking for “all the geometry tables and views”. Probably pre-dates 2.0, since it’s pretty crazy to be joining geometry_columns (now a view on the system tables) back onto the system tables. Better just to ask it directly or to skip it entirely and ask the system tables directly.

from even:
"""
If you know the tables you want to work on, you can add " tables=foo,bar" to the
OGR connection string, which will skip this statement that lists the existing
tables.
"""

I tested out the OGR version of the system table query, and a simplified one that doesn't do the join against geometry_columns, and the simple one is about 10x faster on a system with 1000 tables. That said, the OGR one didn't exceed 500ms in runtime, so wondering where the 8 seconds comes from.

I'm reopening the issue as the fix depends on the version of gdal/ogr2ogr you are using.

Dragging this into next milestone as I'm waiting for a new ogr2ogr version.

I cooked a static compilation of ogr2ogr 10 days ago, is it enough?

If it's from svn trunk it should have the improvements to the metadata query.

This is the commit of the debian package currently in production: https://github.com/CartoDB/gdal/commit/bec046151067f3ece7eef042f0b852a750d04529
based on this commit from upstream: https://github.com/CartoDB/gdal/commit/6c6d1ac19a1c58b6c2a664dd1ddba2fbf9549d38

Since version 1.23.0 it's possible to configure the ogr2ogr command (command name or path) to use. Using ogr2ogr from trunk should do the trick.
A good alternative is to have ogr2ogr2-static-bin from ppa:cartodb/gis so you can keep using ogr2ogr (stable release) and start using ogr2ogr2 (ogr2ogr from trunk). That's what we are doing.
I've testing some of the scenarios that were failing before (this issue's and linked issues) and they work now so I'm finally closing this issue \o/.
Thanks to everyone involved!!


[SPARK-33889][SQL][3.1] Fix NPE from SHOW PARTITIONS on V2 tables

What changes were proposed in this pull request?
At ShowPartitionsExec.run(), check that a row returned by listPartitionIdentifiers() contains a null field, and convert it to "null".
Why are the changes needed?
Because SHOW PARTITIONS throws NPE on V2 table with null partition values.
Does this PR introduce any user-facing change?
Yes
How was this patch tested?
Added new UT to v2.ShowPartitionsSuite.

Test build #133303 has started for PR 30907 at commit ecb744d.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/37897/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/37897/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/37897/

Test build #133303 has finished for PR 30907 at commit ecb744d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/133303/

thanks, merging to 3.1!


bluetooth: host: Revert "bluetooth: host: Avoid sending duplicate dev…

…ice to resolving list."
This reverts commit e11ff7df48bce7c98b05ff1626448cd8ab3d82c0.
This patch causes some PTS failure.
Another patch to address duplicate device will follow.

Can you add a comment referencing the PTS test(s) that are broken ?

Scheduled PR #https://github.com/zephyrproject-rtos/zephyr/pull/46505#issuecomment-1156154474 after 10:26:19.

@sjanc are we waiting for an autopts run here?

yes, we were waiting but bot failed to report results to github :)
GAP     GAP/CONN/ACEP/BV-01-C           PTS TIMEOUT
GAP     GAP/CONN/ACEP/BV-03-C           PASS   (progress)
GAP     GAP/CONN/ACEP/BV-04-C           PTS TIMEOUT
GAP     GAP/CONN/DCEP/BV-01-C           PTS TIMEOUT
GAP     GAP/CONN/DCEP/BV-03-C           PASS
GAP     GAP/CONN/DCEP/BV-05-C           PASS  (progress)
GAP     GAP/CONN/DCEP/BV-06-C           PASS  (progress)
GAP     GAP/CONN/GCEP/BV-01-C           PASS
GAP     GAP/CONN/GCEP/BV-02-C           PASS
GAP     GAP/CONN/GCEP/BV-05-C           PASS  (progress)
GAP     GAP/CONN/GCEP/BV-06-C           PASS  (progress)


vars/ and secrets/ have packit/ subdirectory now

Requires:

https://github.com/packit/deployment/pull/219
https://gitlab.cee.redhat.com/user-cont/packit-service/-/merge_requests/146

recheck

merging manually, the failing packit-service-tests-requre is tracked in #1133


need Uninstall.sh

Feature description
I'm just want to have a try and I worry install.sh will mess up my environment, so I'm looking for an official uninstall.sh or uninstall guide.
Additional information
No response

https://github.com/ayamir/nvimdots/wiki/Issues#remove-nvimdots


add：mongo connect timeout

I think when adding a newMongo, set a timeout for the first mongo connection

@CodingJzy,
Thank you for your contribution!  Do you think you can adjust your PR so all comments and commits are in english?

Okay, I've changed. thank you for reminding me!

Thanks @CodingJzy !

You're welcome

Thanks @CodingJzy !

hi, why hasn't merged yet


Unable to download desired video format

linuxacademy-dl -u hr@********* -p ************** -o C:\LinuxAcademy\ --use-ffmpeg -q 360 --debug -v https://linuxacademy.com/cp/modules/view/id/11
Please, can you provide the correct command to download video in 480 format. Thank you in Advance.

@bruthwik
linuxacademy-dl -u hr@********* -p ************** -o C:\LinuxAcademy\ --use-ffmpeg -q 480 --debug -v
Sent from my Xiaomi Redmi Note 3 using FastHub

@abacao
Sir i know that i can replace 360 with 480, what i actually mean is the entire command not working,
So what is the entire correct command to download video of desired format.


Install GCC ARM Embedded Toolchain via Homebrew Cask

Background: https://github.com/Homebrew/legacy-homebrew/pull/45236

Thanks! Is this cask subcommand available in "vanilla" brew? Or does the user need to install something extra before using it? If the later, could you add a link to instructions on how to install cask?

It seems Homebrew automatically taps and keeps Homebrew-Cask updated.
Just to be sure, I tested this on a clean install of Homebrew. The cask subcommand is available in vanilla brew, and when invoking it for the first time, Homebrew-Cask is tapped automatically.

Awesome, thanks for checking this!
In the near future I'll set up Travis CI to test this repo on a mac builder. I'll use these great tips :smile:.

Thank you for merging!
FYI, I'm just getting started on writing an alternative controller for my keyboard which has a Kinetis K20.
Your guide has been extremely helpful to MCU newcomers like me who wants to use Rust for their embedded project 😄
Thanks again for writing this guide and related tools!

FYI, I'm just getting started on writing an alternative controller for my keyboard which has a Kinetis K20.

Awesome! I'll be following that project.

Thanks again for writing this guide and related tools!

Happy to hear that it's been helpful!


Add code analysis plugins into build

Alpaca gear up: (https://github.com/Islandora-CLAW/CLAW/issues/725)
What does this Pull Request do?
Adds two code analysis plugins, Findbugs and PMD, into Alpaca's build, producing HTML reports without ever blocking or failing the build.
What's new?
Some stanzas in build.gradle and a file containing config for PMD.
How should this be tested?
Do a build, see some advice on where/how code can be improved in various folders in build/reports. No functional changes should appear.
Interested parties
@Islandora-CLAW/committers

Might it make sense to use SpotBugs instead? My understanding is that FindBugs is dead and will never support Java9.

Sounds fine to me-- any other opinions? I just don't want us to be writing our own Gradle plugins.

A counter-argument: I'm trying now to use the spotbugs plugin on a project, and the plugin only seems to generate a bunch of error output. So until they actually release a 3.1.0 version, I'd suggest sticking with FindBugs.

A counter-counter argument: it appears that the spotbugs plugin v 1.2 will work (v1.3 has this bug), and apparently v1.4 will be released soon.

/me is getting dizzy. Tell me when @acoburn stops spinning around.

I suppose I should pull Findbugs out, at any rate. We can add Spotbugs when it seems like a stable choice.

K, Findbugs out, just PMD left. PMD seems pretty lively, and it's very flexible and customizable, which is cool

Hoo boy...
752 PMD rule violations were found. See the report at: file:///home/daniel/Code/Java/Alpaca/islandora-indexing-fcrepo/build/reports/pmd/test.html

Sure, but

I didn't customize anything-- I just loaded pretty all of the rulesets that seemed to make sense.
We aren't required to take any action at all about any of that, except as we decide.

I usually think of stuff like this as a good source of newbie tickets, actually. Fixing that kid of "not really an error, just a way to improve" thing is a good way to take a tour of a codebase.

Yeah totally, as long as it doesn't fail builds I'm fine.  I'm waiting for the rest of the tests to complete locally, and once that's done I'm :+1: to this.


load metadata index: read block error -  <IP_ADDRESS>

Hello,
We were using influxdb for the last few days, all of it was perfect, but today we started seeing timeouts (from grafana) when trying to read data from it. After looking at the influxdb I noted that influxdb was crashing/restarting. The following is a copy-paste of the log:
[wal] 2015/10/20 20:12:27 WAL writing to /var/influxdb/wal/metrics/one_day/240
[wal] 2015/10/20 20:12:29 WAL starting with 30720 ready series size, 0.50 compaction threshold, and 20971520 partition size threshold
[wal] 2015/10/20 20:12:29 WAL writing to /var/influxdb/wal/metrics/one_day/241
[wal] 2015/10/20 20:12:30 WAL starting with 30720 ready series size, 0.50 compaction threshold, and 20971520 partition size threshold
[wal] 2015/10/20 20:12:30 WAL writing to /var/influxdb/wal/metrics/one_day/242
[wal] 2015/10/20 20:12:30 reading WAL files to flush to index
[retention] 2015/10/20 20:12:30 retention policy enforcement terminating
[monitor] 2015/10/20 20:12:30 shutting down monitor system
[monitor] 2015/10/20 20:12:30 terminating storage of statistics
run: open server: open tsdb store: failed to open shard 242: load metadata index: read block: EOF
I'd write the STATS but sadly port 8086 (HTTP port) is not able to start/open because influxdb crashes before.
Our config:
reporting-disabled = true
[meta]
dir = "/var/influxdb/meta"
hostname = "influxdb-mon101.flickr.bf1.yahoo.com"
bind-address = ":8088"
retention-autocreate = true
election-timeout = "1s"
heartbeat-timeout = "1s"
leader-lease-timeout = "500ms"
commit-timeout = "50ms"
cluster-tracing = false
[data]
dir = "/var/influxdb/data"
engine = "bz1"
max-wal-size = 104857600
wal-flush-interval = "10m0s"
wal-partition-flush-delay = "2s"
wal-dir = "/var/influxdb/wal"
wal-logging-enabled = true
wal-ready-series-size = 30720
wal-compaction-threshold = 0.5
wal-max-series-size = 1048576
wal-flush-cold-interval = "5s"
wal-partition-size-threshold = 20971520
[cluster]
force-remote-mapping = false
write-timeout = "5s"
shard-writer-timeout = "5s"
shard-mapper-timeout = "5s"
[retention]
enabled = true
check-interval = "30m0s"
[shard-precreation]
enabled = true
check-interval = "10m0s"
advance-period = "30m0s"
[admin]
enabled = true
bind-address = ":8083"
https-enabled = false
https-certificate = "/conf/influxdb/ssl/influx.pem"
[monitor]
store-enabled = true
store-database = "_internal"
store-interval = "60s"
[http]
enabled = true
bind-address = ":8086"
auth-enabled = false
log-enabled = true
write-tracing = false
pprof-enabled = false
https-enabled = false
https-certificate = "/conf/influxdb/ssl/influx.pem"
[collectd]
enabled = false
bind-address = ":25826"
database = "collectd"
retention-policy = ""
batch-size = 1000
batch-pending = 5
batch-timeout = "10s"
typesdb = "/usr/share/collectd/types.db"
[opentsdb]
enabled = false
bind-address = ":4242"
database = "opentsdb"
retention-policy = ""
consistency-level = "one"
tls-enabled = false
certificate = "/conf/influxdb/ssl/influx.pem"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[continuous_queries]
log-enabled = true
enabled = true
recompute-previous-n = 2
recompute-no-older-than = "10m0s"
compute-runs-per-interval = 10
compute-no-more-than = "2m0s"
[hinted-handoff]
enabled = true
dir = "/var/influxdb/hh"
max-size =<PHONE_NUMBER>
max-age = "168h0m0s"
retry-rate-limit = 0
retry-interval = "1s"
[[udp]]
enabled = true
bind-address = ":4340"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4341"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4342"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4343"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4344"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4345"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4346"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4347"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4348"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4349"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4440"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4441"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4442"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4443"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4444"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4445"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4446"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4447"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4448"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"
[[udp]]
enabled = true
bind-address = ":4449"
database = "metrics"
batch-size = 1000
batch-pending = 5
batch-timeout = "1s"

I am curious why you are running so many UDP inputs. Can you enlighten us? It's fully supported, but I am wondering.

Sure. Our main monitoring is ganglia, so we have a process (it is been running for a while) that reads from our ganglia clusters, gets the "Summary" info of each cluster and injects the data into influxdb. We also do the same for other monitoring systems we have.
We do this via UDP because of the amount of data and it is fairly convenient to "fire and forget" thing that with HTTP is not that easy (unless you do HTTP async calls).
Now, why we have so many ports. This is mostly a 0.6/0.7 thing (not sure if it is still a thing for 0.9), but we do some hashing on the metrics we get from ganglia and other monitoring systems and based on that hash we send the data to a given UDP port. Originally we had a single port but it was dropping too many metrics (guess too much data).

So you're load-balancing via all these ports?
There have been other reports of throughput issues with UDP, but as you can see, the system can ingest the load when spread across ports. You could try increasing the batch size.
Perhaps this is a network settings issue, and with every port in service a new buffer in the kernel is created.

cc @pauldix  on the shard message in the initial comment.

Yep, load-balancing with hashing.
One thing that I just found out. All our hosts are single-cluster (aka not shared via raft), and all of them are in rotation but only one of them has this error. The rest of the hosts have the same load (sometimes even more load) for reads and writes.
One question:
[wal] 2015/10/20 20:12:30 WAL writing to /var/influxdb/wal/metrics/one_day/242
[wal] 2015/10/20 20:12:30 reading WAL files to flush to index
[retention] 2015/10/20 20:12:30 retention policy enforcement terminating
[monitor] 2015/10/20 20:12:30 shutting down monitor system
[monitor] 2015/10/20 20:12:30 terminating storage of statistics

I note that the WAL writing happens almost every second. Is that a reasonable rate for it? I mean, if our configuration says so it will write that often but not quiet sure if that needs some tuning.

One more host having problems, tho this time I also see a backtrace:
[wal] 2015/10/21 17:32:09 WAL starting with 30720 ready series size, 0.50 compaction threshold, and 20971520 partition size threshold
[wal] 2015/10/21 17:32:09 WAL writing to /var/influxdb/wal/_internal/monitor/116
[wal] 2015/10/21 17:32:09 reading WAL files to flush to index
[wal] 2015/10/21 17:32:09 writing 28 series from WAL file /var/influxdb/wal/_internal/monitor/116/01.000001.wal to index
panic: assignment to entry in nil map
goroutine 14 [running]:
github.com/influxdb/influxdb/tsdb.(*Store).CreateShard(0xc82019e000, 0xc820162160, 0x9, 0xc820eb2730, 0x7, 0x74, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/tsdb/store.go:97 +0x7a1
github.com/influxdb/influxdb/cluster.(*PointsWriter).writeToShard.func1(0xc82012d100, 0xc820162160, 0x9, 0xc820eb2730, 0x7, 0xc83741e180, 0x1, 0x74, 0x1, 0xc848b60c00, ...)
/tmp/build/src/github.com/influxdb/influxdb/cluster/points_writer.go:271 +0x1d5
created by github.com/influxdb/influxdb/cluster.(*PointsWriter).writeToShard
/tmp/build/src/github.com/influxdb/influxdb/cluster/points_writer.go:299 +0x1c5
goroutine 1 [sleep]:
time.Sleep(0x4c4b40)
/home/philip/.gvm/gos/go1.5/src/runtime/time.go:59 +0xf9
github.com/hashicorp/raft.(*shutdownFuture).Error(0xc85e7ec598, 0x0, 0x0)
/tmp/build/src/github.com/hashicorp/raft/future.go:101 +0x4d
github.com/influxdb/influxdb/meta.(*localRaft).close(0xc82011f450, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/meta/state.go:216 +0xcf
github.com/influxdb/influxdb/meta.(*Store).close(0xc82013e280, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/meta/store.go:462 +0x8f
github.com/influxdb/influxdb/meta.(*Store).Close(0xc82013e280, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/meta/store.go:430 +0x75
github.com/influxdb/influxdb/cmd/influxd/run.(*Server).Close(0xc820174fc0, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/cmd/influxd/run/server.go:422 +0x186
github.com/influxdb/influxdb/cmd/influxd/run.(*Server).Open(0xc820174fc0, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/cmd/influxd/run/server.go:385 +0x55
github.com/influxdb/influxdb/cmd/influxd/run.(*Command).Run(0xc82012c180, 0xc82000a220, 0x2, 0x2, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/cmd/influxd/run/command.go:114 +0xd7e
main.(*Main).Run(0xc820119f00, 0xc82000a220, 0x2, 0x2, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/cmd/influxd/main.go:81 +0x67e
main.main()
/tmp/build/src/github.com/influxdb/influxdb/cmd/influxd/main.go:42 +0x29b
goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/home/philip/.gvm/gos/go1.5/src/runtime/asm_amd64.s:1696 +0x1
goroutine 5 [syscall]:
os/signal.loop()
/home/philip/.gvm/gos/go1.5/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
/home/philip/.gvm/gos/go1.5/src/os/signal/signal_unix.go:28 +0x37
goroutine 98 [select]:
github.com/influxdb/influxdb/cmd/influxd/run.(*Server).monitorErrorChan(0xc820174fc0, 0xc8201306c0)
/tmp/build/src/github.com/influxdb/influxdb/cmd/influxd/run/server.go:492 +0x145
created by github.com/influxdb/influxdb/cmd/influxd/run.(*Server).Open.func1
/tmp/build/src/github.com/influxdb/influxdb/cmd/influxd/run/server.go:352 +0xc67
goroutine 43 [runnable]:
sync.runtime_Semacquire(0xc82019e004)
/home/philip/.gvm/gos/go1.5/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0xc82019e000)
/home/philip/.gvm/gos/go1.5/src/sync/mutex.go:82 +0x1c4
sync.(*RWMutex).Lock(0xc82019e000)
/home/philip/.gvm/gos/go1.5/src/sync/rwmutex.go:82 +0x30
github.com/influxdb/influxdb/tsdb.(*Store).CreateShard(0xc82019e000, 0xc820162160, 0x9, 0xc820eb2730, 0x7, 0x74, 0x0, 0x0)
/tmp/build/src/github.com/influxdb/influxdb/tsdb/store.go:68 +0x50
github.com/influxdb/influxdb/cluster.(*PointsWriter).writeToShard.func1(0xc82012d100, 0xc820162160, 0x9, 0xc820eb2730, 0x7, 0xc82aaca180, 0x1, 0x74, 0x1, 0xc82ae6d700, ...)
/tmp/build/src/github.com/influxdb/influxdb/cluster/points_writer.go:271 +0x1d5
created by github.com/influxdb/influxdb/cluster.(*PointsWriter).writeToShard
/tmp/build/src/github.com/influxdb/influxdb/cluster/points_writer.go:299 +0x1c5

One thing, we use:
[data]
dir = "/var/influxdb/data"
engine = "bz1"
max-wal-size = 104857600
wal-flush-interval = "10m0s"
wal-partition-flush-delay = "2s"
wal-dir = "/var/influxdb/wal"
wal-logging-enabled = true
wal-ready-series-size = 30720
wal-compaction-threshold = 0.5
wal-max-series-size = 1048576
wal-flush-cold-interval = "5s"
wal-partition-size-threshold = 20971520
We are using:
2015/10/21 17:42:41 InfluxDB starting, version <IP_ADDRESS>, branch 0.9.4, commit da1b59e7d7764d36786253b2db13b97f42ed4e1d
I'm perfectly fine in re-creating the DBs if there is a better storage engine that we can use, is there another engine that is for use with this version? I'm partially ok in testing another version (0.9+) if it is stable-ish.

The tsm1 engine is currently available for testing, but there are known issues with it. You can try it and we would be interested in any feedback you have. Our development is now focused on getting the tsm1 engine to production-quality so bugs in bz1 are unlikely to be as high-priority right now.

I assume that tsm1 is available on the nightly builds?
So far for bz1 and our configs, is there any tweaking we could do to avoid this problem (or somehow, reduce it?).

Yes, tsm1 is available on nightly builds.

Thanks. I'll let it bake (the nightly one) on our busiest hosts.

Just wanted to report back that so far the nightly build  v0.9.5-nightly-ff997a7 has been running smoothly. It stopped on one of the hosts but that is because I forgot to set the right ulimit so it ran out of open files. On the other host that has the right ulimit value it has been doing great. I'll let it bake another day and if no issues are found I'll upgrade all our hosts.
Thanks!
Btw, any ETA on when 0.9.5 will be stable?

Thanks for the feedback @pfischermx -- is this with the tsm1 engine? If so, please remember that engine is still in development and you may have to blow away your data between upgrades until we address all the issues.

Yep. The hosts running the nightly build are with tsm1. I'm fine in wiping the data since it populates pretty fast.


Zero length string can be used as a geoId

A string value of "" is not considered invalid and will result in features being generated that have no geoId

blah

Reintegrate


Add a details message for DISABLED_FUNCTION in different scenarios

Done. https://github.com/turms-im/turms/commit/34fe431de3328c8cb13777d38a549d81cddf495d


Failing to import named exports server side

🐛 Bug Report
When importing a named export from another file, I receive the following error
{
  "status": "error",
  "message": "Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.",
  "stack": [
    "Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.",
    "at invariant (webpack:///../node_modules/react-dom/cjs/react-dom-server.node.development.js?:58:15)",
    "at ReactDOMServerRenderer.render (webpack:///../node_modules/react-dom/cjs/react-dom-server.node.development.js?:3395:7)",
    "at ReactDOMServerRenderer.read (webpack:///../node_modules/react-dom/cjs/react-dom-server.node.development.js?:3131:29)",
    "at renderToString (webpack:///../node_modules/react-dom/cjs/react-dom-server.node.development.js?:3598:27)",
    "at eval (webpack:///./src/server/render.jsx?:40:90)","at Layer.handle [as handle_request] (webpack:///../node_modules/express/lib/router/layer.js?:95:5)",
    "at trim_prefix (webpack:///../node_modules/express/lib/router/index.js?:317:13)","at eval (webpack:///../node_modules/express/lib/router/index.js?:284:7)",
    "at Function.process_params (webpack:///../node_modules/express/lib/router/index.js?:335:12)","at next (webpack:///../node_modules/express/lib/router/index.js?:275:10)"
  ]
}

To Reproduce
Express SSR setup
App.js
import React from 'react'
import loadable from '@loadable/component'
import './main.css'

const A = loadable(async () => {
  const { A: AComponent } = await import('./letters/A')
  return () => <AComponent />
})

const App = () => (

)

export default App

./letters/A.js
export const A = () => 'A'

Expected behavior
Named export should resolve server side and render correctly
Link to repl or repo (highly encouraged)
Example Repo

Hello @robdonn, currently "custom async function" is not supported server-side. The only solution for now if to make a "simple import statement" and to not use named imports. It could work in future, but currently it is not the priority.

Should this be mentioned in https://www.smooth-code.com/open-source/loadable-components/docs/babel-plugin/ perhaps?

Like "only direct imports are supported", and "use render method to render a named export", like it was documented in v3, however it's not exported in the current version.

@theKashey I'm referring to the same constraint that also applies for React.lazy: https://reactjs.org/docs/code-splitting.html#named-exports

Me too, as long as to use named exports you have to wrap your import  with some logic, and you have to use a "direct"/"bare"/"naked" one.

Ah, sorry, I wasn't so sure we were talking about the same.
So, would it possible to have this constraint documented? I'm pretty sure new users will thank it.

I reckon it should be absolutely clear, as long as I've was reported a few production incidents due to this behaviour.
Even more - it should have an automated test, checking result of the import with the module cache.

This seems like quite a large problem to me:

behavior is different on client/server in a way which is completely surprising when looking at app code
the resulting bug is very bad - crash/missing component
the docs actually recommend that you use an async wrapper around the import to implement delays and timeouts - so its natural to expect that this will also work server side.

Am I right to think that this is difficult to implement on account of the server require needing to be synchronous, and calling the user's async resolve function would break that?
Perhaps the babel plugin could more easily be patched to throw an error in the case that loadable is called on something which is not a simple import() (perhaps with exceptions for specific things which only need to work on the client, e.g. timeout). Then there could be a separate API for the user to provide a synchronous function (<module>) => <component> to replace the default.

In short, there are two ways how to fix this problem, both are more or less fundamental:

not allow a user to use any "extra" code in the imports. Remove the possible ways to cause the bug. This is about validations, invariants and other safety nets.
allow that extra code to be used. This is about mixing synchronous and asynchronous behaviours, and with loadable ability to handle "full dynamic imports"(read props) - that's a bit complicated. From another point of view the problem could be solved by removing server-side specific code, but that would require or some API change, or, well Suspense on SSR.

Way 1 is what the majority of us need. You might import only default export and deal with it... However, WFT per minute would be quite hight.
Way 2 is how it should work, but it requires some features, which are not yet here, but should be more or less soon.
Shall be just wait a bit?

Sure, it seems like supporting true asynchronous wrappers is difficult until React supports suspense in SSR.
That said, it strikes me that the use case of choosing an export in the resolved module is not fundamentally asynchronous. What about the following API (perhaps not ideal, but doable without SSR suspense). The basic idea is to remove anything asynchronous from the API as much as possible, and separate

the API (synchronous) for providing the imported module path: path
the API (synchronous) for resolving the component from the imported module: resolveComponent
asynchronous extra behavior which only works on the client side: watchdog

type Loadable<Module, Props> = (options: {
  /**
   * Path of the the module containing the component, or a function
   * which returns the path given the props
   *
   * NOTE: The babel plugin will create the import()
   */
  path: string | ((props: Props) => string);

  /**
   * Watchdog is able to implement delays, timeouts etc on the client side only.
   * Receives the import promise and returns the watchdog promise.
   * The resulting loadable component does not render until the watchdog promise
   * resolves, and considers the import to have failed if the watchdog promise rejects
   *
   * Default: `() => Promise.resolve()`
   */
  watchdog: (importPromise: Promise<Module>) => Promise<void>;

  /**
   * Synchronous function that returns the component from the
   * imported module.
   *
   * Default. `({ default: Component }) => Component`
   */
  resolveComponent: (module: Module, props: Props) => React.Component<Props>;
}) => LoadableComponent<React.Component<Props>>;

Then you could do something like
const LoadableA = loadable({
  path: './A',
  resolveComponent: ({ A: component }) => component,
  watchdog: (importPromise) =>  pMinDelay(importPromise, 200),
});

resolveComponent here is quite similar to the resolve option for the existing createLoadable - but createLoadable is not exposed to the user and resolve is also responsible for other stuff (hoisting)
Benefits:

No opportunity for the user to try wrapping the import() in anything that changes the resolved value - they just provide a path. Transforming a path to an import should be easy in the babel plugin.

Side note: Hopefully this can be typed easily... another option is to have createImport and the user profides an import function, but the babel plugin can enforce (as well as possible) that it really is just an import function. Probably this would also allow it to work without the babel plugin.

User is free to use named exports, and any synchronous logic to wrap the imported component, and this logic works on client and server
User is free to use any asynchronous logic on the client to delay/cancel loading
No need for SSR suspense

string based names are 😭- no autocomplete, no linting, no types. Only require or import might bring types to the system, so they have to be used.
why you need names imports in a first place? You want to add a mapper(resolveComponent) here, but why not to create another file, import what you want there, and export "that" as a default export? Follow the "standard interface", and define a clear boundary.
why you might want to delay import? If it's needed - then what else might be needed? Could it be a part of resolveComponent(it might be an async function)

fair enough - like I said having a createImport instead also works, but the babel plugin can enforce that createImport is only () => import(<path>), not () => someWrapperWhichFailsServerSide(import(<path>)) (This seems harder for the babel plugin, but easier for code analysis tools)
I don't like default exports. They encourage the same thing to have different names in different files - so grepping for the use of an export is difficult. If a named export is called XYZ, all files that import it contain the string XYZ. Not true with default exports. Also IDE autocomplete for imports is unlikely to work well with default exports, but it works great for named exports in VSCode. Named exports is the only reason I would want to use resolveComponent, but I think it's a good reason. resolveComponent could be replaced with a key (the exported name with the component), but I think this would be harder to type.
That's how it currently works - but I think the API is confusing. It's confusing because currently you can wrap it with some async function, e.g. the way the docs suggest for delay/timeout. The confusing part is that it looks like you can make that wrapper return a default value (as in OPs example) but in fact that fails on SSR and suceeds on the client. Like you said, this can easily lead to bugs. So I separated out watchdog from the import promise because that makes it clear that the user is not allowed change the return value of the import promise.

type Loadable<Module, Props> = (options: {
  /**
   * Function receiving the props which returns a promise resolving to
   * the module that contains the inner component.
   *
   * NOTE: Wrapping the `import()` is not allowed and will cause an error
   * in the babel plugin! It must be literally `(props) => import(<something>)`
   */
  createImport: (props: Props) => Promise<Module>;

  /**
   * Watchdog is able to implement delays, timeouts etc on the client side only.
   * Receives the import promise and returns the watchdog promise.
   * The resulting loadable component does not render until the watchdog promise
   * resolves, and considers the import to have failed if the watchdog promise rejects
   *
   * Default: `() => Promise.resolve()`
   */
  watchdog: (importPromise: Promise<Module>) => Promise<void>;

  /**
   * Synchronous function that returns the component from the
   * imported module.
   *
   * Default. `({ default: Component }) => Component`
   */
  resolveComponent: (module: Module, props: Props) => React.Component<Props>;
}) => LoadableComponent<React.Component<Props>>;

I don't like default exports. They encourage the same thing to have different names in different files

Well, not in all files. Think about this like about API interface - a function accepts some share, and you have to provide that shape. And there is a share which is quite natural and easy to use - a default export.
For example - we do use Feature/index.tsx+Feature/Component.tsx, where index.tsx is everything we want to "export" for Feature, and the rest is an internal implementation.
For the lazy components, we use Feature/split.tsx, without any index - that a part of our file naming convention, and a part of our API.
import('Feature/split') sounds absolutely correct, and not causing any issues with "how to import that thing". That thing is a Feature, and there is only one to import it. However, manually importing "that thing" is also incorrect, so we do have Feature/lazy (still no index) where we do import "that thing" as we want, and re-export lazy-ed component as a named export, so autoimport feature work correctly.
Just a simple example how this problem could be solved from a different point of view.

That sounds like a good convention, and sure, if everyone 100% follows it always it works. The way I like to do it is to always use named exports and never use default exports. If you see a named export, you can 100% grep for it and it will work, you can be sure of it. With your convention its still possible that someone directly imported one of the default exports in the internal implementation (maybe they shouldn't, but they did) - and then if you change it something breaks. Even if that's rare, if its not 100% you can't trust it and refactoring is slower.
I take your point - its not necessary for loadable components to support named exports, but I think it is useful and important. I like to use an eslint rule enforcing named exports - so to use loadable-components I have to make the eslint config more complicated to add exceptions for loadable-components, or drop the rule (and then probably have default exports everywhere again).
The "large problem" IMO is the surprising different behaviour on SSR vs client if you try to wrap the promise (which can very directly cause bugs). To solve that, the best idea I can think of is to do a separation in the API like createImport vs watchdog, and then make the babel plugin detect if the return value is not a direct import() statement and error otherwise. I think that would be simple to implement, and it would solve this issue. Adding resolveComponent would mean not breaking support for named exports for people who don't use SSR.

It's more about - what we could do to support this

100% we should separate "importer" and "mapper"
80% we will not break existing API with it, as long as ... it's fatally broken right now for this case.
are we missing any other case before making a change?

I would love to see this feature implemented! I want to group several components from one entry point without creating a massive amount of extra chunks.
For example, a profile page which is only loaded after login and that 'chunk' contains the profile subpages. The way it's setup now I get multiple chunks for each subroute under the profile namespace.

Sorry Stalebot, but it's nearly done.

Hi @theKashey, I wonder if there is ETA for this named export loadable component feature

You might find more details on the PRs, but look like we are 🐢

this is not fixed yet

And still in high demand.

Resolved in v 5.13.0 via resolveComponent option. Please refer to the documentation.


add json output for exec command

Let's implement the --json / -j switch for the exec command.
Right now I't all just thrown into a logger, which is not very handy if containerlab is integrated into a broader automated ecosystem.
All output is thereby taken as is and thrown into a dict indexed by the container name.
We try to load the received output as json and insert it as json or insert it as a plain string, such that you can still determin the output per container.
Loading the json would for instance make sense for e.g. ip -j address show.

done in #465


Automatic checking of language translations (locale files)

Hi,
Here's a little script I wrote to automatically check for missing translations:
https://gist.github.com/lassik/cec99172f390f1f231b9
I don't know if it's appropriate to include in the Babble repo, or if Discourse already provides something fancier (I couldn't find any such tool), but I find this useful.
Regards,
Lassi

Cool, thanks! I think the best thing might be to put a link there in the README so folks can find it if they like.

Sounds like a good solution to me :)

I've moved Babble onto Transifex (http://transifex.com/babble/babble) which should serve the purpose of this nicely (Finnish is still at 100% at the moment :) )


add concavity support in pybullet

Closes #322
@inesariza is this helpful?  could you test it?  (running vhacd on every mesh in a robot is time consuming, so don't be surprised if loading a robot is slow.)
What type of change is this?

[ ] Bug fix in a backwards-compatible manner.
[x] New feature in a backwards-compatible manner.
[ ] Breaking change: bug fix or new feature that involve incompatible API changes.
[ ] Other (e.g. doc update, configuration, etc)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I added a line to the CHANGELOG.rst file in the Unreleased section under the most fitting heading (e.g. Added, Changed, Removed).
[x] I ran all tests on my computer and it's all green (i.e. invoke test).
[x] I ran lint on my computer and there are no errors (i.e. invoke lint).
[ ] I added new functions/classes and made them available on a second-level import, e.g. compas_fab.robots.CollisionMesh.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] I have added necessary documentation (if appropriate)

thank you very much for adding this, @beverlylytle!


androidrewards.md

how to claim LBRYcast and other rewards @Invariant-Change please have a look when you have sometime

merged with android app basics


Run CI for Python 3.10

close https://github.com/iterative/mlem/issues/455

This won't run the CI, you will have to open up another dummy PR (that merges to this branch) to really check the CI.

Everything pass in https://github.com/iterative/mlem/pull/467


Add tests for build outputs

Developers are using our build outputs:

web-src/src/config.json
dist/actions/{ACTIONNAME}.zip (one per action)

This has caused breakage when developers depended on the naming of these outputs (or how the contents are named), and we updated these outputs to support multiple packages: #15
Add tests that test the various build outputs so that they conform to the expected (backwards compatible) formats.

This is the time to re-evaluate the web-src/src/config.json file. It has numerous other issues:

not human editable ( and the developer can only find this out via docs, or the hard way )
not human readable, it is json, so no comments and worse still, it's all 1 line

imho, this should be a generated js file, that exports the required values and includes comments to prevent user editing

@purplecabbage true, at the same time we should be careful as users have started using the config.json as source of truth for some of their own tests or logic.


Fix: The Last Blade

I read the upstream report and this looks to be graphics related.
Is there any reason why you haven't reported this upstream in DXVK? Because having this fixed in DXVK would be more preferable than a fix in this project.

Sorry, never mind. I was looking into this issue and saw https://github.com/doitsujin/dxvk/issues/4095, so it appears to be a problem in wine.


NFS Carbon black win screen

Upon winning a race in NFS: Carbon, the background blurs to focus on the text up front, but with d9vk this results in just a black background.

Software information
Need for Speed: Carbon v1.4, max settings, 1280x1024
System information

GPU: GeForce GTX 1080
Driver: 430.14
Wine version: 4.9 (Staging)
D9VK version: master de80c192c4c1b218df531d383b0d6bda710edf49

Apitrace file(s)
https://gist.github.com/Kattus/adfcd62a209cdd71db3691f0b69066d4
Log files

d3d9.log: https://gist.github.com/Kattus/dfcb735dc1908f92a78bdedd546abd30
dxgi.log: isn't created

Looks like its working with latest master! @Kattus please test it for yourself and close the bug, if you can confirm.

I can confirm this bug is fixed, while testing I have found many other bugs, but I think most of them are the fault of Wine. (one being that it outputs to wrong monitor while setting the res to another monitor et cetera.. it's one hell of a mess)

in any case it works.


Port code from omni-workflow to omni-py. Partially implement run CLI

Description
Porting code from omni-workflow repository here. Includes workflow engine refactoring and benchmark model.
Checklist:

[x] My code follows the code style of this project.
[ ] My CLI method respects the signature defined in the task.
[x] I have documented the CLI method accordingly.
[x] I have added tests to cover my changes.
[x] I have added a CHANGELOG entry.

Remarks for the reviewer:

Changed signature of run CLI commands according to our previous discussion:

omni run benchmark --benchmark [benchmark_yaml] --update [bool, default=False] --dry [bool, default=False] --local [bool, default=False]

omni run module --benchmark [benchmark_yaml] --module [str] --input [Optional[Str]] --example [Optional[bool]] --all [Optional[bool]] --update [bool, default=False] --dry [bool, default=False]

Remote storage & arguments are not yet implemented.

Thanks! Trying it and not managing to break it yet :muscle: .
Question: Is it intended --dry raises the Are you sure you want to re-run the entire workflow?. e.g.
(pr) imallona@mlshainan:~/tmp/omni-py$ ob run benchmark --benchmark ./tests/data/Benchmark_001.yaml --update --dry --local
Are you sure you want to re-run the entire workflow? [y/N]: y

I don't think the warning is intuitive - there is no re-run. It ends with
This was a dry-run (flag -n). The order of jobs does not reflect the order of execution.
WARNING:snakemake.logging:This was a dry-run (flag -n). The order of jobs does not reflect the order of execution.

(feat) Would it make sense to pass a --cores arg to ob run benchmark in line to Snakemake's CLI --cores?

(lowprio/info) Managed to break the run module. (It was hard, most of the misuses I tried were nicely captured). When the input folder does not contain any suitable input file, or even if it doesn't exist, a run is still attempted. I don't think this is superurgent to capture/fix, but is worth noting there are no checks for: input_dir existence;  nor input_dir file contents naming consistence with the rule/Snakemake expectations. Trace:
(pr) imallona@mlshainan:~/tmp/omni-py$ ob run module --benchmark tests/data/Benchmark_002.yaml --module libd_DLPFC --input /doesnotexist
Running module on a dataset provided in a custom directory.
Benchmark YAML file integrity check passed.
Found 1 workflow nodes for module libd_DLPFC.
Running module benchmark...
Assuming unrestricted shared filesystem usage.
WARNING:snakemake.logging:Assuming unrestricted shared filesystem usage.
Building DAG of jobs...
WARNING:snakemake.logging:Building DAG of jobs...
Using shell: /usr/bin/bash
WARNING:snakemake.logging:Using shell: /usr/bin/bash
Provided cores: 1 (use --cores to define parallelism)
WARNING:snakemake.logging:Provided cores: 1 (use --cores to define parallelism)
Rules claiming more threads will be scaled down.
WARNING:snakemake.logging:Rules claiming more threads will be scaled down.
Job stats:
job                        count
-----------------------  -------
all                            1
data_libd_DLPFC_default        1
total                          2

WARNING:snakemake.logging:Job stats:
job                        count
-----------------------  -------
all                            1
data_libd_DLPFC_default        1
total                          2

Select jobs to execute...
WARNING:snakemake.logging:Select jobs to execute...
Execute 1 jobs...
WARNING:snakemake.logging:Execute 1 jobs...

INFO:snakemake.logging:
[Wed Jul 31 09:53:44 2024]
INFO:snakemake.logging:[Wed Jul 31 09:53:44 2024]
localrule data_libd_DLPFC_default:
    output: out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json, out/data/libd_DLPFC/default/libd_DLPFC.label.json, out/data/libd_DLPFC/default/libd_DLPFC.coord.json, out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt
    jobid: 1
    reason: Forced execution
    resources: tmpdir=/home/imallona/tmp
INFO:snakemake.logging:localrule data_libd_DLPFC_default:
    output: out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json, out/data/libd_DLPFC/default/libd_DLPFC.label.json, out/data/libd_DLPFC/default/libd_DLPFC.coord.json, out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt
    jobid: 1
    reason: Forced execution
    resources: tmpdir=/home/imallona/tmp

INFO:snakemake.logging:
Waiting at most 5 seconds for missing files.
WARNING:snakemake.logging:Waiting at most 5 seconds for missing files.
MissingOutputException in rule data_libd_DLPFC_default in file /home/imallona/tmp/omni-py/venv/lib/python3.12/site-packages/omni/workflow/snakemake/rules/rule_node.smk, line 84:
Job 1  completed successfully, but some output files are missing. Missing files after 5 seconds. This might be due to filesystem latency. If that is the case, consider to increase the wait time with --latency-wait:
out/data/libd_DLPFC/default/libd_DLPFC.label.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC.coord.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
ERROR:snakemake.logging:MissingOutputException in rule data_libd_DLPFC_default in file /home/imallona/tmp/omni-py/venv/lib/python3.12/site-packages/omni/workflow/snakemake/rules/rule_node.smk, line 84:
Job 1  completed successfully, but some output files are missing. Missing files after 5 seconds. This might be due to filesystem latency. If that is the case, consider to increase the wait time with --latency-wait:
out/data/libd_DLPFC/default/libd_DLPFC.label.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC.coord.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
Removing output files of failed job data_libd_DLPFC_default since they might be corrupted:
out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json
WARNING:snakemake.logging:Removing output files of failed job data_libd_DLPFC_default since they might be corrupted:
out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json
Shutting down, this might take some time.
WARNING:snakemake.logging:Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
ERROR:snakemake.logging:Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2024-07-31T095344.683203.snakemake.log
WARNING:snakemake.logging:Complete log: .snakemake/log/2024-07-31T095344.683203.snakemake.log
WorkflowError:
At least one job did not complete successfully.
ERROR:snakemake.logging:WorkflowError:
At least one job did not complete successfully.
Module run has failed

Thanks! Trying it and not managing to break it yet 💪 .
Question: Is it intended --dry raises the Are you sure you want to re-run the entire workflow?. e.g.
(pr) imallona@mlshainan:~/tmp/omni-py$ ob run benchmark --benchmark ./tests/data/Benchmark_001.yaml --update --dry --local
Are you sure you want to re-run the entire workflow? [y/N]: y

I don't think the warning is intuitive - there is no re-run. It ends with
This was a dry-run (flag -n). The order of jobs does not reflect the order of execution.
WARNING:snakemake.logging:This was a dry-run (flag -n). The order of jobs does not reflect the order of execution.

Oh that's a good catch in terms of functionality.
I agree. When using --dry flag with any combination of "destructive" actions, in this case --update, no prompt should be triggered. I'll change that accordingly

(feat) Would it make sense to pass a --cores arg to ob run benchmark in line to Snakemake's CLI --cores?

I added --cores argument only to the ob run benchmark command, for the ob run module I believe its not necessary, right?

(lowprio/info) Managed to break the run module. (It was hard, most of the misuses I tried were nicely captured). When the input folder does not contain any suitable input file, or even if it doesn't exist, a run is still attempted. I don't think this is superurgent to capture/fix, but is worth noting there are no checks for: input_dir existence; nor input_dir file contents naming consistence with the rule/Snakemake expectations. Trace:
(pr) imallona@mlshainan:~/tmp/omni-py$ ob run module --benchmark tests/data/Benchmark_002.yaml --module libd_DLPFC --input /doesnotexist
Running module on a dataset provided in a custom directory.
Benchmark YAML file integrity check passed.
Found 1 workflow nodes for module libd_DLPFC.
Running module benchmark...
Assuming unrestricted shared filesystem usage.
WARNING:snakemake.logging:Assuming unrestricted shared filesystem usage.
Building DAG of jobs...
WARNING:snakemake.logging:Building DAG of jobs...
Using shell: /usr/bin/bash
WARNING:snakemake.logging:Using shell: /usr/bin/bash
Provided cores: 1 (use --cores to define parallelism)
WARNING:snakemake.logging:Provided cores: 1 (use --cores to define parallelism)
Rules claiming more threads will be scaled down.
WARNING:snakemake.logging:Rules claiming more threads will be scaled down.
Job stats:
job                        count
-----------------------  -------
all                            1
data_libd_DLPFC_default        1
total                          2

WARNING:snakemake.logging:Job stats:
job                        count
-----------------------  -------
all                            1
data_libd_DLPFC_default        1
total                          2

Select jobs to execute...
WARNING:snakemake.logging:Select jobs to execute...
Execute 1 jobs...
WARNING:snakemake.logging:Execute 1 jobs...

INFO:snakemake.logging:
[Wed Jul 31 09:53:44 2024]
INFO:snakemake.logging:[Wed Jul 31 09:53:44 2024]
localrule data_libd_DLPFC_default:
    output: out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json, out/data/libd_DLPFC/default/libd_DLPFC.label.json, out/data/libd_DLPFC/default/libd_DLPFC.coord.json, out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt
    jobid: 1
    reason: Forced execution
    resources: tmpdir=/home/imallona/tmp
INFO:snakemake.logging:localrule data_libd_DLPFC_default:
    output: out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json, out/data/libd_DLPFC/default/libd_DLPFC.label.json, out/data/libd_DLPFC/default/libd_DLPFC.coord.json, out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt
    jobid: 1
    reason: Forced execution
    resources: tmpdir=/home/imallona/tmp

INFO:snakemake.logging:
Waiting at most 5 seconds for missing files.
WARNING:snakemake.logging:Waiting at most 5 seconds for missing files.
MissingOutputException in rule data_libd_DLPFC_default in file /home/imallona/tmp/omni-py/venv/lib/python3.12/site-packages/omni/workflow/snakemake/rules/rule_node.smk, line 84:
Job 1  completed successfully, but some output files are missing. Missing files after 5 seconds. This might be due to filesystem latency. If that is the case, consider to increase the wait time with --latency-wait:
out/data/libd_DLPFC/default/libd_DLPFC.label.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC.coord.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
ERROR:snakemake.logging:MissingOutputException in rule data_libd_DLPFC_default in file /home/imallona/tmp/omni-py/venv/lib/python3.12/site-packages/omni/workflow/snakemake/rules/rule_node.smk, line 84:
Job 1  completed successfully, but some output files are missing. Missing files after 5 seconds. This might be due to filesystem latency. If that is the case, consider to increase the wait time with --latency-wait:
out/data/libd_DLPFC/default/libd_DLPFC.label.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC.coord.json (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
out/data/libd_DLPFC/default/libd_DLPFC_ncluster.txt (missing locally, parent dir contents: libd_DLPFC_params.txt, libd_DLPFC.meta.json, libd_DLPFC.txt.gz)
Removing output files of failed job data_libd_DLPFC_default since they might be corrupted:
out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json
WARNING:snakemake.logging:Removing output files of failed job data_libd_DLPFC_default since they might be corrupted:
out/data/libd_DLPFC/default/libd_DLPFC.txt.gz, out/data/libd_DLPFC/default/libd_DLPFC.meta.json
Shutting down, this might take some time.
WARNING:snakemake.logging:Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
ERROR:snakemake.logging:Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2024-07-31T095344.683203.snakemake.log
WARNING:snakemake.logging:Complete log: .snakemake/log/2024-07-31T095344.683203.snakemake.log
WorkflowError:
At least one job did not complete successfully.
ERROR:snakemake.logging:WorkflowError:
At least one job did not complete successfully.
Module run has failed

Really good checks. I managed to add some basic validation for the given input directory and required input files