Code Monkey home page Code Monkey logo

Comments (15)

achubaty avatar achubaty commented on August 27, 2024 1

thank you! this looks like it's working.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

It isn't supposed to be overwriting .gitignore. Can you describe what you are observing? It is only modifying two lines... packagePath and modulePath, which I think is the correct behaviour. It doesn't touch anything else.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

Perhaps a reprex?

from spades.project.

achubaty avatar achubaty commented on August 27, 2024

Neither of those should be touched, so I want to turn this off.

  1. packagePath may not be a project subdirectory, so it doesn't make sense to add it here (it's also incorrect in this case in that it adds 4.2 to .gitignore and not the main package directory).
pkgDir <- file.path(tools::R_user_dir(basename(prjDir), "data"), "packages",
                        version$platform, getRversion()[, 1:2])
  1. modulePath may contain git submodules. Adding it to the project .gitignore doesn't make sense, and may prevent changes in those modules or new modules from being properly registered.

from spades.project.

achubaty avatar achubaty commented on August 27, 2024

can this please be merged asap? it is fully backwards compatible: the default behaviour is the same. it only changes if the user sets the option SpaDES.project.updateGitIgnore = FALSE.

from spades.project.

achubaty avatar achubaty commented on August 27, 2024

I've updated the pending PR (#25) with the latest changes on the transition branch, and tested. It's ready to go.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

This PR is building a work around that is not the correct solution. I will try to make the correct solution now.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

FYI: there are 3 use cases:

  1. Users not using git
  2. Users using git, but only for the modules (i.e., not a git repo with git submodules)
  3. Users using git submodule infrastructure, where modules are themselves (possibly) git repositories.

The solution provided in this PR only deals with the 2nd and 3rd cases, as an option. This leaves it in the realm of secret handshake (i.e., if you know what you need to know, then it will work), which I am trying to not use.

from spades.project.

achubaty avatar achubaty commented on August 27, 2024

yes, this is a quick workaround until a more throrough solution is implmented and tested. reviewing every commit made to a shared repo and restoring .gitignore to it's original state (because of inadvertant commits) is taking more time than it needs to when we can simply turn off this behaviour for now.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

The transitions branch of SpaDES.project is not for work arounds. It is "a complete solution without work arounds". I have pushed something that deals with the 3 cases.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

It is working for cases 1 and 3 above. Testing 2.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

Minor tweaks for Test Case 2. Working for that too now.

from spades.project.

achubaty avatar achubaty commented on August 27, 2024

hmmm it's not quite there yet. .gitignore being modified again.

from spades.project.

eliotmcintire avatar eliotmcintire commented on August 27, 2024

from spades.project.

achubaty avatar achubaty commented on August 27, 2024

Yes, using latest version (only a single version, in project-specific dir). It's not happening everytime I run things though.

from spades.project.

Related Issues (20)

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.