Giter VIP home page Giter VIP logo

codelingo's Introduction

Get on the same page, fast

Share links to snippets that open directly in VS Code.

install


share snippet


codelingo.io Slack VSCode Extension Twitter

Usage

Snippets

Share links to snippets that open directly in VS Code.

How to Share a Snippet

  1. Select the code snippet you want to share.

  2. Press Alt+Shift+S (Option+Shift+P on macOS).

  3. The snippet URL link is automatically copied to your clipboard.

  4. Share the link (e.g. Slack) to anyone to have it highlight the snippet in their VS Code.

Notebooks

But wait, there's more!

Snippets are shared via Notebooks, where you can plan out and think through code design problems with your team.

Notebooks can then be used to dynamically guide developers as they code, tightening the loop and keeping alignment between design discussions and implementation efforts.

Creating/Adding to a Notebook

Let's get you adding your own code snippets to a new Notebook!

  1. Select a snippet of code.

  2. Press Cmd+Shift+P to open the command palette and type add to Notebook.
    Tip β€” press Alt+P (Option+P on macOS) as a shortcut for step 2.

  3. Follow the prompts to add your code snippet to a Notebook.

Opening Notebooks

  1. Press Cmd+Shift+P to open the command palette and enter open Notebook.

  2. Select a Notebook from the drop-down and it will open in your browser.

Feedback

We'd love to hear from you: feedback form πŸ“‹

About Us

We are a small dev team from πŸ₯ New Zealand with a passion for the art of deving in teams!

Check out our team here: codelingo.io/about.

codelingo's People

Contributors

arniqua avatar blakemscurr avatar callantaylor avatar codelingoteam avatar daanikus avatar emersonwood avatar finnpetrie avatar fwereade avatar jetinmathew avatar jwill2580 avatar kindblakey avatar leilaes avatar lscown avatar meadows115 avatar mrcrowl avatar mullikine avatar quinndumala avatar rstorr2 avatar waigani avatar yaserazfar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

codelingo's Issues

Remove obsolete writeFileAll function

Old function is in common.go. globalbeforecommand.go functions now ensure that the correct folder are present at runtime, and we do not want to implicitly modify the file system in other cases.

Make the docker socket endpoint configurable

Update defaultsConfig to have a docker section with an endpoint key, default value of unix:///var/run/docker.sock. Update the DockerClient function in util.go to read this config instead of a hardcoded value.

Variable interpolation in review comment errors if it leads

comment: "{{paramName}}" has the same name as its type.

^ Will produce an error.

comment: Parameter "{{paramName}}" has the same name as its type.

^ That does not error

daanikus hit a parse error: Failed run Flow function: failed to parse codelingo.yaml file `effective-go/codelingo.yaml`: yaml: line 11: did not find expected key yaml: line 11: did not find expected key /home/dev/projects/src/github.com/codelingo/platform/flow/bots/parse/parse.go:25: failed to parse codelingo.yaml file `effective-go/codelingo.yaml` /home/dev/projects/src/github.com/codelingo/platform/flow/flows/clair/query/query.go:136: /home/dev/projects/src/github.com/codelingo/platform/flow/flows/clair/query/query.go:52: /home/dev/projects/src/github.com/codelingo/platform/flow/flows/clair/clair.go:202: /home/dev/projects/src/github.com/codelingo/platform/flow/flows/clair/clair.go:56: /home/dev/projects/src/github.com/codelingo/platform/flow/server/server.go:263: /home/dev/projects/src/github.com/codelingo/platform/flow/server/server.go:157: Failed run Flow function /home/dev/projects/src/github.com/codelingo/platform/frontend/middleware/errors.go:108: daanikus hit a parse error

32bit builds failing

All 32bit builds are failing and will not be useable by the end user.

# github.com/codelingo/codelingo/vendor/github.com/codelingo/clql/inner
../../../vendor/github.com/codelingo/clql/inner/inner_parser.go:1980: constant 4294967294 overflows int

nil_only_functions has false positives

So, I don't exactly understand the "code" for this tenet, but it incorrectly marks functions as only returning nil all the time in our code. And these aren't edge cases, this is just normal go code. I'm not sure what's tripping it up.

"TypeError: Cannot access member x of undefined" under exclude

"TypeError: Cannot access member x of undefined" error when calling a function directly under an exclude:

Example:

exclude:
  name as identName
  newConcat(identName, "test", funcName)

For the function:

- name: newConcat
    type: resolver
    body: |
      function (a, b) {   
        return a.concat(b)
      }

results in "TypeError: Cannot access member 'concat' of undefined"

Note funcName is defined elsewhere in query.

Remove obsolete TODO in common.go

Remove the TODO comment in DesiredTenetCfgPath, the return actually is required in case the user makes an error during command execution (i.e. tries to use an undefined $VAR)

docs --debug panics

lingo run docs --debug panics:

panic: close of nil channel

goroutine 20 [running]:
github.com/codelingo/codelingo/sdk/flow.(*flowRunner).setHelp.func1(0xb19280, 0xc4200be008, 0xac6e21, 0x3cb, 0xa4c000, 0x10edf60)
	/home/jesse/go/src/github.com/codelingo/codelingo/sdk/flow/cli.go:89 +0x1a7
github.com/codelingo/codelingo/vendor/github.com/urfave/cli.ShowAppHelp(0xc4200c91e0, 0xc4200be008, 0xaa70da)
	/home/jesse/go/src/github.com/codelingo/codelingo/vendor/github.com/urfave/cli/help.go:139 +0x189
github.com/codelingo/codelingo/vendor/github.com/urfave/cli.(*App).Run(0x10edf60, 0xc4200b2020, 0x2, 0x2, 0xb18600, 0xc42030eee0)
	/home/jesse/go/src/github.com/codelingo/codelingo/vendor/github.com/urfave/cli/app.go:214 +0x50b
github.com/codelingo/codelingo/sdk/flow.(*flowRunner).Run.func1(0xc420312c30)
	/home/jesse/go/src/github.com/codelingo/codelingo/sdk/flow/cli.go:127 +0x83
created by github.com/codelingo/codelingo/sdk/flow.(*flowRunner).Run
	/home/jesse/go/src/github.com/codelingo/codelingo/sdk/flow/cli.go:125 +0x3f

"lingo docs" opens raw markdown in editor

The "lingo docs" command opens raw markdown, and at least on Linux, opens it in an editor (that's the behaviour of xdg-open). It would be nice if the markdown were rendered to HTML and opened in a browser.

ignored decorator

Stacked decorators should trigger one flow per decorator. For example, the Tenet below finds one func and comments on it once. I'd expect it to comment on the same func twice:

tenets:
  - name: find-funcs
    flows:
      codelingo/review:
        comment: This is a function, but you probably already knew that.
    query: |
      import codelingo/ast/go

      @ review "this is a custom comment"
      @ review comment
      go.func_decl(depth = any)

tooooo many warnings

Reviewing with a binary tenet that has not been installed:

lingo review
The following errors were encounted:
The tenet "lingoreviews/juju_test_assert_loop_len" could not be found. Has it been installed?
The tenet "lingoreviews/juju_test_assert_loop_len" could not be found. Has it been installed?
The tenet "lingoreviews/juju_test_assert_loop_len" could not be found. Has it been installed?
.....

Just one message is enough.

panics if editor not found

From @waigani on December 2, 2015 10:12

lingo review
/main.go:3:13

    this comment could be more awesome


    ...

    package main

  > // comment a
    func a() {

    }

    ...

[o]pen: o
application (vi):
exec: "vi": executable file not found in $PATH
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0xb0 pc=0x56107e]

Copied from original issue: lingo-reviews/tenets#9

Create OSOutf function

Create a new function OSOutf modelled on OSErrf - it will later be used to centralise cli output for logging, quiet mode etc.

"lingo ls" doesn't seem to like ls being aliased to ls with flags

From @kat-co on December 9, 2015 22:52

14:39> lingo ls
Incorrect Usage.

NAME:
list - list tenets

USAGE:
lingo list [options] [arguments...]

EXAMPLES:
Lists all tenets added to .lingo run.

OPTIONS:
--installed list all tenets installed on this machine

panic: flag provided but not defined: -color

goroutine 1 [running]:
main.main()
/home/jesse/go/src/github.com/lingo-reviews/lingo/main.go:22 +0x35b

goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/usr/lib/go/src/runtime/asm_amd64.s:1696 +0x1

goroutine 20 [syscall]:
os/signal.loop()
/usr/lib/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
/usr/lib/go/src/os/signal/signal_unix.go:28 +0x37

Copied from original issue: lingo-reviews/tenets#31

lingo panics when flag can't be found

The "--alll" flag is not defined. Showing the help is correct, but not the panic.

$ lingo ls --all
Incorrect Usage.

NAME:
   list - list tenets

USAGE:
   lingo list [options] [arguments...]

EXAMPLES:
   Lists all tenets added to .lingo run.

OPTIONS:
   --installed  list all tenets installed on this machine

panic: flag provided but not defined: -all

goroutine 1 [running]:
main.main()
    /home/jesse/go/src/github.com/lingo-reviews/lingo/main.go:22 +0x35b

goroutine 17 [syscall, locked to thread]:
runtime.goexit()
    /usr/lib/go/src/runtime/asm_amd64.s:1696 +0x1

goroutine 34 [syscall]:
os/signal.loop()
    /usr/lib/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
    /usr/lib/go/src/os/signal/signal_unix.go:28 +0x37

Sometimes the lingo check runs/hangs forever

image

It would be great to have a place to go look at the progress of the running tenets, and stop/restart them. But I'd settle for it not just running forever.

Actually... is there a way to stop a running check on github? I don't see any UI for it.

Unable to rewrite file name.

rewrite currently doesn't support rewriting of filenames.

go.file(depth = any):
filename as fname

    @rewrite --replace name
    filename

website auth issue

From @lingo-reviews on December 15, 2015 19:4

From James Tunnicliffe:

When I try and log into http://www.lingo.reviews/ through Github I get
a blank pop-up with an URL starting
http://lingo.reviews/_oauth/github. Looking at the console it has the
error "Uncaught SecurityError: Blocked a frame with origin
"http://lingo.reviews" from accessing a frame with origin
"http://www.lingo.reviews". Protocols, domains, and ports must match."
I tried deleting the authorisation on Github and re-authing, but get
the same error. The URL that Github redirects to is
http://lingo.reviews/_oauth/github?close=&code=. If
I visit lingo.reviews without the www. I get redirected. So, it looks
like a minor configuration issue - stop redirecting to www.

Copied from original issue: lingo-reviews/tenets#35

Fails to start / talk to tenets on OS X

This appears to be because OS X doesn't allow a net.ListenUnix call with a unix address with no Name.

Changing these to use a :0 bound TCP Listener appears to make them run properly, and accept the source.

I'm willing to work on a PR against this and the tenets repo to fix this, if there's interest.

Structs broken in Playground

package main

import (
	"fmt"
)

type Thing struct {
    name       string
    generation int
    model      string
}

func main() {
  thing = Thing{name: β€œRaspberry Pi”, generation: 2, model: β€œB”}
}

Generating queries from the above code takes user to blank page. Error in console is:

Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined.

Didn't see any output on slack errors channel.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.